java单元测试

本文介绍了在Java单元测试中的一些实用技巧,包括使用TestMe插件,多线程测试,ReflectionTestUtils的使用,存储过程测试,第三方接口测试,静态方法测试,Redis和MongoDB的测试案例,以及如何处理多次调用返回不同结果的情况。详细展示了Mockito和相关工具的用法,以确保测试的全面性和准确性。

idea 安装插件TestMe, 进入具体的类,选中类名 右键

1.多线程测试用例

@Mock Executor taskExecutor;

或者

@Mock ThreadPoolExecutor threadPoolExecutor;

都可用如下方法:

doAnswer((InvocationOnMock invocation) -> {

((Runnable) invocation.getArguments()[0]).run();

return null;

}).when(taskExecutor).execute(any(Runnable.class));

@Mock ScheduledThreadPoolExecutor executor;

executor.schedule(()->{

........

},10, TimeUnit.MINUTES);

doAnswer(invocation -> {

((Runnable) invocation.getArguments()[0]).run();

return null;

}).when(executor).schedule(any(Runnable.class),anyLong(), any());

@InjectMocks Test test;

@BeforeEach

void setUp() {

test = new test(a);//避免抢占资源,每次创建

}

@AfterEach

void after() {

test = null;//每次销毁

}

2.ReflectionTestUtils.setField() 用法:

@InjectMocks

TestService testService; //当前的测试类

1).这种注入方式

@Value("${test.active.switch:0}")

private String activeSwitch;

测试用例写法:

ReflectionTestUtils.

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值