TestNG – グループテスト
このチュートリアルでは、TestNGでグループテストを行う方法を説明します。
1.メソッドに関するグループ
テストグループの例を確認します。
-
runSelenium()とrunSelenium1()はグループ `selenium-test`に属します.
-
testConnectOracle()およびtestConnectMsSQL()はグループに属します
データベース。
-
グループ
selenium-test`と
database`が実行された場合、runFinal()が実行されます.
渡されます。
TestGroup.java
package com.mkyong.testng.examples.group;
import org.testng.annotations.AfterGroups;
import org.testng.annotations.BeforeGroups;
import org.testng.annotations.Test;
public class TestGroup {
@BeforeGroups("database")
public void setupDB() {
System.out.println("setupDB()");
}
@AfterGroups("database")
public void cleanDB() {
System.out.println("cleanDB()");
}
@Test(groups= "selenium-test")
public void runSelenium() {
System.out.println("runSelenium()");
}
@Test(groups= "selenium-test")
public void runSelenium1() {
System.out.println("runSelenium()1");
}
@Test(groups = "database")
public void testConnectOracle() {
System.out.println("testConnectOracle()");
}
@Test(groups = "database")
public void testConnectMsSQL() {
System.out.println("testConnectMsSQL");
}
@Test(dependsOnGroups = {"database","selenium-test"})
public void runFinal() {
System.out.println("runFinal");
}
}
出力
//group = selenium-test runSelenium() runSelenium()1 //group = database setupDB() testConnectMsSQL testConnectOracle() cleanDB() //dependsOnGroups = database, selenium-test runFinal PASSED: runSelenium PASSED: runSelenium1 PASSED: testConnectMsSQL PASSED: testConnectOracle PASSED: runFinal
2.クラスのグループ
「グループ」はクラスレベルで適用できます。以下の例では、このクラス「TestSelenium」のすべてのパブリックメソッドは、グループ「セレンテスト」に属しています。
TestSelenium.java
package com.mkyong.testng.examples.group;
import org.testng.annotations.Test;
@Test(groups= "selenium-test")
public class TestSelenium {
public void runSelenium() {
System.out.println("runSelenium()");
}
public void runSelenium1() {
System.out.println("runSelenium()1");
}
}
2つのテストクラスを実行するXMLファイルを作成します。
testng.xml
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="TestAll">
<test name="final">
<classes>
<class name="com.mkyong.testng.examples.group.TestSelenium"/>
<class name="com.mkyong.testng.examples.group.TestGroup"/>
</classes>
</test>
<!-- Run test method on group "selenium" only -->
<test name="selenium">
<groups>
<run>
<include name="selenium-test"/>
</run>
</groups>
<classes>
<class name="com.mkyong.testng.examples.group.TestSelenium"/>
<class name="com.mkyong.testng.examples.group.TestGroup"/>
</classes>
</test>
</suite>
出力
//test name = final runSelenium() runSelenium()1 setupDB() testConnectMsSQL testConnectOracle() cleanDB() runFinal //test name = selenium runSelenium() runSelenium()1 =============================================== TestAll Total tests run: 7, Failures: 0, Skips: 0 ===============================================
3.その他の例
3.1試験方法は複数のグループに属することができる。
@Test(groups = {"mysql","database"})
public void testConnectMsSQL() {
System.out.println("testConnectMsSQL");
}
3.2上記の結果は、Eclipse TestNG Pluginを介して実行されます。

参考文献
@テスト]。
Eclipseプラグインのテスト