假设我有
class Box{
Item[] items;
}
class Item{
Toy[] toys;
}
class Toy{
Color[] colors;
}
方法是测试盒子是否有绿色玩具;
public bool testHasColor(Box){
//There will be code here that
//Streams over each type till we get to color
// Final point is
if(color==Color.GREEN){
return true;
}
}
框文本.class
public void testBoxHasColorGreenMethod(){
// Need mocking here
}
为测试用例模拟这个 Box 类的最佳方法是什么?
谢谢
你不需要模拟任何Java API。你只需要"模拟"一些通常不称为"模拟"的数据 - 只是测试。因此,您只需创建一个 Box 的测试实例并测试您的方法是否产生预期的结果。
Box box = new Box();
Item item = new Item();
Toy toy = new Toy();
box.items = new Item[] {item};
item.toys = new Toy[] {toy};
toy.colors = new Color[] {Color.RED, Color.GREEN};