【问题标题】:Run testng tests successively on parallel machines在并行机器上连续运行 testng 测试
【发布时间】:2014-05-12 11:53:48
【问题描述】:

我有以下使用 selenium 进行 web 测试的配置: eclipse+maven+testng,带有 2 个节点的 selenium 网格。 第一个节点:ie10 + firefox;第二个节点:ie11+chrome。 我需要对节点连续执行测试,但对节点并行执行。当前配置为两个节点启动两种方法。是否可以重新配置 testng 和 maven 以满足我的需求?我不可能为每个浏览器启动 4 台机器,只有 2 台。 这是我的测试 xml

<suite name="Test Suite" thread-count="4" parallel="tests">
<test name="Tests - ie10">
    <parameter  name="browser" value="ie10"/>
    <classes>
        <class name="TestExportConfiguration"></class>
    </classes>      
</test>
<test name="Tests - chrome">
    <parameter name="browser" value="chrome"/>
    <classes>
        <class name="TestExportConfiguration"></class>
    </classes>      
</test>
<test name="Tests - firefox">
    <parameter name="browser" value="firefox"/>
    <classes>
        <class name="TestExportConfiguration"></class>
    </classes>      
</test>
<test name="Tests - ie11">
    <parameter name="browser" value="ie11"/>
    <classes>
        <class name="TestExportConfiguration"></class>
    </classes>      
</test>

和maven插件配置

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.16</version>
<configuration>
    <suiteXmlFiles>
        <suiteXmlFile>target/test-classes/testng.xml</suiteXmlFile>
    </suiteXmlFiles>
    <systemPropertyVariables>
        <browser>${browser}</browser>
    </systemPropertyVariables>
    <properties>
        <property>
            <name>usedefaultlisteners</name>
            <value>true</value>
        </property>
        <property>
            <name>listener</name>
            <value>org.uncommons.reportng.HTMLReporter, org.uncommons.reportng.JUnitXMLReporter</value>
        </property>
    </properties>
    <workingDirectory>target/</workingDirectory>
</configuration>

【问题讨论】:

    标签: maven testng selenium-grid


    【解决方案1】:

    一种选择是创建 2 个套件文件 - 将其添加到 1 个套件文件中。在一个套件文件中 放

    <suite name="Test Suite" thread-count="4" parallel="tests">
    <test name="Tests - ie10">
        <parameter  name="browser" value="ie10"/>
        <classes>
            <class name="TestExportConfiguration"></class>
        </classes>      
    </test>
    <test name="Tests - chrome">
        <parameter name="browser" value="chrome"/>
        <classes>
            <class name="TestExportConfiguration"></class>
        </classes>      
    </test>
    

    在另一个中使用 firefox 和使用 parallel=tests 的 ie11。 将这两个套件文件添加到一个套件文件中。

    【讨论】:

    • 没错!如此简单,我怎么错过了……谢谢!
    猜你喜欢
    • 1970-01-01
    • 2021-03-15
    • 1970-01-01
    • 2017-07-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-10
    相关资源
    最近更新 更多