JSP空间欢迎您!专业JSP虚拟主机提供商!!!
返回首页
当前位置: 主页 > JSP教程 >

建议用JUNIT建立测试类

时间:2011-01-30 12:05来源:佚名 编辑:www.jspzg.com 点击: 次   字体大小:[ ]

当前阅读得是【JSP教程】之建议用JUNIT建立测试类!
【关键字信息】:建议,议用,用J,JU,UN,NI,IT,
JUNIT Getting Started

概念:
关于JUNIT的概念可以参见Thinking in Java 2的第一章里的Extreme programming

以junit3.5为例
将classpath指向junit.jar

HelloWorld:

在junit3.5下(或者其他地方)建立一个工作目录mypro,然后建立项目目录hello
其中有文件:HelloWorld.java

package mypro.hello;

public class HelloWorld{
    public String sayHello(){
        return "Hello World";
        }

public static void main(String[] args){
    HelloWorld world=new HelloWorld();
    System.out.println(world.sayHello());
    }
}

编译,运行.

现在写测试类,来测试HelloWorld类里的sayHello方法
//在hello目录里建立一个test目录用来放测试类,其中有HelloWorldTest.java

package mypro.hello;

//import mypro.hello.*;         推荐测试类和原来的被测试类(HelloWorld)同包
import junit.framework.*;

public class HelloWorldTest extends TestCase{
    public HelloWorldTest(String name){
        super(name);
        }

    public static void main(String args[]){
        junit.textui.TestRunner.run(HelloWorldTest.class);
        }

    public void testSayHello(){
        HelloWorld world=new HelloWorld();
        assert(world!=null);                                          //当结果是-1时,assert将报错
        assertEquals("Hello World",world.sayHello());
        }
}


HelloWorldTest继承了TestCase类,写法固定,main可以不要.
主要是testSayHello()实现了对SayHello方法的测试.

Assert,的参数是-1时junit会报错,assertEquals的参数不匹配时,junit会报错.详见JUNIT的API文档.
编译后,可以java HelloWorldTest来得到结果   //因为有main
更经常的运行方式: java  junit.swingui.TestRunner  mypro.hello.HelloWorldTest   //图形界面
                             java junit.textui.TestRunner mypro.hello.HelloWorldTest           //字符界面


制造一个错误:
把HelloWorld里的return “Hello World” 改成return “Hell0 World”
编译后

运行测试,看到结果报告错误.




更进一步执行多个测试,一个测试成为Test Case,而一组Test Case构成Test suite
看junit里money例子和AllTests.java文件.
    
注意事项:
   1.将测试类和被测试类放在同一个目录里(即同包之内)将会是很方便的.
   2.命名规则:一般被测试类写作XXXXTest,而其中的方法写作testXXX
标签:
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
【郑重声明】JSP中国刊载此文不代表同意其说法或描述,仅为提供更多信息,也不构成任何投资或其他建议。本网站有部分文章是由网友自由上传。对于此类文章本站仅提供交流平台,不为其版权负责。如果您发现本网站上有侵犯您的知识产权的文章,请联系我们,我们将及时删除,谢谢!
推荐内容