使用jmokit进行单元测试

来源:互联网 发布:程序员猝死率多少 编辑:程序博客网 时间:2024/06/05 22:58

    今天项目进行单元测试,第一次使用jmokit框架,出现了很多问题,下面记录一下。

首先,我使用IDEA进行junit测试,需要下载两个插件(junit和junit generator)配置一下就可以用了。

生成单元测试类后,需要编写测试方法。测试方法要注意以下几点:

1、代码每一行都要执行,所以实际代码每行都要走的,不要遗漏。

2、我们只需要将需要mock的代码(需要连服务器的代码,比如service,dao)重写,后面result重新赋值就好了。

正常类中的各种方法,不需要重新,如需要赋值,可直接赋值。

3、mock代码放到new Expectations中,最后写上函数调用语句:

impl.addSDevice(1, "mDid", "devQrCode");这样就能直接执行上面的测试方法。

4、遇到多次调用同名方法时,可以多次return返回值,用以区别。不然测试程序报错,因为每次都执行的是第一次

调用,第二次调用语句变得不可达。语法如下:

deviceDao.getDevInfoByDid(anyString, anyInt);
result = deviceInfo;
result = null;

这样第一次调用返回deviceInfo,第二次调用返回null。

5、mock代码,里面的变量要用通用类型,比如:

pushAppManager.pushDataToUser(anyInt, withAny(new HashMap()), anyString);
int 改为anyInt,类用withAny,String用anyString。


当你觉得生活艰难时,你一定在走上坡路。与君共勉~

原创粉丝点击