Android Studio JUnit单元测试

来源:互联网 发布:linux设备驱动功能 编辑:程序博客网 时间:2024/06/10 13:13

Android Studio JUnit单元测试

为什么要使用单元测试?

单元测试常常是程序员十分厌倦的。测试到底有什么用呢?测试不可能保证一个程序是完全正确的,但是测试却可以增强我们对程序完整的信心,测试可以让我们相信程序做了我们期望它做的事情。测试能够使我们尽早的发现程序的 bug 和不足。

一个 bug 被隐藏的时间越长,修复这个 bug 的代价就越大。在《快速软件开发》一书中已引用了大量的研究数据指出:最后才修改一个 bug 的代价是在 bug 产生时修改它的代价的10倍。

当然,我们主要讨论的是单元测试。单元测试是一个方法层面上的测试,也是最细粒度的测试。用于测试一个类的每一个方法都已经满足了方法的功能要求。在开发中,对于自己开发的模块,只有在通过单元测试之后,才能提交到 SVN 库 或者 Git 库。

java中咱们有用过 JUnit 的 单元测试 ,那android 也是基于 java 语言编写的,所以也有个 JUnit的单元测试。

JUnit单元测试的流程

1.使用AndroidStudio进行单元测试,图中是我当前的目录结构,main中Text类是实现计算的实体类,首先在Text中进行编写.编写一个加法的方法.


2.然后在ExampleUnitTest测试类中创建一个TextAdd方法,接下来创建一个要测试的类对象,然后实用类对象调用测试代码得到一个结果,用断言(断言表示为一些布尔表达式,程序员相信在程序中的某个特定点该表达式值为真,可以在任何时候启用和禁用断言验证,因此可以在测试时启用断言而在部署时禁用断言。同样,程序投入运行后,最终用户在遇到问题时可以重新启用断言。使用断言可以创建更稳定、品质更好且不易于出错的代码。当需要在一个值为FALSE时中断当前操作的话,可以使用断言。单元测试必须使用断言(Junit/JunitX))给出预期的得到的值和运行测试代码得到的值进行对比.


3.在TextAdd出点击鼠标右键会有一个提示框,点击Run‘TextAdd()’


4.如上图所示,接下来就可以看到单元测试的结果了

process finished with exit code 0说明,程序正常运行完。


5.接下来我故意给个错误的预期值以便看红色警告效果


java.lang.AssertionError:断言错用来指示一个断言失败的情况

Expected预期

Actual实际

Click to see difference点击查看差异






1 0
原创粉丝点击