Android 的单元测试真的难搞啊! 1 、写过很多关于 Android 的单元测试的用例,特别是对老项目新增单元测试用例,发现大多时候,mock 、power pock 也难对代码做单元测试,很多单元测试的用例发现都是“废话”! 2 、Robolectric 虽然能解决 4 大组件的问题,但是真实测试发现写的用例也很鸡肋! 3 、使用 AndroidTest 又依赖环境,更多面向的应该是测试人员。 所以 Android 到底怎样写出有实际意义的测试用例,而不是类似完成 1000 行 6 个用例的 kpi ? 希望有经验的人,给出你们的看法,不再是面向领导编程!!!
1
ahao99 2021-09-22 14:46:43 +08:00
把业务相关的代码抽取出单独的 Java 代码,针对 JAVA 代码写 UT
Test 是否有意义,取决于你对业务的理解 |
3
xylophone21 2021-09-22 15:07:40 +08:00
@ahao99 然而在 Android 端,一般来说业务并不是很多?
|
4
Geele 2021-09-22 18:09:07 +08:00
这个需要可测性高的代码,简单来说就是分层。比如 MVVM 中的 ViewModel 主要处理业务逻辑,且不依赖 Android 环境,就可以针对 ViewModel 的业务逻辑做 Java Unit Test (验证函数的输入输出)。反之没有良好的分层,业务逻辑与视图混在一块,我个人理解没办法做单元测试,只能做集成测试或者 UI 测试。
|
5
Helsing 2021-09-22 22:43:45 +08:00 via iPhone
Clean 架构
|
6
vemier 2021-09-22 22:56:34 +08:00
集成测试优先
|