java 使用idea进行单元测试

测试在软件生命周期中的重要性,不用我多说想必大家也都非常清楚。软件测试有很多分类,从测试的方法上可分为:黑盒测试、白盒测试、静态测试、动态测试等;从软件开发的过程分为:单元测试、集成测试、确认测试、验收、回归等。

在众多的分类中,与开发人员关系最紧密的莫过于单元测试了。像其他种类的测试基本上都是由专门的测试人员来完成,只有单元测试是完全由开发人员来完成的。那么今天我们就来说说什么是单元测试,为什么要进行单元测试,以及如更好的何进行单元测试。

什么是单元测试?

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

为什么要进行单元测试?

为什么要进行单元测试?说白了就是单元测试有什么好处,其实测试的好处无非就是减少bug、提高代码质量、使代码易于维护等。单元测试有什么好处请看一下百度百科中归纳的四条:

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

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

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

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

选中需要测试的类,快捷键CTRL + SHIFT + T,

setUp()函数为每一个测试函数运行前都要运行的函数,tearDown()含糊为每一个测试函数运行后都要运行的函数。
package com;

/***/
public class dy {
    public String sayHello(){
        return "hello";
    }
}
package com;

import static org.junit.Assert.assertEquals;
import org.junit.Before;
import org.junit.Test;

/***/
public class dyTest {
    private dy myClass;

    @Before
    public void setUp() throws Exception {
        myClass = new dy();
    }

    @Test
    public void sayHello() throws Exception {
        assertEquals("hello",myClass.sayHello());
    }

}
时间: 2024-10-10 00:33:16

java 使用idea进行单元测试的相关文章

Java中的Mongodb单元测试

如何进行Mongodb测试? 我们在java中使用Mongodb作为数据库进行存储的时候,怎么样对于进行测试呢?一种可能直接的方式就是在setUp中getDB,然后在tearDown里面dropDatabase.这样的方式相对来说比较慢.一种更好的方式就是使用fake的数据库,比如embedded的Mongodb用于测试.http://xunitpatterns.com/Test%20Double.html 我们这里使用的是https://github.com/flapdoodle-oss/de

复利计算5.0(改成Java版本)与 单元测试

//由于C语言版本不方便单元测试,所以改成了java版本,部分代码如下:import java.util.Scanner; public class FuLi{ public static void main(String[] args) { Scanner scanner=new Scanner(System.in); System.out.println("\n复利计算按 1\n单利计算按 2\n计算筹集的养老金按 3\n计算时间按 4\n计算您要的利率按 5\n计算本利和投资按 6\n计算

Java使用JUnit做单元测试

一.类的定义: 首先创建一个叫F的项目,在项目下定义Triangle类,判断三角形 二.JUnit项目引入 1.将JUnit单元测试包引入这个项目:在该项目上右击点“Properties“生成如下图: 2首先选“java Build  Path”,再选“libraries”,右边再点击“Add Library...” 3在新弹出的对话框中选中“JUnit”,点Next,在对话框中选Junit4,点“Finish”,JUnit4软件包就被包含进F项目了 三. 生成JUnit测试框架,在MYEcli

java 字符串拼接的单元测试

整体内容介绍 本文分为几个部分: * String.StringBuffer.StringBuilder的对比 * 字符串拼接方式的对比 使用到的内容: * Junit4单元测试 * slf4j的日志框架 String.StringBuffer.StringBuilder的对比 对于这三者使用的场景做如下概括(参考:<编写搞质量代码:改善java程序的151个建议>): String:在字符串不经常变化的场景中可以使用String类,如:常量的声明.少量的变量运算等. StringBuffer

Java、JavaWeb中单元测试用到的测试方法

写出的代码做单元测试时,一定要记住从三个方面出发:1.成功  2.异常  3 逻辑错误(即没有异常也可能程序运行出最后结果,可是呢?呵呵).这就是在做测试时我要牢记的三个方面,同时思维要严谨也即做事要认真,切记.切记.切记. 测试方法有很多,主要保存下 assertThat用法,以备后面的学习. References: [1] http://langgufu.iteye.com/blog/1893927

主流的单元测试工具之-JAVA新特性-Annotation 写作者:组长 梁伟龙

1:什么是Annotation?Annotation,即“@xxx”(如@Before,@After,@Test(timeout=xxx),@ignore),这个单词一般是翻译成元数据,是JAVA的一个新特性. 主流的单元测试工具之-JAVA新特性-Annotation - groupthreetogether - group博客 2:元数据的简单介绍: @Before:使用了该元数据的方法在每个测试方法执行之前都要执行一次. @After:使用了该元数据的方法在每个测试方法执行之后要执行一次.

主流的单元测试工具之-JAVA新特性-Annotation

写作者:组长 梁伟龙 1:什么是Annotation? Annotation,即“@xxx”(如@Before,@After,@Test(timeout=xxx),@ignore),这个单词一般是翻译成元数据,是JAVA的一个新特性. 2:元数据的简单介绍: @Before:使用了该元数据的方法在每个测试方法执行之前都要执行一次. @After:使用了该元数据的方法在每个测试方法执行之后要执行一次. 注意:@Before和@After标示的方法只能各有一个.这个相当于取代了JUnit以前版本中的

Java 单元测试及JUnit的使用

Java 单元测试: 单元测试是开发者编写的一小段代码,用于检测被测代码的一个很小的.很明确的功能是否正确.  单元测试的方法: 人工静态分析:人工阅读检测代码 自动静态分析:使用代码复查工具检查 自动动态测试:用工具自动生成测试用例并执行被测程序 人工动态测试:人工设定程序的输入和预期输出,执行程序.    Junit 单元测试: 它是人工动态测试 支持语言C++.Java,支持的IDE: Eclipse 功能:用单独的classloader来运行每个单元测试 标准的资源初始化和回收方式(se

单元测试简介和使用

1. 单元测试的作用: 许多开发者都有个习惯,常常不乐意去写个简单的单元测试程序来验证自己的代码.对自己的程序一直非常有自信,或存在侥幸心理每次运行通过后就直接扔给测试组测试了.然而每次测试组的BUG提交过来后就会发现自己的程序还存在许多没有想到的漏洞.但是每次修改好BUG以后还是怀着侥幸心理,认为这次不会有bug了.然后又一次自信地提交,结果又败了.其实在项目开发的过程中,实际编程的时间并不是特别多,而真正耗时的往往是调试和修改阶段.因此单元测试的覆盖是很有必要的. 一般认为,单元测试有四种作