如何使用 Selenium/TestNG/Maven 运行 单个测试用例(方法)而不是整个测试套件(class)
How to run a single test case (method) instead of whole test suite (class) using Selenium/TestNG/Maven
所以基本上我想知道如何 运行 一个特定的测试用例(一种方法)而不是 运行 整个 class。
我正在运行使用Selenium/Maven/TestNG的组合进行测试。我当前的测试设置如下所示:
运行 测试的简化命令:
mvn test -DtestSuiteName="test"
上面命令中使用的test.xml的内容:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Selenium Testng Template">
<test name="TestSuiteTest">
<classes>
<class name="listeners.Test_Listener"/>
<class name="tests.example_test_suite_name"/>
</classes>
</test>
</suite>
Listener 所做的基本上是为测试设置环境,它启动一个预配置的 WebDriver 实例并在所有测试完成后关闭它 运行。它看起来像这样:
@Listeners(Listener_Helper)
class Test_Listener implements IExecutionListener {
@BeforeSuite
void openBrowser(){
prepareEnviroment()
}
@AfterSuite
void closeBrowser(){
cleanUp()
}
现在介绍示例测试文件的内容。它由一个有点像测试套件的 class 组成,它包含几个有点像测试用例的方法。
class example_test_suite_name {
@Test(priority=1)
void test_name_one() {
//test instructions
}
@Test(priority=2)
void test_name_two() {
//test instructions
}
总而言之,启动测试套件不是问题 - class,但如何启动单个测试用例 - class 的一种方法?
假设我只想启动 "test_name_one" 而不是 class 包含的其他方法。不幸的是,我在网上找不到与此相关的任何内容。
任何关于此事的提示将不胜感激
您可以在xml文件中指定更多测试方法
<groups>
<run>
<include name="setName"></include>
</run>
</groups>
<classes>
<class name="com.journaldev.xml.TestNGXMLTest">
</class>
</classes>
以上测试套件只会执行 setName 组中的方法,因此只会执行 test_setName 方法。
所以基本上我想知道如何 运行 一个特定的测试用例(一种方法)而不是 运行 整个 class。
我正在运行使用Selenium/Maven/TestNG的组合进行测试。我当前的测试设置如下所示:
运行 测试的简化命令:
mvn test -DtestSuiteName="test"
上面命令中使用的test.xml的内容:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Selenium Testng Template">
<test name="TestSuiteTest">
<classes>
<class name="listeners.Test_Listener"/>
<class name="tests.example_test_suite_name"/>
</classes>
</test>
</suite>
Listener 所做的基本上是为测试设置环境,它启动一个预配置的 WebDriver 实例并在所有测试完成后关闭它 运行。它看起来像这样:
@Listeners(Listener_Helper)
class Test_Listener implements IExecutionListener {
@BeforeSuite
void openBrowser(){
prepareEnviroment()
}
@AfterSuite
void closeBrowser(){
cleanUp()
}
现在介绍示例测试文件的内容。它由一个有点像测试套件的 class 组成,它包含几个有点像测试用例的方法。
class example_test_suite_name {
@Test(priority=1)
void test_name_one() {
//test instructions
}
@Test(priority=2)
void test_name_two() {
//test instructions
}
总而言之,启动测试套件不是问题 - class,但如何启动单个测试用例 - class 的一种方法?
假设我只想启动 "test_name_one" 而不是 class 包含的其他方法。不幸的是,我在网上找不到与此相关的任何内容。
任何关于此事的提示将不胜感激
您可以在xml文件中指定更多测试方法
<groups>
<run>
<include name="setName"></include>
</run>
</groups>
<classes>
<class name="com.journaldev.xml.TestNGXMLTest">
</class>
</classes>
以上测试套件只会执行 setName 组中的方法,因此只会执行 test_setName 方法。