android-testing by new-silvermoon/awesome-android-agent-skills
npx skills add https://github.com/new-silvermoon/awesome-android-agent-skills --skill android-testing此技能提供关于测试现代 Android 应用程序的专家指导,灵感来源于 "Now in Android"。它涵盖了 单元测试、Hilt 集成测试 和 截图测试。
libs.versions.toml)确保您拥有正确的测试依赖项。
[libraries]
junit4 = { module = "junit:junit", version = "4.13.2" }
kotlinx-coroutines-test = { group = "org.jetbrains.kotlinx", name = "kotlinx-coroutines-test", version.ref = "kotlinxCoroutines" }
androidx-test-ext-junit = { group = "androidx.test.ext", name = "junit", version = "1.1.5" }
espresso-core = { group = "androidx.test.espresso", name = "espresso-core", version = "3.5.1" }
compose-ui-test = { group = "androidx.compose.ui", name = "ui-test-junit4" }
hilt-android-testing = { group = "com.google.dagger", name = "hilt-android-testing", version.ref = "hilt" }
roborazzi = { group = "io.github.takahirom.roborazzi", name = "roborazzi", version.ref = "roborazzi" }
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
截图测试确保您的 UI 在视觉上不会退化。NiA 使用 Roborazzi,因为它可以在 JVM 上运行(快速)且不需要模拟器。
libs.versions.toml:
[plugins]
roborazzi = { id = "io.github.takahirom.roborazzi", version.ref = "roborazzi" }
build.gradle.kts 中应用它:
plugins {
alias(libs.plugins.roborazzi)
}
@RunWith(AndroidJUnit4::class)
@GraphicsMode(GraphicsMode.Mode.NATIVE)
@Config(sdk = [33], qualifiers = RobolectricDeviceQualifiers.Pixel5)
class MyScreenScreenshotTest {
@get:Rule
val composeTestRule = createAndroidComposeRule<ComponentActivity>()
@Test
fun captureMyScreen() {
composeTestRule.setContent {
MyTheme {
MyScreen()
}
}
composeTestRule.onRoot()
.captureRoboImage()
}
}
使用 HiltAndroidRule 在测试中注入依赖项。
@HiltAndroidTest
class MyDaoTest {
@get:Rule
var hiltRule = HiltAndroidRule(this)
@Inject
lateinit var database: MyDatabase
private lateinit var dao: MyDao
@Before
fun init() {
hiltRule.inject()
dao = database.myDao()
}
// ... 测试
}
./gradlew test./gradlew recordRoborazziDebug(用于录制)/ ./gradlew verifyRoborazziDebug(用于验证)每周安装次数
208
代码仓库
GitHub 星标数
552
首次出现
2026年1月27日
安全审计
安装于
opencode187
codex186
gemini-cli176
github-copilot169
kimi-cli156
amp155
This skill provides expert guidance on testing modern Android applications, inspired by "Now in Android". It covers Unit Tests , Hilt Integration Tests , and Screenshot Testing.
libs.versions.toml)Ensure you have the right testing dependencies.
[libraries]
junit4 = { module = "junit:junit", version = "4.13.2" }
kotlinx-coroutines-test = { group = "org.jetbrains.kotlinx", name = "kotlinx-coroutines-test", version.ref = "kotlinxCoroutines" }
androidx-test-ext-junit = { group = "androidx.test.ext", name = "junit", version = "1.1.5" }
espresso-core = { group = "androidx.test.espresso", name = "espresso-core", version = "3.5.1" }
compose-ui-test = { group = "androidx.compose.ui", name = "ui-test-junit4" }
hilt-android-testing = { group = "com.google.dagger", name = "hilt-android-testing", version.ref = "hilt" }
roborazzi = { group = "io.github.takahirom.roborazzi", name = "roborazzi", version.ref = "roborazzi" }
Screenshot tests ensure your UI doesn't regress visually. NiA uses Roborazzi because it runs on the JVM (fast) without needing an emulator.
Add the plugin to libs.versions.toml:
[plugins] roborazzi = { id = "io.github.takahirom.roborazzi", version.ref = "roborazzi" }
Apply it in your module's build.gradle.kts:
plugins { alias(libs.plugins.roborazzi) }
@RunWith(AndroidJUnit4::class)
@GraphicsMode(GraphicsMode.Mode.NATIVE)
@Config(sdk = [33], qualifiers = RobolectricDeviceQualifiers.Pixel5)
class MyScreenScreenshotTest {
@get:Rule
val composeTestRule = createAndroidComposeRule<ComponentActivity>()
@Test
fun captureMyScreen() {
composeTestRule.setContent {
MyTheme {
MyScreen()
}
}
composeTestRule.onRoot()
.captureRoboImage()
}
}
Use HiltAndroidRule to inject dependencies in tests.
@HiltAndroidTest
class MyDaoTest {
@get:Rule
var hiltRule = HiltAndroidRule(this)
@Inject
lateinit var database: MyDatabase
private lateinit var dao: MyDao
@Before
fun init() {
hiltRule.inject()
dao = database.myDao()
}
// ... tests
}
./gradlew test./gradlew recordRoborazziDebug (to record) / ./gradlew verifyRoborazziDebug (to verify)Weekly Installs
208
Repository
GitHub Stars
552
First Seen
Jan 27, 2026
Security Audits
Gen Agent Trust HubPassSocketPassSnykPass
Installed on
opencode187
codex186
gemini-cli176
github-copilot169
kimi-cli156
amp155
Spring Boot工程师技能指南:微服务架构、安全加固与云原生开发实战
4,200 周安装
Jest React测试教程:React Testing Library单元测试与集成测试完整指南
422 周安装
Prompt Optimizer:基于EARS方法论的AI提示词优化工具,将模糊需求转为精确规范
425 周安装
Neon Postgres 连接池与无服务器驱动配置指南 - Prisma、Drizzle、PgBouncer 集成教程
422 周安装
Amazon Working Backwards 方法指南:5个问题与PR-FAQ流程详解,提升产品开发效率
424 周安装
Claude技能查找与安装工具 - 搜索、浏览、管理AI助手技能库
424 周安装
AI智能体WebSearch网络搜索技能:无需API密钥,实时获取最新网络信息
431 周安装