google提倡以测试驱动开发,跟传统的产品功能驱动开发相比,完整的测试驱动开发有以下优点:
-
快速反馈定位错误
-
在开发过程中尽早排除代码故障
-
更快速安全的进行代码重构
-
稳定的快速的迭代开发,减少技术债务
当你要开发一个新的功能或者对功能进行迭代开发的时候, 你需要先写一个新的单元测试或者添加用例到之前的单元测试中!!!
看一眼官方的推荐的Feature开发流程:
每一个单元测试需要考虑所有可能的交互,比如:标准的交互操作、不合法的输入、无法找到资源等。
完整测试需要包含:单元测试(70%)、集成测试(20%)、UI测试(10%)。
可以看下 Test-Driven Development on Android(如果访问不了,可以去国内视频网站https://v.youku.com/v_show/id_XMjc5NjA1NTg4NA==.html)
-
Robolectric
-
AndroidJUnitRunner 和JUnit4
-
Espresso
-
UI Automator
-
Android Test Orchestrator