我用Java編寫,基本上測試了一堆東西的節目......乾涸的Java(lambda函數?)
對於每一個電話,我需要檢查NullPointerExceptions
,StackOverflow
,IndexOutOfBounds
等。 ..
我在我的每一個方法現在這個重複模式:
try {
doSomething();
} catch(NullPointerExceptions npe) {
// prints something
} catch(StackOverflow soe) {
// prints something
} catch(IndexOutOfBounds iob) {
// prints something
}
由於我可以調用doSomething()
(具有不同PARAMS)多次在一個單一的方法,我不能只是throw
的EXC eption備份到主要(因爲我需要下一個測試來實際運行)。
我想寫一個lambda測試,我可以傳遞給一個函數,但我不能找到一種方法,用java :(做到這一點
我想這樣做:
private void test(Method m, E expectedValue) {
try {
if(!m.run().equals(expectedValue))
System.out.println("FAILED TEST: "+m.name()+". Value was "+m.run()+", should have been "+expectedValue);
} catch() {
// see above
}
}
你可以使用JUnit嗎?這對你來說或多或少。 – RoflcoptrException 2011-03-27 17:25:53
不,JUnit在這種情況下是不可行的,否則我會使用它... – sethvargo 2011-03-27 17:30:04
我不明白這個問題。也不明白爲什麼JUnit不適合。 – Bozho 2011-03-27 17:32:46