|
刚毕业,没怎么做过单元测试,可经理让我负责这个方面,看了JUnit的~就是感觉这个桩的建立感觉很吃力~EasyMock建立的桩是显式的通过参数或者其他显式的方式指定~但我现在做的桩是在函数内部调用的~外部根本无法感知~如:
类A中
public int add(int a)
{
return a + B.getNum();
}
类B中:
public static int getNum()
{
return 1;
}
在这种情况情况下,我现在的方法是在测试的工程中建立相同的文件,相当于覆盖了被测试的项目中的类的方法实现的:
类Bstub中:
public static int getNum()
{
return 2;
}
当然事实上不会这么简单的函数,部分是从数据库中取值,而我要把这个行为隔离开:
public int getSp(String a)
{
if (a.equals("1")
return 1;
else if (a.equals("2")
return 2;
.......
)
当这种方式在后期改数据时非常复杂,所以在此求助~有没有其他方法可行~我的设想是在测试用例中设置~但我看的资料里easyMock好像做不到吧~
初来乍到~多多指教~ |
|