我有参数化的testng测试,我想使用IntelliJ"运行/调试测试"单独执行它们(用于调试目的)。特征
当我这样做时,我有一个不同的执行上下文,因为IntelliJ本身在testng.xml
创建一个没有参数信息的新"user\.IdeaIC14\system\temp-testng-customsuite.xml"
文件。
我的代码是:
@BeforeTest
public void setUpTestSuite(ITestContext context) throws Exception {
Map<String, String> suiteParams = context.getCurrentXmlTest().getSuite().getParameters();
url = suiteParams.get("URL");
login = suiteParams.get("login");
pass = suiteParams.get("pass");
}
从IntelliJ suiteParams
单独运行测试时为空。
有没有人知道从IntelliJ和&#34;链接&#34;执行测试或类的任何方法。它们是原始testng.xml
文件?
答案 0 :(得分:-1)
您可以包含其他xml中的参数
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd"
[
<!ENTITY parent SYSTEM "xml/parameters.xml">
]>
<!-- Mozna ladowac parametry z roznych xmlow -->
<suite name="TestCase" order-by-instances="true">
<parmeters>&parent;
</parmeters>
...
或者!您可以在TestNG.xml中实现其他XML套件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Suite" parallel="none">
<suite-files>
<suite-file path="/path/to/your/otherXMLsuiteWithTest"/>
</suite-files>
</suite> <!-- Suite -->