java 单元测试要怎么测才能全面?

发布于 2022-09-30 23:08:13 字数 473 浏览 25 评论 0

@Service
@Slf4j
public class OrderServiceImpl implements IOrderService {
    @Autowired
    private IOrderDao orderDao;

    @Override
    public OrderPO findById(int id) {
        if(id<0){
            return new OrderPO();
        }
        return orderDao.findById(id);
    }

}

上面提供的service层的方法仅供举例和演示

如题,像工作中我们开发好后台的代码以后想要自己进行单元测试,要怎么测才能测得全面呢?像覆盖率这些指标一般是多少才合适?有没有具体的流程或者可以作为指导的东西?

请大神指教或者能否提供相关的博文让我参考下呢?新人在这方面没什么经验呢,感激不尽了!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

寄居人 2022-10-07 23:08:13

对于单元测试比较友好的注入方式是 构造方法 或者 setter
然后针对这种测试,不需要依赖spring的测试

  1. 直接 mock OrderDao,然后塞给OrderService
  2. 测试1:用 不小于零的id调用 findById,验证 orderDao 的 findById 没有被调用过
  3. 测试2:mock orderDao,mock findById 方法,返回一个固定对象,用 小于0的id调用 findById,验证 返回值 和 固定的对象相同,验证 orderDao 的findById 被调用过一次
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文