Android 单元测试学习
由于完全没用过android studio做过单元测试,一起学习:
基本说明
我用的是 android studio 2.2.3版本。如下图是新生成的android应用目录结构。
![]()
main包是主要的代码和资源文件
androidTest包是测试android运行环境的。
test包是测试单元模块的
ExampleUnitTest类
ExampleUnitTest是android项目生成的时候自动产生的类 代码如下:
import org.junit.Test;
import static org.junit.Assert.*;
/**
* Example local unit test, which will execute on the development machine (host).
*
* @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
*/
public class ExampleUnitTest {
@Test
public void addition_isCorrect() throws Exception {
assertEquals(4, 2 + 2);
}
}
addition_isCorrect 就是单元测试用例。
可以在方法里面右键运行看看。
然后再下面的状态栏可以看到结果:
结果显示一个测试通过(1 test passed)
如果是失败的话,也会显示出来:
会反馈给你预期值(Expected)和实际值(Actual)的差异。
在当前方法里面运行单元测试,是不会影响其他单元测试的,所以如果我们要一次性测试多个单元的话,可以运行整个类的测试。
我在里面增加了一个单元测试方法。记得写@Test注解,否则ide不识别。
选中测试类名(ExampleUnitTest)。
运行后可以查看结果
右边可以看出2 test done,1 failed,2个测试完成,一个失败。
左边可以看绿色图标的方法是成功的,黄色感叹号的是表示失败的。
实际应用
然后我们再测试一个应用里面的方法实践一下。
在应用activity里面添加了一个方法 addTest()。
现在我们的目标是测试这个方法。
选择这个方法,右键如下操作:
然后选择 Create New Test
填写测试类名,继承名,所属包,增加的方法
勾选了setUp/@Before
@Before 就表示在单元测试之前先执行这个方法。
@After 就表示在单元测试后执行,有些对象需要释放,或者关闭操作。
然后下面选择要测试的成员方法。 ok就行。
然后再在生成的测试类里面填写对应的方法和流程就行了。
后面执行测试的步骤就和前面所述一样了。
到此,单元测试基本学习好了。
谢谢查看。