需求

编写注册资料中,需要写关于单元测试相关的资料,所以需要使用 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 单元测试

Android 单元测试,从小白到入门开始

在AndroidStudio中使用单元测试

Android 单元测试只看这一篇就够了

构建有效的单元测试

构建插桩单元测试

构建本地单元测试

在 Android Studio 中测试

测试基础知识

Android Studio 进行单元测试完整教程

Android Unit Testing with Mockito

警告:不推荐使用Assert类型的方法assertEquals

junit测试assert各种断言用法