记录springboot中cucumber使用mock
记录cucumber使用mock
1.cucumber相关用例,步骤,runnerTest等编写不变
2.mock使用的是mockito-core-1.10.19
3.本文记录的是对mapper进行mock
4.只需在step中进mock编写就可以
public class MyTestStep {
@Mock
private MyTestMapper myTestMapper;
@Autowired
private MyTestService myTestService;
@Before
public void setUp(){
myTestMapper = Mockito.mock(MyTestMapper.class);
}
@假如("输入查询请求")
public void query(String reqest) {
MyTest test = new MyTest();
test.setName("test");
test.setAge(18);
Mockito.when(myTestMapper.queryByName("test")).thenReturn(test);
/**
* 如果方法需要传入的是一个对象,可以使用Mockito.any(MyTest.class)就可以返回特定的结果
*/
// Mockito.when(myTestMapper.updateMyTest(Mockito.any(MyTest.class))).thenReturn(test);
/**
* 将mock后的mapper手动注入到service中,第三个参数必须与service中注入时mapper的变量名一致
*/
ReflectionTestUtils.setField(myTestService,"myTestMapper", myTestMapper);
后续步骤........
}
}
仅记录本人使用cucumber时使用mock的方法,也可能有其他更好方法,由于时间问题就不研究了。如果有更好的方法请赐教。
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 zyh
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果