junit 初步认识
junit 初步认识
战地春梦 发表于2年前
junit 初步认识
  • 发表于 2年前
  • 阅读 36
  • 收藏 1
  • 点赞 0
  • 评论 0

腾讯云 新注册用户 域名抢购1元起>>>   

junit4.x

(1)、使用junit4.x版本进行单元测试时,不用测试类继承TestCase父类,因为,junit4.x全面引入了Annotation来执行我们编写的测试。

(2)、junit4.x版本,引用了注解的方式,进行单元测试;

(3)、junit4.x版本我们常用的注解:

A、@Before 注解:与junit3.x中的setUp()方法功能一样,在每个测试方法之前执行;

B、@After 注解:与junit3.x中的tearDown()方法功能一样,在每个测试方法之后执行;

C、@BeforeClass 注解:在所有方法执行之前执行;

D、@AfterClass 注解:在所有方法执行之后执行;

E、@Test(timeout = xxx) 注解:设置当前测试方法在一定时间内运行完,否则返回错误;

F、@Test(expected = Exception.class) 注解:设置被测试的方法是否有异常抛出。抛出异常类型为:Exception.class;

G、@Ignore 注解:注释掉一个测试方法或一个类,被注释的方法或类,不会被执行。

package test;



import java.util.Arrays;

import java.util.Collection;



import org.junit.After;

import org.junit.AfterClass;

import org.junit.Assert;

import org.junit.Before;

import org.junit.BeforeClass;

import org.junit.Test;

import org.junit.runner.RunWith;

import org.junit.runners.Parameterized;

import org.junit.runners.Parameterized.Parameters;



//(1)步骤一:测试类指定特殊的运行器org.junit.runners.Parameterized  

@RunWith(Parameterized.class)

public class TestT1 {

 

 t1 t1;

 // (2)步骤二:为测试类声明几个变量,分别用于存放期望值和测试所用数据。

 int x, y, z,expected;

 // (3)步骤三:为测试类声明一个带有参数的公共构造函数,并在其中为第二个环节中声明的几个变量赋值。

 public TestT1(int x, int y, int z,int expected) {

 System.out.println("初始化");

 this.x = x;

 this.y = y;

 this.z = z;

 this.expected = expected;

 }



 // (4)步骤四:为测试类声明一个使用注解 org.junit.runners.Parameterized.Parameters 修饰的,返回值为

 // java.util.Collection 的公共静态方法,并在此方法中初始化所有需要测试的参数对。

 @Parameters

 public static Collection Data() {



 

 }

 

 @BeforeClass

 // 在所有方法执行之前执行

 public static void globalInit() {

 //System.out.println("init all method...");

 }



 @AfterClass

 // 在所有方法执行之后执行

 public static void globalDestory() {

 //System.out.println("destory all method...");

 }

 @Before

 // 在每个测试方法之前执行

 public void setUp() {

 //System.out.println("start setUp method");

 t1=new t1();

 }



 @After

 // 在每个测试方法之后执行

 public void tearDown() {

 //System.out.println("end method");

 }

 

 @Test

 public void testWork1() {

 

 int act = t1.work(x, y, z);

 Assert.assertEquals(expected, act);

 }



 @Test

 public void testWork2() {

 int act = t1.work(x, y, z);

 Assert.assertEquals(expected, act);

 }



 @Test

 public void testWork3() {

 int act = t1.work(x, y, z);

 Assert.assertEquals(expected, act);

 }



 @Test(timeout = 1000)

 public void testWork4() {

 int act = t1.work(x, y, z);

 Assert.assertEquals(expected, act);

 }

}

 

共有 人打赏支持
粉丝 5
博文 33
码字总数 24598
×
战地春梦
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: