3.19

安卓应用的测试与持续集成​​
高质量的安卓应用离不开完善的测试。安卓测试主要包括单元测试、集成测试和 UI 自动化测试。​
单元测试用于测试代码中的最小单元,如函数或方法。使用 JUnit 4 进行单元测试,例如测试一个简单的加法函数:​

import org.junit.Test;​
import static org.junit.Assert.assertEquals;​
public class CalculatorTest {​
@Test​
public void testAddition() {​
int result = 2 + 3;​
assertEquals(5, result);​
}​
}​

集成测试则关注多个组件之间的交互。安卓提供了 Espresso 框架进行 UI 自动化测试,可以模拟用户操作并验证 UI 状态。例如,测试一个按钮点击后的文本变化:​

import android.view.View;​
import androidx.test.espresso.Espresso;​
import androidx.test.espresso.action.ViewActions;​
import androidx.test.espresso.assertion.ViewAssertions;​
import androidx.test.espresso.matcher.ViewMatchers;​
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;​
import com.example.MainActivity;​
@RunWith(AndroidJUnit4.class)​
public class MainActivityUITest {​
@Rule​
public ActivityScenarioRule activityRule = new ActivityScenarioRule<>(MainActivity.class);​
@Test​
public void testButtonClick() {​
Espresso.onView(ViewMatchers.withId(R.id.button))​
.perform(ViewActions.click());​
Espresso.onView(ViewMatchers.withId(R.id.text_view))​
.check(ViewAssertions.matches(ViewMatchers.withText("Button clicked!")));​
}​
}​

结合持续集成工具(如 GitHub Actions、Jenkins),可以在每次代码提交时自动运行测试,确保代码质量。例如,在 GitHub Actions 中配置安卓测试工作流:​

name: Android Tests​
on:​
push:​
branches:​
- main​
jobs:​
build:​
runs-on: ubuntu-latest​
steps:​
- uses: actions/checkout@v3​
- name: Set up JDK 11​
uses: actions/setup-java@v3​
with:​
java-version: '11'​
distribution: 'adopt'​
- name: Grant execute permission for gradlew​
run: chmod +x gradlew​
- name: Build with Gradle​
run: ./gradlew build​
- name: Run Android tests​
run: ./gradlew connectedAndroidTest​

通过全面的测试和持续集成,能够及时发现和修复问题,提高应用的稳定性和可靠性。

posted @ 2025-03-19 22:18  Echosssss  阅读(6)  评论(0)    收藏  举报