ui測試之功能測試
Android框架內支持運行的Instrumentation測試。測試庫中包含Espresso,用於運行功能UI測試的框架。下面通過簡單小例子來介紹一下如何全自動測試相關功能UI。
添加依賴
首先在build.gradle添加部分代碼
創建交互頁面
創建xml文件
首先我們就簡單添加一個TextView、EditText、Button,其中onClick的作用相當於button點擊之後調用sayHello方法(sayHello在Activity裡面定義),布局代碼如下
創建Activity
代碼如下
測試
創建測試類
找到以(androidTest)後綴結尾的包名並創建一個新的java類,命名格式×××Test,其中類開頭必須添加@RunWith(AndroidJunit4.class)和@LargeTest的註解,而@Rule註解是告知需要測試的是哪個類,@Test註解是測試的具體內容,最好複製我導入的包,這樣就不會出現其他錯誤,具體代碼如下
Advertisements
語法解析
onView是一個可以通過id或者內容綁定一個控制項的語法;而perform是執行某種操作的語法,如上代碼可以看出我是讓EdiTText逐個輸入magic單詞,最後closeSoftKeyboard是關閉軟鍵盤的意思;perform(click())的意思就是模擬點擊操作時間;最後的check語法就是做來作比較,如果和預期值一樣測試通過。詳細語法大家自己花時間去學習吧!
如何運行測試
打開模擬器,右擊創建的×××Test.class類
測試結果
測試成功
測試通過是為綠色,沒有出錯信息
測試失敗
測試不通過為紅色,顯示出錯信息
測試過程遇到問題與解決辦法
問題
解決方法
在gradle(App)裡面添加如下代碼,代碼塊添加在android{}裡面
Advertisements
configurations.all {
resolutionStrategy {
force 'com.android.support:support-annotations:24.1.1'
}
}
效果圖
全程測試自動化,測試結束後退出頁面
更多文章請前往51Testing軟體測試網。