我想知道如何測試點擊按鈕時的活動啓動。我知道這可能是這樣做的: onView(withText(R.string.button_next_activity)).perform(click());
,然後onView(withId(R.id.second_tv_welcome)).check(matches(withText(R.string.second_tv_welcome)));
其中second_tv_welcome
是來自第二個活動的textView。但我目前的活動是啓動Facebook的網頁視圖,我不知道這個活動中的ID是什麼,另外我沒有發現這種檢查方法(檢查一個文本視圖是否存在並且具有期望的文本)非常乾淨。 任何解決方法?謝謝。特濃咖啡,第二次活動的測試發佈
1
A
回答
1
您應該避免在功能測試中使用外部服務。這包括使用GPS和內部做的事情來進行API調用,例如, Facebook或Google+登錄按鈕。
我用它的方式是創建兩種風格,並在每個中都放置登錄按鈕佈局:一個真實的,用於生產和一個模擬,除了通知登錄操作成功(或失敗) ,所以調用代碼可能會轉到另一個活動。這聽起來似乎很難在第一妥善做好,所以你可能想看看我的寵物的應用程序的相關代碼:
兩種口味在這個應用程序中定義stub_login文件夾作爲src/res文件夾中的build.gradle:
sourceSets {
mock {
java { srcDir 'src/stub_login/java' }
res { srcDir 'src/stub_login/res' }
}
apiary {
java { srcDir 'src/stub_login/java' }
res { srcDir 'src/stub_login/res' }
}
}
而且tests(不太多了,現在)與運行:
./gradlew connectedAndroidTestMockDebug
注意,功能測試是在src/androidTestMock
和單元測試可以留在src/androidTest
。
相關問題
- 1. 測試活動和特濃咖啡片段
- 2. 勺子和濃咖啡測試
- 3. 意式濃縮咖啡測試 - Android
- 4. 濃咖啡AmbiguousViewMatcherException
- 5. 測試使用濃咖啡登錄引發異常
- 6. 濃縮咖啡和手動同時測試
- 7. 特濃咖啡:接收廣播事件
- 8. 濃咖啡:多個ListViews
- 9. 濃縮咖啡,測試登錄屏幕的快樂路徑
- 10. 濃咖啡測試中的Apache Poi 64K錯誤
- 11. 簡單的濃咖啡測試「在60秒內循環x次迭代」錯誤
- 12. 濃咖啡 - 爲什麼濃咖啡找到這個匹配模糊?
- 13. 使用ExpandableListView進行濃縮咖啡測試
- 14. 用濃咖啡測試小吃店顯示
- 15. 意式濃縮咖啡測試與永不落幕AsyncTask
- 16. 意式濃縮咖啡測試不更新
- 17. 如何反覆運行單元測試+濃咖啡?
- 18. Android如何通過濃縮咖啡測試失敗
- 19. 使用Dagger2進行濃縮咖啡測試
- 20. 在控制檯上顯示濃縮咖啡測試結果
- 21. 如何在濃縮咖啡測試中循環3個按鈕
- 22. 使用濃咖啡在協調器佈局內滾動
- 23. AndroidStudio記錄咖啡測試
- 24. 咖啡等待活動onDestroy
- 25. 濃咖啡複選框被選中
- 26. 以下在濃咖啡中匹配
- 27. 意式濃縮咖啡替代方案
- 28. Android咖啡測試。檢測的ListView
- 29. 特濃咖啡:點擊位置不明的Recycler視圖
- 30. 轉到特濃咖啡的文件鍵盤快捷鍵
即使它不回答我的問題,您的資源是非常寶貴的。我會舉例說明你做了什麼,並將其應用於我的項目。非常感謝!注意:我使用robolectric + mockito – 2015-02-24 18:38:19
@ E-Kami進行單元測試如果這不能回答你,那麼我可能不明白這個問題。您的'button_next_activity'的點擊處理程序是直接調用'startActivity'還是它是Facebook登錄按鈕? – 2015-02-25 14:26:16
是點擊一個按鈕調用'startActivity',我問的是測試是否啓動了正確的活動(因爲在某些情況下,我不希望Facebook登錄被啓動,但另一個活動)。無論如何,你給我的是非常有用的。我將它整合到我的項目atm中。非常感謝。 – 2015-02-25 14:54:56