工程开发
create-unit-test
为 AnySoftKeyboard 创建并运行遵循项目架构规范(Robolectric、命名、位置)的单元测试。
简介
此技能作为 AnySoftKeyboard 软件工程师的自动化指南,旨在促进稳健单元测试的创建与维护。它旨在确保代码变更保持稳定且正常运行,同时避免产生回归错误。该技能严格执行项目特定的测试架构,要求开发者遵守标准化的文件放置、命名惯例,并使用 Robolectric 框架在 JVM 环境中测试 Android 组件。
-
提供明确的测试文件命名与位置指南,特别锁定 /src/test/java/ 路径。
-
引导开发者使用 Arrange-Act-Assert (AAA) 模式编写测试,提升测试的可读性与可维护性。
-
要求使用 Robolectric 进行 Android 组件测试,确保资源(如字符串与主题)在执行期间能正确解析。
-
鼓励使用 Fakes 取代 Mocks 或复杂的修补程序,以维持测试的可靠性与确定性。
-
简化通过 Gradle 执行测试的流程,为不同项目模块提供特定的命令行模板。
-
通过指引开发者前往 Gradle 生成的 XML 测试失败报告位置,加快调试速度。
-
专为在 AnySoftKeyboard 代码库中进行错误修复、功能开发或重构的开发者设计。
-
在建议实现细节前,先专注于识别核心功能、边界情况与错误场景。
-
强调所有测试应放置于 test 源代码集中,不建议将 androidTest 用于一般单元测试,以维持 CI 构建效率。
-
通过引导使用者访问 build/test-results/ 目录下的失败日志,协助解决测试失败问题。
-
通过执行一致的测试实践并避免影响仓库稳定性的脆弱测试 (flaky tests),来维持项目品质。
仓库统计
- Star 数
- 3,288
- Fork 数
- 917
- Open Issue 数
- 1,073
- 主要语言
- Java
- 默认分支
- main
- 同步状态
- 空闲
- 最近同步时间
- 2026年5月3日 04:45