我是軟件測試的新手。在教程中,我讀,我可以測試一些像這樣的方法:測試返回類型的方法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