TestNG运行JUnit测试

现在,您已经了解了TestNG和它的各种测试,如果现在担心如何重构现有的JUnit代码,那就没有必要,使用TestNG提供了一种方法,从JUnit和TestNG按照自己的节奏。也可以使用TestNG执行现有JUnit测试用例。
TestNG可以自动识别和运行JUnit测试,所以你可以使用TestNG运行所有的测试,并编写新的测试使用TestNG。所有你必须做的就是把JUnit的库TestNG的类路径上,它可以发现并使用JUnit类,改变测试运行从JUnit和TestNG Ant中,然后运行TestNG的“mixed”模式。这种方式可以在同一个项目中所有的测试,即使是在同一个包中,并开始使用TestNG。这种方法还可以转换您现有的JUnit测试到TestNG。
让我们来看看下面的例子中,并尝试了上述功能:
创建JUnit测试用例类
创建一个Java类,这是一个JUnit测试类, TestJunit.java 在 C:\ > TestNG_WORKSPACE
import org.junit.Test;
import static org.testng.AssertJUnit.assertEquals;

public class TestJunit {
@Test
public void testAdd() {
String str= "Junit testing using TestNG";
assertEquals("Junit testing using TestNG",str);
}
}
现在,让我们来编写 testng.xml 在 C:\ > TestNG_WORKSPACE 应该包涵 <suite> 标签如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Converted JUnit suite" >
<test name="JUnitTests" junit="true">
<classes>
<class name="TestJunit" />
</classes>
</test>
</suite>

要执行JUnit测试用例定义属性 junit="true" 如上面的xml文件中. JUnit测试用例类TestJunit定义在类名。
JUnit 4中,TestNG将使用 org.junit.runner.JUnitCore 运行测试。
所有Java类编译使用javac。
C:\TestNG_WORKSPACE>javac TestJunit.java
现在运行testng.xml,这将运行TestNG的JUnit测试用例。

C:\TestNG_WORKSPACE>java -cp "C:\TestNG_WORKSPACE:C:\TestNG_WORKSPACE\lib\junit-4.11.jar" org.testng.TestNG testng.xml
在这里,我已经放在了 junit-4.11.jar 在 C:\TestNG_WORKSPACE\lib\junit-4.11.jar下面.
验证输出。
===============================================
Converted JUnit suite

Total tests run: 1, Failures: 0, Skips: 0
===============================================

时间: 2024-10-19 21:15:24

TestNG运行JUnit测试的相关文章

MyEclipse junit测试问题initializationError

问题的情况如上. 问题的解决方法居然是:选中函数的整行,而不是只选中函数名,如下图选中运行junit测试. TestMySQL.testDriverMannager1Unrooted TestsinitializationError(org.junit.runner.manipulation.Filter)java.lang.Exception: No tests found matching Method testDriverMannager1(TestMySQL.TestMySQL) fro

Java Junit测试框架

Java    Junit测试框架 1.相关概念 ? JUnit:是一个开发源代码的Java测试框架,用于编写和运行可重复的测试.它是用于单元测试框架体系xUnit的一个实例(用于java语言).主要用于白盒测试,回归测试. ? 白盒测试:把测试对象看作一个打开的盒子,程序内部的逻辑结构和其他信息对测试人 员是公开的. ? 回归测试:软件或环境的修复或更正后的再测试,自动测试工具对这类测试尤其有用. ? 单元测试:最小粒度的测试,以测试某个功能或代码块.一般由程序员来做,因为它需要知道内部程序设

Java的JUnit 测试包进行单元测试

最近看一个项目的代码,看到该项目对于每一个类都会有一个测试程序.因为我需要用到项目中的某部分代码做测试,想着可不可以采用同样的办法,为该部分写一个测试程序.但是,后面发现不可以,因为JUnit测试包需要有类似eclipse或者maven等开发环境下才能使用(仅仅是我的理解),因为需要下载JUnit测试包.所以,最后的实现是重新写了一个含main()函数的类,修改pom.xml中的关于main()函数入口. 我的理解应该是,JUnit为测试写了一个普适的接口,比如main()函数接口等,客户在使用

复利计算器(软件工程)及Junit测试———郭志豪

计算:1.本金为100万,利率或者投资回报率为3%,投资年限为30年,那么,30年后所获得的利息收入:按复利计算公式来计算就是:1,000,000×(1+3%)^30 客户提出: 2.如果按照单利计算,本息又是多少呢? 3.假如30年之后要筹措到300万元的养老金,平均的年回报率是3%,那么,现在必须投入的本金是多少呢? 4.利率这么低,复利计算收益都这么厉害了,如果拿100万元去买年报酬率10%的股票,若一切顺利,过多长时间,100万元就变成200万元呢? 5.如果我希望在十年内将100万元变

【Java 语言生态篇】Junit 测试单元

01 概述 JUnit是一个由 Erich Gamma 和 Kent Beck 编写的一个回归测试框架(regression testing framework).Junit测试是白盒测试.JUnit有它自己的JUnit扩展生态圈.多数Java的开发环境都已经集成了JUnit作为单元测试的工具.[1] JUnit是一个开放源代码的Java测试框架,用于编写和运行可重复的测试.他是用于单元测试框架体系xUnit的一个实例(用于java语言).它包括以下特性: 1.用于测试期望结果的断言(Asser

使用JUnit测试java代码

Junit 单元测试实验报告  一.实验环境 MyEclipse2014.Junit4.10 二.实验目的 学会单元测试,在MyEclipse中进行Junit测试 三.实验步骤 1.写出要测试的类 代码如下: package com.cheng.test; public class Calculate { public int add(int a,int b) { return a+b; } public int sub(int a,int b) { return a-2*b;   //bug;

junit测试时,出现java.lang.IllegalStateException: Failed to load ApplicationContext

课程设计要求进行junit测试,我是在已经做好的ssh项目上做的测试,测试类代码如下 package com.zhang.web.services; import static org.junit.Assert.*; import org.junit.After; import org.junit.Before; import org.junit.Test; import javax.annotation.Resource; import org.junit.runner.RunWith; im

Junit测试框架 Tips

关于Junit测试框架使用的几点总结: 1.Junit中的测试注解: @Test →每个测试方法前都需要添加该注解,这样才能使你的测试方法交给Junit去执行. @Before →在每个测试方法执行前运行.因为每个测试方法执行之前会先执行该方法,所以会被执行多次. @After →在每个测试方法执行后执行.因为每个测试方法执行之后会先执行该方法,所以会被执行多次. @BeforeClass →运行测试类,在该类中的每个测试方法执行之前被运行,只执行一次. @AfterClass →运行测试类,在

基于Spring的可复用的Junit测试类的设计

平时我们做SSH项目的时候避免不了要做单元测试,而且很多时候,我们是不希望单元测试的结果对真正的数据库有影响的,那么我们就需要使用事务来管理了. JUnit测试基类如下: package com.sms.test.base; import org.junit.runner.RunWith; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.Te