JUnit4使用教程-快速入门

时间:2022-12-08 05:06:28

 序言

       大学刚学java的时候就听说过JUnit了,单元测试框架,很好用的测试框架,JUnit测试框架将测试更加便捷和容易,编写测试代码也是简单、明了,功能强大。今天我给大家简单分享一下最新JUnit4的使用,几分钟入门!

导入jar包

      在集成开发环境中导入相应jar包:junit-4.12.jar、hamcrest-core-1.3.rc2.jar、hamcrest-library-1.3.rc2.jar。如果只导入第一个jar的话就不能启动测试程序会报错,报错及几个包的关系详见我的博客:JUnit4单元测试报错。在此,给大家提供一下这几个jar包的免费下载链接:

junit-4.12.jar下载

hamcrest-library-1.3.rc2.jar下载

hamcrest-core-1.3.rc2.jar下载

       导入方法看如下截图就明白了:

JUnit4使用教程-快速入门

 

新建测试用例

       右击包名,点击新建,或者新建里的others,选择JUnit test case,如下图所示:

JUnit4使用教程-快速入门

 

 

接下来,给测试类起名字和选择要测试的类,如下图所示:

JUnit4使用教程-快速入门

 

然后点击【Next】,选择要被测试类中的测试方法,如下图所示:

 

JUnit4使用教程-快速入门

最后新建完成,如下(第一个方法是生成的方法,后边几个都是我自己手动写上去的):

package JUnitTest;

import static org.junit.Assert.*;

import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Ignore;
import org.junit.Test;

public class TestJava {

@Test
public void testMain() {
fail("Not yet implemented");
}

@Test
public void testTest() {
System.out.println("@Test");//调用自己要测试的方法
}

@Test
public void testAssert() {
assertEquals("chenleixing","chenlei");
}

@Test(timeout=1)
public void testTimeout() {
System.out.println("超时测试");
}

@Before
public void testBefore(){
System.out.println("@Before");
}

@BeforeClass
public static void testBeforeClass(){//必须为静态方法
System.out.println("@BeforeClass");
}

@After
public void testAfter(){
System.out.println("@After");
}

@AfterClass
public static void testAfterClass(){//必须为静态方法
System.out.println("@AfterClass");
}

@Ignore
public void testIgnore(){
System.out.println("@Ignore");
}
}


JUnit4注解解释

1. @Test : 测试方法,测试程序会运行的方法,后边可以跟参数代表不同的测试,如(expected=XXException.class) 异常测试,(timeout=xxx)超时测试
2. @Ignore : 被忽略的测试方法
3. @Before: 每一个测试方法之前运行
4. @After : 每一个测试方法之后运行
5. @BeforeClass: 所有测试开始之前运行
6. @AfterClass: 所有测试结束之后运行
fail方法是指测试失败

assertEquals测试2个参数是否相等,具体参考相应API

更多方法可参考相应API文档(博文末尾分享下载连接给大家)

运行测试用例

       把自己的测试代码写在@Test注解后者其他注解的方法里边,点击运行新建的测试用例,结果如下:

JUnit4使用教程-快速入门

 

带差号的是说明测试失败的,testMain()和testAssert()肯定会失败,对号的是测试成功的。

控制台输出的结果如下:

<span style="font-size:18px;">@BeforeClass
@Before
超时测试
@After
@Before
@After
@Before
@Test
@After
@Before
@After
@AfterClass</span>

免费下载jar包和文档

junit-4.12.jar下载

hamcrest-library-1.3.rc2.jar下载

hamcrest-core-1.3.rc2.jar下载

junit4API.chm.html下载

JUnit4高级篇及更加的详细深入的使用,请参考:JUnit4高级篇-由浅入深

转载请注明—作者:Java我人生(陈磊兴)   原文出处:http://blog.csdn.net/chenleixing/article/details/44259453