擴展當我們的團隊創造了一個Android使用Google地圖的應用程序,我可以使用地圖片段的R.id創建測試。需要注意的是,我可以訪問應用程序的代碼,所以我知道要查找哪些變量。
創造這個測試之前,我想確保我所針對的正確R.id,讓我去到R檔,複製的價值,並把它放在
assertEquals(id.satellite,copiedRValue);
這返回真,然後圍繞打造多變的可變
initialID = solo.waitForFragmentById(id.satellite); //where id.satellite is defined in the R file, eventually would time out and throw error if fragment was not present
//save the map type, leave
//and do other awsome stuff
//before coming back to the map
finalID = solo.waitForFragmentById(id.satellite);//capture the map fragment that is now displayed, again would time out if this specific fragment was not visible
//assert that the fragments are equal
assertTrue(initialID.equals(finalID);
測試,我與這個測試,並與其他Robotium測試的最大的問題是,我有點擊事件發生在菜單帶來有時Robotium會不t執行點擊,並且測試將在點擊失敗。
這是我第一次使用Robotium進行測試,因此可能有其他方法來操縱R.id值來創建更嚴格的測試。