基于 Espresso 实现一个 Android 自动化测试用例

Espresso 是 Google 官方提供的一个易于测试 Android UI 的开源框架。以下是一个简单的 Espresso 测试用例示例,使用 Kotlin 语言进行演示。

1. 添加依赖

首先,确保你的 build.gradle 文件中添加了 Espresso 的依赖:


build.gradle

dependencies {
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
    androidTestImplementation 'androidx.test.ext:junit:1.1.3'
    testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
2. 编写测试用例

创建一个新的测试类,继承自 androidx.test.ext.junit.runners.AndroidJUnit4,并使用 @Rule 注解来启动 Activity


kotlin

import androidx.test.espresso.Espresso.onView
import androidx.test.espresso.action.ViewActions.click
import androidx.test.espresso.action.ViewActions.typeText
import androidx.test.espresso.assertion.ViewAssertions.matches
import androidx.test.espresso.matcher.ViewMatchers.withId
import androidx.test.espresso.matcher.ViewMatchers.withText
import androidx.test.ext.junit.rules.ActivityScenarioRule
import androidx.test.ext.junit.runners.AndroidJUnit4
import org.junit.Rule
import org.junit.Test
import org.junit.runner.RunWith

@RunWith(AndroidJUnit4::class)
class LoginActivityTest {

    @Rule
    @JvmField
    val activityRule = ActivityScenarioRule(LoginActivity::class.java)

    @Test
    fun testLoginSuccess() {
        // 输入用户名
        onView(withId(R.id.username_input)).perform(typeText("testUser"))

        // 输入密码
        onView(withId(R.id.password_input)).perform(typeText("password123"))

        // 点击登录按钮
        onView(withId(R.id.login_button)).perform(click())

        // 验证是否跳转到了主界面
        onView(withText("Welcome, testUser!")).check(matches(isDisplayed()))
    }
}
3. 测试用例解释
  • onView(withId(R.id.username_input)).perform(typeText("testUser")):找到 ID 为 username_input 的 EditText 控件,并输入文本 "testUser"。
  • onView(withId(R.id.password_input)).perform(typeText("password123")):找到 ID 为 password_input 的 EditText 控件,并输入文本 "password123"。
  • onView(withId(R.id.login_button)).perform(click()):找到 ID 为 login_button 的按钮,并点击它。
  • onView(withText("Welcome, testUser!")).check(matches(isDisplayed())):验证屏幕上是否显示了文本 "Welcome, testUser!"。
4. 运行测试

在 Android Studio 中,右键点击测试类或测试方法,选择 "Run" 来运行测试。测试将在连接的设备或模拟器上执行。

Logo

一站式 AI 云服务平台

更多推荐