【问题标题】:How to parameterise method name in TestNG xml file?如何在 TestNG xml 文件中参数化方法名称?
【发布时间】:2020-02-17 14:46:31
【问题描述】:

下面是 testng.xml 代码。这里我有测试名称 Test1,我想包含所有以回归标签开头的场景(标签存在于黄瓜特征文件中)。

我想参数化“regression.*”值并希望在运行时作为参数传递(Runas testng)。

<test name="Test1">
  <groups>
    <run>
      <include name="regression.*"/>
    </run>
  </groups>

有人可以帮我解决这个问题吗?

提前谢谢.....

【问题讨论】:

标签: java selenium testing cucumber testng


【解决方案1】:

您应该能够使用 beanshell 作为方法选择器在运行时构建动态选择组。

这是一个示例 beanshell 驱动的套件 xml。在下面的示例中,我们使用 JVM 参数 -DgroupToRun 来传递我们想要执行的组的名称。

有关如何在 TestNG 中使用 beanshell 的更多详细信息,请查看

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Suite" parallel="false">
    <test name="Test">
        <method-selectors>
            <method-selector>
                <script language="beanshell">
                <![CDATA[
                    whatGroup = System.getProperty("groupToRun");
                    groups.containsKey(whatGroup);
                ]]>
                </script>
            </method-selector>
        </method-selectors>
        <classes>
            <class name="organized.chaos.GroupsPlayGround" />
        </classes>
    </test> <!-- Test -->
</suite> <!-- Suite -->

【讨论】:

    猜你喜欢
    • 2020-05-20
    • 2019-08-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-12
    • 1970-01-01
    • 2021-09-19
    • 1970-01-01
    相关资源
    最近更新 更多