我正在爲Android 2.3.3項目編寫一些測試,使用Android JUnit Test跑步者,並且我在斷言失敗跟蹤中看到了一些奇怪的結果。這裏有一個簡單的例子:Android測試項目JUnit失敗跟蹤未顯示預期+實際
import junit.framework.TestCase;
public class TU_Test extends TestCase {
public void testStuff() {
assertEquals("aft", "af");
}
}
斷言顯然失敗了,這裏是從Eclipse的複製跟蹤:
junit.framework.ComparisonFailure: expected:<...t> but was:<...>
at com.redprairie.test.TU_Test.testStuff(TU_Test.java:33)
at java.lang.reflect.Method.invokeNative(Native Method)
at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:169)
at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:154)
at android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:529)
at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1448)
所顯示的預期+實際幫助不大...這似乎顯示差異/缺少兩者之間的字符,但如果我可以看到每個字符的完整值,則會更有幫助。我通常(使用JUnit 4 +不使用Android Test Runner)能夠雙擊Eclipse中的故障跟蹤並查看兩個結果的差異。有什麼辦法可以使用Android Test Runner來實現這一點,它是JUnit 3樣式測試嗎?總是設置斷點對屁股來說是一種痛苦。
謝謝!
我給了它一個嘗試,但Android需要使用JUnit 3,而拋出的ComparisonFailure不包含這些方法。你列出的鏈接是用於JUnit 4 :( – chinabuffet
糟糕,你的權利。版本3只包含getMessage():( – nmb