Android Studio中进行单元测试

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qwe380948730/article/details/77450528

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

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

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

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

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




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

package com.example.a1.myapplication;

/**
 * Created by 1 on 2017/8/21.
 */

public class Calculator {
    public double sum(double a, double b){
        return a+b;
    }

    public double substract(double a, double b){
        return a-b;
    }

    public double divide(double a, double b){
        return a/b;
    }

    public double multiply(double a, double b){
        return a*b;
    }
}
在该类中,我们写了加减乘除4个方法,然后,我们需要点击类名,右键/goto/test 生成测试类


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

package com.example.a1.myapplication;

import org.junit.Before;
import org.junit.Test;

import static org.junit.Assert.*;

/**
 * Created by 1 on 2017/8/21.
 */
public class CalculatorTest {
    private Calculator mCalculator;
    @Before
    public void setUp() throws Exception {
        mCalculator = new Calculator();
    }

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

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

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

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

}



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

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


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

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


展开阅读全文

没有更多推荐了,返回首页