位置:首頁 > Java技術 > TestNG教學 > TestNG運行JUnit測試

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_WORKSPACElibjunit-4.11.jar" org.testng.TestNG testng.xml

在這裡,我已經放在了 junit-4.11.jar 在 C:TestNG_WORKSPACElibjunit-4.11.jar下麵.

驗證輸出。

===============================================
Converted JUnit suite

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