我的理解:
什么是单元测试?
举个例子,假如电视机出厂前需要测试,电视机由很多元件组成,那么在生产每一个元件的时候会对每个元件分别进行测试,大大减少了出现故障的机率。在Android中,一个类由很多方法组成,我们就对每个方法进行测试。习惯做单元测试,不仅仅可以避免出现不必要的bug,还能锻炼对逻辑方法的抽取能力,提升代码质量。
单元测试不是集成测试,只是测试一个方法。举个例子,比如登录流程,从用户输入,到点击按钮,到请求服务器,再到更新UI,整套流程下来叫做集成测试,并不是单元测试。
下面的例子只是演示了测试有返回值的方法,还有没有返回值的方法,涉及到mock的概念。(继续学习)
怎么测试?
假如有个方法需要测试
public class Calculator {
public int add(int one, int another) {
//为了简单起见,暂不考虑溢出等情况。
return one + another;
}
}
测试该方法
public class CalculatorTest {
public void testAdd() throws Exception {
Calculator calculator = new Calculator();
int sum = calculator.add(1, 2);
Assert.assertEquals(3, sum);
}
}
一般来说,一个方法对应的测试方法主要分为3部分,以上面的测试方法为例:
- setup。一般是new出你要测试的那个类,以及其他一些前提条件的设置:Calculator calculator = new Calculator();
- 执行操作。一般是调用你要测试的那个方法,获得运行结果:int sum = calculator.add(1, 2);
- 验证结果。验证得到的结果跟预期中是一样的:Assert.assertEquals(3, sum);.
来源:CSDN
作者:csdn1225987336
链接:https://blog.csdn.net/csdn1225987336/article/details/103477670