Android Junit测试 学习整理

2018-04-09  本文已影响0人  WilburLi

在Android开发过程中,我们往往忽略了单元测试功能, 主要还能还是大家觉得 真机在手,运行调试特别直观。

不过如果我们能够养成单元测试的习惯,相信能更加提升我们应用开发的速度。

当我们创建一个Android Studio项目时,我们会发现项目结构中,多了一个test目录 src/test/java 这个目录,就是AS为了方便我们进行单元测试,而帮我们创建的目录。当然,我们也可以自己进行创建。同时,build.gradle中,还需要添加Junit测试依赖。

1.  dependencies {  
2.  compile fileTree(include: ['*.jar'], dir: 'libs')  
3.  testCompile 'junit:junit:4.12'  
4.  }  

下面,就来创建一个简单的Junit单元测试。

image

首先,我们需要在测试目录,创建一个测试类,这里我们创建的是Calculator运算类

1.  package com.example.a1.myapplication;  

3.  /** 
4.  * Created by 1 on 2017/8/21. 
5.  */  

7.  public class Calculator {  
8.  public double sum(double a, double b){  
9.  return a+b;  
10.  }  

12.  public double substract(double a, double b){  
13.  return a-b;  
14.  }  

16.  public double divide(double a, double b){  
17.  return a/b;  
18.  }  

20.  public double multiply(double a, double b){  
21.  return a*b;  
22.  }  
23.  }  

在该类中,我们写了加减乘除4个方法,然后,我们需要点击类名,右键/goto/test 生成测试类

image

这时,在当前目录下,我们会生成一个CalculatorTest测试类

1.  package com.example.a1.myapplication;  

3.  import org.junit.Before;  
4.  import org.junit.Test;  

6.  import static org.junit.Assert.*;  

8.  /** 
9.  * Created by 1 on 2017/8/21. 
10.  */  
11.  public class CalculatorTest {  
12.  private Calculator mCalculator;  
13.  @Before  
14.  public void setUp() throws Exception {  
15.  mCalculator = new Calculator();  
16.  }  

18.  @Test  
19.  public void sum() throws Exception {  
20.  assertEquals(6d, mCalculator.sum(1d, 5d), 0);  
21.  }  

23.  @Test  
24.  public void substract() throws Exception {  
25.  assertEquals(2d, mCalculator.substract(5d, 4d), 0);  
26.  }  

28.  @Test  
29.  public void divide() throws Exception {  
30.  assertEquals(3d, mCalculator.divide(20d, 5d), 1);  
31.  }  

33.  @Test  
34.  public void multiply() throws Exception {  
35.  assertEquals(12d, mCalculator.multiply(2d, 5d), 1);  
36.  }  

38.  }  

在该类中,setUp方法用来实例化我们的需要测试类,然后,在加减乘除方法调用assertEquals()方法,来计算测试结果,第一个参数,需要填入正确结果,第二个参数为

我们的方法调用,第三个参数为允许误差值。 这里,我们给第一个的参数正确,第二个计算结果错误 第三个计算结果在误差值内,第四个结果没在误差值之外

image

最后,右键点击运行该类。

运行完成后,我们就可以在信息中查看运行结果,

image

谷歌官方DEMO

https://github.com/googlesamples/android-testing

上一篇 下一篇

猜你喜欢

热点阅读