美文网首页程序Bug大家族bugstac...
不做单元测试的程序员都在耍流氓

不做单元测试的程序员都在耍流氓

作者: 秃头哥编程 | 来源:发表于2018-07-24 19:47 被阅读61次

    昨天下班时遗留的bug,今天上班十几分钟终于解决了。

    运行服务器不报错,f12看一下控制台发现数据没有传过来。一脸懵逼,因为下班了也就没弄了。旁边同事提醒我做单元测试。的确,很多时候因为懒都不愿去做这个,但很多的bug隐藏的很深,完全不好靠肉眼解决,这时就需要做单元测试了。

    于是煎熬了一夜的我,第二天来到公司就开始写单元测试,从dao层开始,没问题,能正常和数据库交互,接着service,我滴乖乖,报错了


    1.png 2.png

    可以看到,虽然数据有两条,但没有存入成功,这样控制层肯定没取到结果,但这个错误被catch,所以控制台没有报错。。。

    看看代码,特么的谁写的,竟然这样写

            ResultData<List<Object>> result = new ResultData<>();
            // 获取用户列表
            List<User> users = userDao.getUser(userId, username);
            // 从第一页开始,每页10条数据
            PageHelper.startPage(pageNo, 10);
            PageInfo<User> page = new PageInfo<>(users);
            // 必须先set,不然报空指针异常
            // result.setData(new ArrayList<Object>());
            result.getData().add(users);
            result.getData().add(page);
    

    把注释掉的这行加上就ok了。

    由此可见,单元测试的重要性。

    相关文章

      网友评论

        本文标题:不做单元测试的程序员都在耍流氓

        本文链接:https://www.haomeiwen.com/subject/dofemftx.html