小编use*_*395的帖子

在方法中创建的模拟对象正在测试中

我有一个我想测试的类。只要有可能,我就会为那个依赖于其他类的对象的类进行依赖注入。但是,我遇到了一种情况,我想在不重构代码的情况下模拟对象而不是应用 DI。

这是被测类:

public class Dealer {

    public int show(CarListClass car){
        Print print=new Print();

        List<String> list=new LinkedList<String>();

        list=car.getList();
        System.out.println("Size of car list :"+list.size());

        int printedLines=car.printDelegate(print);
        System.out.println("Num of lines printed"+printedLines);

        return num;
    }
}
Run Code Online (Sandbox Code Playgroud)

我的测试课程是:

public class Tester {
    Dealer dealer;

     CarListClass car=mock(CarListClass.class);  
     List<String> carTest;
     Print print=mock(Print.class);

    @Before
    public void setUp() throws Exception {
        dealer=new Dealer();
        carTest=new LinkedList<String>();
        carTest.add("FORD-Mustang");
        when(car.getList()).thenReturn(carTest);
        when(car.printDelegate(print)).thenReturn(9);
    }

    @Test
    public void test() {

        int no=dealer.show(car);
        assertEquals(2,number);//not worried about assert as of now

    }
}
Run Code Online (Sandbox Code Playgroud)

我想不出在 Dealer 类中模拟打印对象的解决方案。因为,我在 …

java junit mocking junit4 mockito

7
推荐指数
1
解决办法
2万
查看次数

标签 统计

java ×1

junit ×1

junit4 ×1

mocking ×1

mockito ×1