目录

TestNG - 运行JUnit测试( Run JUnit Tests)

现在您已经了解了TestNG及其各种测试,您现在必须担心如何重构现有的JUnit代码。 没有必要担心,因为TestNG提供了一种按照自己的节奏从JUnit转换到TestNG的方法。 您可以使用TestNG执行现有的JUnit测试用例。

TestNG可以自动识别并运行JUnit测试,因此您可以将TestNG用作所有现有测试的运行器,并使用TestNG编写新测试。 您所要做的就是将JUnit库放在TestNG类路径上,这样它就可以找到并使用JUnit类,将测试运行器从JUnit更改为Ant中的TestNG,然后以“混合”模式运行TestNG。 这样,您可以在同一个项目中进行所有测试,即使是在同一个包中,也可以开始使用TestNG。 此方法还允许您以递增方式将现有JUnit测试转换为TestNG。

让我们举一个例子来展示TestNG的这种惊人的能力。

创建JUnit测试用例类

C:\》TestNG_WORKSPACE创建一个java类,它是一个JUnit测试类, 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);
   }
}

现在,让我们在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测试用例,请在上面的xml中定义属性junit="true" 。 JUnit测试用例类TestJunit在类名中定义。

对于JUnit 4,TestNG将使用org.junit.runner.JUnitCore运行器来运行测试。

使用javac编译所有java类。

C:\TestNG_WORKSPACE>javac TestJunit.java

现在,运行testng.xml,它将运行JUnit测试用例作为TestNG。

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
===============================================
↑回到顶部↑
WIKI教程 @2018