PowerMockito 同时mock多个对象

有时候,需要测试的方法内有collections结构,就需要同时mock多个对象

被测方法:

public class EmployeeService {

    public List<Integer> getTotalLIst(){
        List<Integer> list = new ArrayList<Integer>();
        for (int i=0;i<10;i++){
            list.add(employeeDao.getTotal());
        }
        return list;
    }
}

测试类:

    @Test
    public void getTotalLIst(){
        PowerMockito.when(employeeDao.getTotal()).thenReturn(1,2,3,4,5,6,7,8,9,10);
        List<Integer> list = employeeService.getTotalLIst();
        List<Integer> listnew = new ArrayList<Integer>();
        for(int i=0;i<10;i++){
            listnew.add(i+1);
        }
        Assert.assertEquals(listnew, list);
    }
时间: 2024-08-04 16:14:45

PowerMockito 同时mock多个对象的相关文章

用PowerMockito来mock私有方法(转)

话说我们做的所谓的接口测试真的是不伦不类啊,测的是controller层,那叫接口木??!!可是老大们说写的是接口测试,那就接口吧! 自接手写这个接口测试不久,很多人,包括一个关系比较好的架构师就跟我说,写这个很麻烦啊,代码很乱,你得mock一堆. 既然已经跳进去了,那就游一会儿吧.为了mock,可谓想尽了办法啊,从一般的mock工具mockito,到java的反射,最后发现一个强大的工具——PowerMockito   他居然能够mock私有方法.虽然,最后被老大们说私有方法是不应该mock的

使用PowerMockito.whennew的时候,注解preparefortest里面的类需要是mock的new代码所在的类的对象

Mock方法内部new出来的对象 测试目标代码: 01 public class ClassUnderTest { 02 03 public boolean callInternalInstance(String path) { 04 05 File file = new File(path); 06 07 return file.exists(); 08 09 } 10 } 测试用例代码: 01 @RunWith(PowerMockRunner.class) 02 public class T

junit单体测试(PowerMockito)

最近1个月项目尾声,在公司做单体测试,从模仿开始,积累了一些东西,记录下来,留备以后不时之需: 需要jar包: javassist-3.16.1-GA.jar mockito-all-1.9.5.jar powermock-api-mockito-1.5.6.jar powermock-api-support-1.5.6.jar powermock-core-1.5.6.jar powermock-module-junit4-1.5.6.jar powermock-module-junit4-c

PowerMockito使用详解

一.PowerMock概述 现如今比较流行的Mock工具如jMock,EasyMock,Mockito等都有一个共同的缺点:不能mock静态.final.私有方法等.而PowerMock能够完美的弥补以上三个Mock工具的不足. PowerMock是一个扩展了其它如EasyMock等mock框架的.功能更加强大的框架.PowerMock使用一个自定义类加载器和字节码操作来模拟静态方法,构造函数,final类和方法,私有方法,去除静态初始化器等等.通过使用自定义的类加载器,简化采用的IDE或持续集

PowerMockito使用详解(转)

一.为什么要使用Mock工具 在做单元测试的时候,我们会发现我们要测试的方法会引用很多外部依赖的对象,比如:(发送邮件,网络通讯,远程服务, 文件系统等等). 而我们没法控制这些外部依赖的对象,为了解决这个问题,我们就需要用到Mock工具来模拟这些外部依赖的对象,来完成单元测试.  二.为什么要使用PowerMock 现如今比较流行的Mock工具如jMock.EasyMock .Mockito等都有一个共同的缺点:不能mock静态.final.私有方法等.而PowerMock能够完美的弥补以上三

PowerMockito的简单的介绍

我们的依赖的配置 <properties> <powermock.version>1.5.6</powermock.version> </properties> <dependencies> <dependency> <groupId>org.powermock</groupId> <artifactId>powermock-module-junit4</artifactId> <

使用PowerMock进行Mock测试

安装 下载地址:https://github.com/jayway/powermock/wiki/Downloads.下载" Mockito and JUnit including dependencies"版本.当前版本为”powermock-mockito-junit-1.6.3.zip". IntelliJ IDEA的设置如下: 右击工程,选择“Open Module Settings” 按下“ALT + Insert”,选择“Jars or directories..

单元测试——Moq框架下的Mock简介及简单实例

1.为什么要用Mock? 在测试过程中,往往会遇到这些问题: (1)真实对象具有不可确定的行为(产生不可预测的结果,如股票行情). (2)真实对象很难被创建. (3)真实对象的某些行为很难触发(如网络错误). (4)真实对象令程序的运行速度很慢. (5)真实对象有(或者是)用户界面. (6)测试需要询问真实对象它是如何被调用的(例如,测试可能需要验证某个回调函数是否被调用了). (7)真实对象实际上并不存在(当需要和其他开发小组,或者新的硬件系统打交道的时候,这是一个普遍问题). 借助于mock

使用 Python Mock 类进行单元测试

数据类型.模型或节点——这些都只是mock对象可承担的角色.但mock在单元测试中扮演一个什么角色呢? 有时,你需要为单元测试的初始设置准备一些“其他”的代码资源.但这些资源兴许会不可用,不稳定,或者是使用起来太笨重.你可以试着找一些其他的资源替代:或者你可以通过创建一个被称为mock的东西来模拟它.Mocks能够让我们模拟那些在单元测试中不可用或太笨重的资源. 在Python中创建mock是通过Mock模块完成的.你可以通过每次一个属性(one-attribute-at-a-time)或一个健