我正在測試一個銷燬/重新啓動序列,以確保計數器保留其原始值(在重新啓動時不正確地增加之前)。當我手動測試時,我修復了一個問題並且工作正常。但單元測試總是通過,無論我是否包含修復。正如你在下面的代碼中看到的,我得到了計數器值,然後重新啓動,再次獲得計數器值並對它們進行比較。可能是什麼問題呢?Android:如何使單元測試失敗
public void testNumCorrectEqualAfterDestroy() {
mCorrect = (TextView) mActivity.findViewById(R.id.correct);
int before = Integer.parseInt(mCorrect.getText().toString());
mActivity.finish();
mActivity = this.getActivity();
mCorrect = (TextView) mActivity.findViewById(R.id.correct);
int after = Integer.parseInt(mCorrect.getText().toString());
Assert.assertEquals(before, after);
}
嘗試添加一個assertTrue(false);在那裏只是爲了確保測試正在運行。這個測試與其他運行的測試是否在同一個類中? – Dan 2011-05-05 21:49:59
它絕對在運行。它顯示在運行的測試列表中,並且調試語句(此處未包括)顯示在控制檯上。可以肯定的是,我添加了assertTrue(false),並且失敗了。 – 2011-05-05 21:58:12
你如何設置** mCorrect **的默認值?在這種情況下,在我看來,**之前的**和**之後的**都具有相同的值,即默認值,這將解釋每次通過的測試。 – dmon 2011-05-05 23:06:01