51Testing软件测试论坛
标题:
mybatisPlus,使用JMockit 进行mock Iservice 的getOne 方法
[打印本页]
作者:
测试积点老人
时间:
2021-7-30 16:07
标题:
mybatisPlus,使用JMockit 进行mock Iservice 的getOne 方法
1. 我有一个 Userservice 继承mybatisPlus的通用service, 默认就会实现了 getOne方法
@Service
@Slf4j
public class UserServiceImpl extends ServiceImpl<UserMapper, UserEntity> implements UserService {
}
2. 我在controller 中调用
@GetMapping("/demo/user")
public String demostr() {
QueryWrapper<UserEntity> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("u_id", "123");
UserEntity one = userService.getOne(queryWrapper);
return one.getUName();
}
3. 进行 junit mock
@Test
public void testService(@Mocked UserService userService) {
// new Expectations() {
// {
// UserService u2 = new UserServiceImpl();
// u2.getOne(new QueryWrapper<UserEntity>());
//// userService.getOne(new QueryWrapper<UserEntity>());
// UserEntity u = new UserEntity();
// u.setUId("123");
// u.setUName("456");
// result = u;
//// returns(u,u,u,u);
//// userService.aaa();
//// result = "nnn";
// }
// };
new MockUp<ServiceImpl<UserMapper, UserEntity>>() {
@Mock
public UserEntity getOne(Wrapper<UserEntity> userEntityWrapper) {
UserEntity u = new UserEntity();
u.setUId("123");
u.setUName("456");
return u;
}
};
Assertions.assertThat(userController.demostr())
.isEqualTo("456");
}
无论是使用 expectations 还是MockUP 都不行
复制代码
作者:
海海豚
时间:
2021-8-2 09:35
改成@Mocked UserServiceImpl userServiceImpl
作者:
qqq911
时间:
2021-8-2 10:54
报错信息是什么?
作者:
bellas
时间:
2021-8-2 12:11
参考
https://blog.csdn.net/chendaike/article/details/90901495
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2