需求
编写注册资料中,需要写关于单元测试相关的资料,所以需要使用 android studio 来进行单元测试.
解决
android 单元测试分为两种:
- 本地测试,在
test
文件夹,只涉及 java 本身,可以用 jvm 来进行测试的。 - 仪器测试,在
androidTest
文件夹,涉及到 android 框架,或者其他特殊情况等等。
本地测试
本地测试很简单,在源码中需要测试的方法上,右键 -> generate -> test,就可以弹出创建 test 的窗口,根据自己需要进行勾选,然后点击 ok 即可。如果已经存在测试代码文件了,还会提示你更新。
在测试代码中,主要依靠各种 assert
来判断是否满足条件,满足就通过,不满足就不通过。还有建议使用 import org.junit.Test;
而不是 import junit.framework.TestCase;
- assertTrue
- assertFalse
- assertEquals 注意在比较浮点数时,最好使用带 delta 参数的方法。
- assertNotNull
- assertNull
- assertSame 判断是否是同一个引用
- assertNotSame
在测试代码的方法或者类左侧有 run 的图标,点击可以选择是否在测试的时候计算覆盖率。
另外,setUp 可以用来做测试前的准备,tearDown 可以用来做测试后的首尾。
仪器测试
参考
Android Unit Testing with Mockito