Espresso 設定說明
- 設定你的測試環境
- 下載 Espresso
- 設定儀表執行器
- 示例 build.gradle 檔案
- Analytics(分析)
- 新增第一個測試
- 執行測試本指南介紹如何使用 SDK Manager 安裝 Espresso 並使用 Gradle 進行構建。建議使用 Android Studio。
設定你的測試環境
為避免瑕疵,我們強烈建議你關閉用於測試的虛擬或物理裝置上的系統動畫。
在你的裝置上,在 Settings-> Developer options 下,禁用以下 3 個設定:
- 視窗動畫比例
- 過渡動畫比例
- 動畫師持續時間刻度
下載 Espresso
-
確保你已在 Extras 下安裝了最新的 Android Support Repository(請參閱說明)。
-
開啟應用程式的 build.gradle 檔案。這通常不是頂級 build.gradle 檔案,而是 app / build.gradle。
-
在依賴項中新增以下行:
androidTestCompile’com.android.support.test.espresso:espresso-core:2.2.2’androidTestCompile’com.android.support.test:runner:0.5'
-
有關更多工件,請參閱下載部分(espresso-contrib,espresso-web 等)
-
設定儀表執行器
將相同的 build.gradle 檔案新增到 android.defaultConfig 中的以下行:testInstrumentationRunner android.support.test.runner.AndroidJUnitRunner
示例 build.gradle 檔案
apply plugin: 'com.android.application'
android {
compileSdkVersion 22
buildToolsVersion "22"
defaultConfig {
applicationId "com.my.awesome.app"
minSdkVersion 10
targetSdkVersion 22.0.1
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
}
dependencies {
// App's dependencies, including test
compile 'com.android.support:support-annotations:22.2.0'
// Testing-only dependencies
androidTestCompile 'com.android.support.test:runner:0.5'
androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2.2'
}
Analytics(分析)
為了確保每個新版本都在正確的軌道上,測試執行器會收集分析。更具體地說,它為每次呼叫上傳待測應用程式的包名稱的雜湊值。這使我們可以使用 Espresso 測量獨特包裝的數量以及使用量。
如果你不希望上傳此資料,可以通過將以下引數傳遞給測試執行器來選擇退出:disableAnalyticstrue
(請參閱如何傳遞自定義引數)。
新增第一個測試
Android Studio 預設在 src / androidTest / java / com.example.package /中建立測試
使用規則的示例 JUnit4 測試:
@RunWith(AndroidJUnit4.class)
@LargeTest
public class HelloWorldEspressoTest {
@Rule
public ActivityTestRule<MainActivity> mActivityRule = new ActivityTestRule(MainActivity.class);
@Test
public void listGoesOverTheFold() {
onView(withText("Hello world!")).check(matches(isDisplayed()));
}
}
執行測試
在 Android Studio 中
建立測試配置
在 Android Studio 中:
-
開啟執行選單 - >編輯配置
-
新增新的 Android 測試配置
-
選擇一個模組
-
新增特定的儀表執行器:
android.support.test.runner.AndroidJUnitRunner
執行新建立的配置。
從命令列到 Gradle
執行
./gradlew connectedAndroidTest
Espresso 基本上有三個組成部分:
-
ViewMatchers - 允許在當前檢視層次結構中查詢檢視
-
ViewActions - 允許對檢視執行操作
-
ViewAssertions - 允許斷言檢視的狀態
基礎 Espresso 測試
onView(ViewMatcher) -- 1
.perform(ViewAction) -- 2
.check(ViewAssertion); -- 3
- 找到檢視
- 對檢視執行操作
- 驗證斷言