2

我一直在使用AndroidViewClient幾個月,現在我很喜歡它,它很簡單,也是一個非常強大的工具。我正在努力開發一個自動化測試平臺,以進行更廣泛,更徹底的產品自動化測試,我將不得不決定是否堅持使用AndroidViewClient或轉移到Espresso或其他工具(如硒)。我知道Androidviewclient基本上是用於黑盒測試,並且不需要訪問源代碼。有人可以列出AndroidViewClient不提供的Espresso的一些功能/優勢嗎?我希望看到兩種工具在能力方面的比較。AndroidViewClient/Culebra比Espresso for Android GUI自動測試有什麼缺點?

回答

2

這是一個非常好的問題,但恐怕沒有一個直接和簡單的答案,這取決於上下文。

此外,最接近的比較是AndroidViewClient /庫萊布拉UI的Automator,因爲它們都具有不同的目標:

  • 咖啡:UI測試框架;適用於應用內的功能性UI測試 。 Espresso非常適合編寫白盒式自動測試,其中測試代碼利用來自被測試應用程序的實現代碼細節。
  • UI Automator:UI測試框架;適用於跨系統和安裝的應用程序的跨應用功能UI測試 。他的UI Automator測試框架非常適合編寫黑盒式自動測試,測試代碼不依賴目標應用程序的內部實現細節。

關於UI的Automator VS AndroidViewClient /庫萊布拉,既提供了幾乎相同的功能AndroidViewClient /庫萊布拉可能後端之一正是UI的Automator。主要的區別當然是前者使用Java和後者的python。

Espresso最大的優勢是UI thread synchronization,這有助於避免由於計時問題而導致隨機失敗的測試。這個測試問題被稱爲測試片狀。在Espresso之前,解決方法是在測試中插入足夠長的睡眠時間或超時時間,或添加代碼以繼續重試失敗的操作。

culebra自動爲UI Automator生成測試(和腳本)。該代碼是通過在設備上記錄自己的交互而生成的,因此您不必實際編寫任何測試代碼。下一代CulebraTester具有新的用戶界面以及生成python,Java和javascript測試的功能。

enter image description here

咖啡測試記錄在最新的Android Studio預覽確實幾乎是咖啡一樣。

相關問題