我是软件测试的新手。在教程中,我读,我可以测试一些像这样的方法:测试返回类型的方法void
@Test
public void testMultiply() {
MyClass tester = new MyClass();
assertEquals("10 x 5 must be 50", 50, tester.multiply(10, 5));
}
所以我有一些参数传递给方法,并得到一个返回值。
但在我来说,我有一些类不带任何参数和返回值:
ArrayList al = new ArrayList();
public void Main(){
methodA();
methodB();
}
public void methodA(){
// connect to URL
// get some data
for(int i=0; i<someThing; i++){
al.add(data);
}
}
public void methodB(){
// do something with al
}
是否也可以对它们进行测试?例如,正确的值是否来自methodA()
中的URL。
当然可以。它看起来像'methodA()'正在修改'ArrayList'的内部状态,所以你可以让你的测试类在执行该方法之前和之后检查列表的内容。 – azurefrog 2014-09-19 19:03:56
是的,它取决于什么是重要的,你可以使用mockito来验证实现是否被调用,或者你可以验证它发生变异的对象。 – StackFlowed 2014-09-19 19:04:05
当然。通常,如果在没有参数和返回值的情况下调用函数期间没有发生错误,则表示该函数可以工作。当然,这根本不是真的。为此,您可以简单地使用调试器并测试程序的流程。 – nbro 2014-09-19 19:04:06