2011-12-09 106 views
0

我有一系列具有編程式UI佈局的Java類;佈局的結構在類的運行過程中會有所不同,並且取決於用戶的響應,因此我無法將它們創建爲xml文件中的固定佈局。我現在處於需要測試這些類的階段,並且正在使用JUnit進行Android和Eclipse測試。我似乎無法研究如何測試這些程序化UI,因爲它們的ID在創建時被分配。我知道這個ID是什麼(我使用setId(100 +i)來分配ID,其中我是循環變量),但是無法在測試項目中訪問這些ID。我試過findViewById(SandS.Med.NurseCalc.101),但它似乎不起作用。我正在嘗試在我的setUp()模塊中。 任何人都可以幫助這個項目或指向我在一個更實際的方式,而不是相當理論和複雜的方式在android.developer網站的方式來看待測試的網站的方向。 感謝預期。編程式UI佈局的JUnit測試

+0

我仍然在尋找一種方式使用,以測試它如果可能的話,使用Android JUnit工具。我發現現在已經足夠應付一個概念了,而且還沒有陷入嘲諷。我會很感激任何人的建議。 –

回答

0

我發現嘲笑非常有用的測試程序安卓的東西。我建議jMockit
爲了這個目的(恕我直言,最好的嘲諷周圍框架)

在這個單元測試,我測試特定VEW檢索:

https://github.com/ko5tik/andject/blob/master/src/test/java/de/pribluda/android/andject/ViewInjectionTest.java

+0

我真的很希望不必去別的東西。但是,嘿,嗨;如果你認爲這是最好的方式,我會放棄它。我看了你的代碼,它似乎很有幫助,謝謝。 但是,我確實希望能夠使用JUnit或SDK附帶的Android測試。 –

+0

我發現提供的SDK工具不夠用。嘲笑對TDD(以及其他上下文)非常有用 - 將其視爲腳本化調試會話。你只需指定你的類如何與其他系統進行交互(如重寫活動方法等),而不需要創建對象 - 並且你不能創建android對象或調用方法,因爲android librries完全被中止了(所有方法都被刪除以拋出毀滅時間例外) - 你只能對它們進行編譯 –