我读过关于mockitoSession和MockitoAnnotations.initMocks的文章,但是我不明白两者之间的区别是什么?
MockitoAnnotations.initMocks(this);
Mockito.mockitoSession()
.initMocks(this)
.strictness(Strictness.STRICT_STUBS)
.startMocking();mockitoSession做了MockitoAnnotations不做的什么?
发布于 2019-06-13 09:19:00
MockitoAnnotations.initMocks(this)方法必须调用以初始化带注释的字段。
MockitoAnnotations.initMocks(这里);初始化带有Mockito注释的字段。允许速记创建测试所需的对象。减少重复的模拟创建代码。使测试类更具可读性。由于使用字段名标识模拟,因此验证错误更容易阅读。
何地as
MockitoSession是一个模拟会话,在这个会话中,用户创建和使用Mockito模拟。通常,会话是单个测试方法的执行。MockitoSession初始化模拟,验证使用情况,并检测不正确的固执。当会话启动时,必须使用finishMocking()结束会话,否则在创建下一个会话时将触发UnfinishedMockingSessionException。
MockitoSession在不能使用MockitoJUnitRunner或MockitoRule时非常有用。例如,您使用的是TestNG而不是JUnit。另一个例子是在使用不同的JUnit跑步器(Jukito,Springockito)时,它不能与Mockito自己的运行程序结合。
https://stackoverflow.com/questions/56576749
复制相似问题