1

我有一个这样配置的 XML

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >

<suite name="SuiteName" verbose="7">
    <test name="TestName">
        <method-selectors>
            <method-selector>
                <script language="beanshell">
                    <![CDATA[
                    driverType = System.getProperty("driverType");
                    if (driverType.equals("IOS")){
                      return groups.containsKey("All") && (!groups.containsKey("wip") && !groups.containsKey("iOS"));
                    } else {
                       return groups.containsKey("All") && (!groups.containsKey("wip"));
                    }
]]></script>
            </method-selector>
        </method-selectors>
        <classes>
            <class name="classnameHere"/>
        </classes>
    </test>
</suite>

现在我有一个发送命令 -DsuiteXmlFile=${suiteXmlfile}.xml 的 Jenkins 作业(我配置了多个套件 XML 文件)

测试创建的报告在名称中包含“suiteXmlFile”参数值,但对于调试或当我必须运行不是来自 Jenkins 的东西时,我只需右键单击 XML 文件,但报告者将 suiteXmlFile 视为空(显然)。

我试过 System.setProperty("suiteXmlFile","suiteName"); (我在内部方法中使用它并且效果很好)但是从 XML 文件看来它不起作用。还有其他方法可以设置该属性吗?

4

1 回答 1

0

System.setProperty("suiteXmlFile","suiteName") 实际上有效。问题是我试图在xml设置之前读取该属性

于 2019-09-23T06:59:57.757 回答