利用JUNIT进行单元测试

原创 2004年03月04日 09:58:00

利用JUNIT进行单元测试<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

杨恒贤(yanghx@neusoft.com

 

1.  当进行单元测试时,我们应该利用回归测试方法。

2.  Junit测试是程序员测试,即所谓白盒测试,因为程序员知道被测试的软件如何(How)完成功能和完成什么样(What)的功能。

3.  Junit本质上是一套框架,即开发者制定了一套条条框框,遵循这此条条框框要求编写测试代码,如继承某个类,实现某个接口,就可以用Junit进行自动测试了。

配置

Eclipse2.11

ftp://192.168.213.48/yanghx_tools

JUNIT3.81

ftp://192.168.213.48/yanghx_tools

 

Eclipse2.11自带JUNIT插件,并且已经配置好了

JUINT3.81配置

测试

1.    在环境变量上增加JUNIT_HOME,他的值就是JUNIT目录

2.    在环境变量Path增加%JUNIT_HOME%/junit.jar

3.    运行下面脚本

 

set classpath=%java_home%/lib/tools.jar;%junit_home%;%junit_home%/junit.jar

java junit.swingui.TestRunner junit.samples.AllTests

pause

<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />CSDN_Dev_Image_2004-3-31126380.jpg

出现这样的画面就说明JUNIT配置成功

下面我们利用Eclipse2.11进行JUNIT测试案例设计

我们作一个HelloWorld的测试

测试方法:

1.    HelloWorld.sayHello()是否执行正常,并且结果也符合要求

2.    HelloWorld.add()方法是否与我们预期一样执行

 

根据测试方案,我们编写测试案例

 

 

 

 

 

/*

 * Created on 2004-2-9

 *

 * To change the template for this generated file go to

 * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments

 */

package com.yjsoft.app;

 

/**

 * @author yanghx2004

 *

 * To change the template for this generated type comment go to

 * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments

 */

public class HelloWorld {

 

    public static void main(String[] args) {

    }

    public String sayHello(){

       return "Hello world.";

    }

    public int add(int nA,int nB){

       return nA+nB;

    }

}

 

 

 

 

 

开始为此编写TestCase

1.    先设置属性,设置Libraries,将Junit.Jar加入

CSDN_Dev_Image_2004-3-31126382.jpg

2.    创建TestCase测试工程

CSDN_Dev_Image_2004-3-31126384.jpg

3.    创建测试案例类

CSDN_Dev_Image_2004-3-31126386.jpg

4.    选择要测试的方法

CSDN_Dev_Image_2004-3-31126388.jpg

5.    编写测试代码

/*

 * Created on 2004-2-9

 *

 * To change the template for this generated file go to

 * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments

 */

package com.yjsoft.test;

 

import junit.framework.Assert;

import junit.framework.TestCase;

import com.yjsoft.app.HelloWorld;

 

/**

 * @author yanghx2004

 *

 * To change the template for this generated type comment go to

 * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments

 */

public class HelloWorldTest extends TestCase {

    /**

     * Constructor for HelloWorldTest.

     * @param arg0

     */

    public HelloWorldTest(String arg0) {

       super(arg0);

    }

 

    public static void main(String[] args) {

       junit.swingui.TestRunner.run(HelloWorldTest.class);

    }

    public void testSayHello() {

       HelloWorld world=new HelloWorld();

       //Assert.assertNull(world);

       assertEquals(world.sayHello(),"Hello World");

    }

    public void testAdd() {

       HelloWorld world=new HelloWorld();

       //Assert.assertNull(world);

       Assert.assertEquals(world.add(1,2),3);

    }

}

 

6.    测试

CSDN_Dev_Image_2004-3-311263810.jpg

发现失败,方法为sayHello(),看看具体信息“应为Hello word. 却发现 Hello World

修改测试函数

assertEquals(world.sayHello(),"Hello world.");

7.    测试,通过

8.    CSDN_Dev_Image_2004-3-311263812.jpg

 

关于JUNIT简单使用就介绍这么多, 关于用JUNIT来模拟请求进行JSP测试,我下次讲解。这要涉及到HttpUnit单元。

IDEA中利用JUnit进行单元测试

转载来源http://blog.csdn.net/w_basketboy24/article/details/10078589 打开IntelliJ IDEA工具,Alt+Ctrl+S,弹出窗口如下...
  • shanshan_blog
  • shanshan_blog
  • 2017年03月31日 19:46
  • 902

在Eclipse中使用JUnit4进行单元测试(高级篇)

通过前 2 篇文章,您一定对 JUnit 有了一个基本的了解,下面我们来探讨一下 JUnit4 中一些高级特性。一、 高级 Fixture上一篇文章中我们介绍了两个 Fixture 标注,分别...
  • huangjin0507
  • huangjin0507
  • 2016年07月05日 16:06
  • 1940

Spring结合junit进行单元测试

Spring结合junit进行单元测试 在进行单元的测试的时候比较头疼的就是,如果使用了spring,那么需要手动的进行对类进行初始化,比如最常见的service和service的实现类servic...
  • wild46cat
  • wild46cat
  • 2016年10月26日 22:19
  • 2055

eclipse上使用JUnit框架进行单元测试

测试对于保证软件开发质量有着非常重要的作用,单元测试更是必不可少,JUnit是一个非常强大的单元测试包,可以对一个/多个类的单个/多个方法测试,还可以将不同的TestCase组合成TestSuit,使...
  • sunzhenhua0608
  • sunzhenhua0608
  • 2013年04月27日 11:13
  • 4204

eclipse JUnit4单元测试步骤

本文绝大部分内容引自这篇文章: http://www.devx.com/Java/Article/31983/0/page/1 我们在编写大型程序的时候,需要写成千上万个方法或函数,这些函...
  • superdog007
  • superdog007
  • 2014年04月12日 09:57
  • 4548

在Eclipse中使用JUnit4进行单元测试(实例篇)

四、实例总结 1. 参数化测试 有时一个测试方法,不同的参数值会产生不同的结果,那么我们为了测试全面,会把多个参数值都写出来并一一断言测试,这样有时难免费时费力,这是我们便可以采用参数化测...
  • dreamjava9213
  • dreamjava9213
  • 2014年12月15日 23:01
  • 1940

使用junit4+NekoHTML对页面进行单元测试

首先科普一下NekoHTML。 NekoHTML是一个简单地HTML扫描器和标签补偿器(tag balancer),使得程序能解析HTML文档并用标准的XML接口来访问其中的信息。这个解析器能投扫描H...
  • outsider_lcg
  • outsider_lcg
  • 2016年06月22日 10:41
  • 630

Junit 单元测试在 intelliJ IDEA 中的应用

Junit在intelliJ IDEA
  • antony9118
  • antony9118
  • 2016年06月22日 17:59
  • 2310

使用Junit对Android应用进行单元测试

使用Junit对Android应用进行单元测试   发布于2013-5-24   在本文中,你将会学习到如何在Ecl...
  • yule12345
  • yule12345
  • 2015年10月30日 17:17
  • 544

利用Junit进行单元测试

 测试的重要性大家都知道,但如何使测试更加准确和全面,并且独立于项目之外并且避免硬编码,JUnit给了我们一个很好的解决方案。 一、引子     首先假设有一个项目类SimpleObject...
  • happystarcat
  • happystarcat
  • 2013年11月29日 10:33
  • 746
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:利用JUNIT进行单元测试
举报原因:
原因补充:

(最多只允许输入30个字)