【java】单元测试(一)

作者: _夏兮 | 来源:发表于2018-01-06 20:05 被阅读77次

视频请看我的公众号,第一次录制小视频,希望大家多多给意见。

视频地址,精彩内容请关注文末公众号,么么哒

什么是单元测试?

单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证。比如我们可以测试一个类,或者一个类中的一个方法。

单元测试有什么好处请看一下百度百科中归纳的四条:

1、它是一种验证行为。

程序中的每一项功能都是测试来验证它的正确性。它为以后的开发提供支援。就算是开发后期,我们也可以轻松的增加功能或更改程序结构,而不用担心这个过程中会破坏重要的东西。而且它为代码的重构提供了保障。这样,我们就可以更自由的对程序进行改进。

2、它是一种设计行为。

编写单元测试将使我们从调用者观察、思考。特别是先写测试(test-first),迫使我们把程序设计成易于调用和可测试的,即迫使我们解除软件中的耦合。

3、它是一种编写文档的行为。

单元测试是一种无价的文档,它是展示函数或类如何使用的最佳文档。这份文档是可编译、可运行的,并且它保持最新,永远与代码同步。

4、它具有回归性。

自动化的单元测试避免了代码出现回归,编写完成之后,可以随时随地的快速运行测试。

贴两段代码吧。

package com.testdev.unittestdemo;

public class Calculator {

    public int add(int a, int b){

        return a + b;

    }

    public int subtraction(int a, int b){

        return a - b;

    }

    public int multiply(int a, int b){

        return a * b;

    }

    public int divide(int a, int b) throws Exception{

        if(0 == b){

            throw new Exception("除数不能为0");

        }

        return a / b;

    }

}

测试代码:

单元测试框架:testng

package com.testdev.unittestdemo;

import org.testng.annotations.Test;

import static org.testng.Assert.*;

public class CalculatorTest {

    Calculator calculator;

    @org.testng.annotations.BeforeMethod

    public void setUp() throws Exception {

        calculator = new Calculator();

    }

    @org.testng.annotations.AfterMethod

    public void tearDown() throws Exception {

    }

    @Test

    public void test_add_1_2(){

        int addres = calculator.add(1,2);

        assertEquals(3,addres);

    }

    @Test

    public void test_sub_1_2(){

        int subres = calculator.subtraction(1,2);

        assertEquals(-1,subres);

    }

    @Test

    public void test_mul_1_2(){

        int mulres = calculator.multiply(1,2);

        assertEquals(2,mulres);

    }

    @Test

    public void test_div_1_0() throws Exception{

        int divres = calculator.divide(1,0);

        assertEquals(0,divres);

    }

}


更多精彩内容

相关文章

  • 单元测试-mockito+powermock

    单元测试--Java 使用mockito+powermock进行java单元测试 实例 如下一个正常业务代码,接下...

  • 单元测试-JUnit

    java单元测试是最小的功能单元测试代码, 单元测试就是针对单个java方法的测试。相比较于main方法进行测试,...

  • Android单元测试 - 如何开始?

    回顾: 《谈谈为什么写单元测试》 基本单元测试框架 Java单元测试框架:Junit、Mockito、Powerm...

  • Android单元测试

    本文主要内容 1、单元测试介绍 2、java单元测试 3、android单元测试 4、常用方法介绍 1、单元测试介...

  • 5.自动化测试工具

    单元测试工具 JUnit:Java单元测试 NUnit CppUnit:C++单元测试 性能测试工具 LoadRu...

  • Mockito使用介绍

    Mockito是用于写Java的单元测试框架,在单元测试中使用Mockito来创建和模拟(Mock)假的Java对...

  • 单元测试框架之unittest简介

    一、单元测试的含义 unittest单元测试框架的设计灵感来源于Junit(Java语言的单元测试框架),它与其他...

  • Instrumentation

    1、Instrumentation单元测试框架,基于Junit;Junit是java单元测试根本 2、想要进行自动...

  • Jmokit

    # Junit+Jmokit单元测试 标签(空格分隔):java单元测试 --- > 原理:mock测试就是在测试...

  • 科普文丨Java 单元测试相关概念理清

    对于从业Java的小伙伴来说,“单元测试”这个词你一定不陌生,如果你想要学习 Java 单元测试,下面的内容你一定...

网友评论

    本文标题:【java】单元测试(一)

    本文链接:https://www.haomeiwen.com/subject/bmdenxtx.html