您的位置:软件测试 > 开源软件测试 > 开源单元测试工具 > TestNG
TestNG与JUnit的区别和配置 总结
作者:网络转载 发布时间:[ 2013/12/13 10:14:09 ] 推荐标签:

工作中遇到TestNG和JUnit 2种写测试用例的插件,都有不同的使用方法
目前是在eclipse工具+Selenium
我们创建java project成功后,假设创建Sample project,包名package.com.test
Demo.java文件中,写上
package com.test;

public class Sample {
    public int abs(int n){
        return (n>=0)?n:(-n);
      
    }
    public static void main(String[] args) throws Exception{
        Sample s= new Sample();
        s.abs(-5);       
    }

}

1. 使用TestNG
安装插件,这个网上很多资料不说了

创建TestNG的class,然后在工程右键build path-->add extral jars,加入testng-xxx -jar包,文件放置的位置在eclipse安装目录下xxx/eclipse/plugins/org.testngxxx/lib/testng-jdkxxx.jar相关包
下面是NewTest.java文件的内容

package com.testng.test;

import org.testng.annotations.Test;

import org.testng.annotations.BeforeTest;
import org.testng.annotations.AfterTest;

import static org.junit.Assert.*;
import org.junit.*;

//引入要测试的类
import com.test.Sample;

public class NewTest {
    private Sample sTest;
 @Test
  public void testAbs() {
      assertEquals(sTest.abs(-5),5);
  }
 @Test
  public void a(){
      assertEquals(sTest.abs(0));
  }
  @BeforeTest
  public void beforeTest() {
      sTest =new Sample();
    
  }
  @AfterTest
  public void afterTest() {
  }
}
文件右键 run-->run as "TestNG Test"
可以看到运行的结果了,多少成功,失败
TestNG 执行的顺序是
setup()
testfunction()[testng在测试用例时,查看@Test annonation信息,所以加注释很重要]
teardown()
用例执行完,会有testcase失败和成功的信息
这里我没有用testng.xml,这是我下一步学习的知识

2. 使用JUnit
我们使用maven创建工程,可以打开指定工程pom.xml文件
看到这样的信息
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.7</version>
      <scope>test</scope>
    </dependency>
说明JUnit查看对应的包已经存在了,具体他们存放在xxx/repo/junit/junit version/各种jar或者文件

junit version有2个版本,一个4.7 一个3.8.1版本之间有个不同
主要是setup() teardown()在3.8.1上 在每个testcase之前都会调用setup()和teardown(),执行次数和执行testcase次数一致
主要是setup() teardown()在4.7上 在所有testcase之前都会调用setup()和teardown(),执行次数各为一次
接着Sample project工程说,

右键左边工程的sample-->new-->JUnit Testcase, 创建测试类,

点击ok,创建成功了,然后在工程右键build path-->add extral jars,加入junit 4.7 jar包

打开com.junit.test类的TestAba.java文件
下面是怎么写TestCase了
package com.junit.test;

import static org.junit.Assert.*;
import org.junit.*;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;
//引入需要测试的类
import com.test.Sample;

public class TestAbs {
   private Sample sTest;
    @Before
    public void setUp() throws Exception {
       sTest = new Sample();
    }

    @After
    public void tearDown() throws Exception {
    }

    @Test
    public voidtest001() {
        //fail("Not yet implemented");
        assertEquals(sTest.abs(-5),5);  
    }
}

文件右键 run-->run as "JUnit Test"
可以看到运行的结果了,多少成功,失败
JUnit执行的顺序是
setUp()
testXXX() //junit只寻找test开始的字段来执行
tearDown()

软件测试工具 | 联系我们 | 投诉建议 | 诚聘英才 | 申请使用列表 | 网站地图
沪ICP备07036474 2003-2017 版权所有 上海泽众软件科技有限公司 Shanghai ZeZhong Software Co.,Ltd