Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/multithreading/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 并行运行testMethods而不是testng中的测试。。。?_Java_Selenium_Selenium Webdriver_Testng - Fatal编程技术网

Java 并行运行testMethods而不是testng中的测试。。。?

Java 并行运行testMethods而不是testng中的测试。。。?,java,selenium,selenium-webdriver,testng,Java,Selenium,Selenium Webdriver,Testng,testng.xml 这里我提到了我的测试方法是并行的,我的意图是并行运行测试方法,但是每个测试应该一个接一个地顺序运行 比如,在LoginPage测试并行运行testmethods之后,仪表板testcase应该并行运行testmethods 我如何实现这种行为 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd"> <sui

testng.xml

这里我提到了我的测试方法是并行的,我的意图是并行运行测试方法,但是每个测试应该一个接一个地顺序运行 比如,在LoginPage测试并行运行testmethods之后,仪表板testcase应该并行运行testmethods

我如何实现这种行为

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="MyStartupEquity AdminLogin suite" parallel="false">

    <listeners>
        <listener class-name="Listeners.ExtentListeners">
        </listener>
    </listeners>

    <test thread-count="5" name="LoginPage - Tests" parallel="methods">
        <parameter name="browser" value="chrome"></parameter>
        <classes>
            <class name="TestCases.loginTest" >
            <methods>
                <include name="verifyLoginPageTitle" />
                <include name="verifyInvalidCredentials" />
                <include name="logging_In" />
            </methods>
        </class>
        </classes>
    </test> 

     <test thread-count="5" name="DashboardPage - Tests" parallel="methods">
        <parameter name="browser" value="chrome"></parameter>
        <classes>
            <class name="TestCases.dashboardTest" >
            <methods>
                <include name="vestingTableCheck" />
                <include name="dashboardCheck" />
            </methods>
        </class>
        </classes>
    </test> 

</suite> 


我认为唯一的方法是创建一个客户测试运行程序。另一方面,我觉得你违反了良好的考试惯例,因为一组考试取决于前一次考试的结果/副作用。你真的应该构建相互隔离的测试,这不仅允许它们并行运行,而且允许它们以任何顺序运行。每个关于测试依赖性的问题都有一个开发人员说这是一种不好的做法,你不应该这样做。不,这不是一个坏习惯。TestNG中的功能存在是有原因的。这不是JUnit。碰巧他们只知道单元测试,在单元测试中,测试必须相互独立。对于E2E测试和有时的回归,有时(我甚至会说通常情况下)依赖关系是必要的,以节省执行时间并获得更清晰的报告。无论如何,我的回答在这里帮助您:@Gavin你能建议一种更好的并行执行方法吗,每个测试用例都有单独的测试方法,所以如果我添加parallel=“methods”在套件级别,将为所有测试中的所有testmethods创建10-15个浏览器实例。。所以只有我认为并行执行testmethods和顺序执行测试会更好!你能建议一个更好的做法吗?谢谢你advance@RodrigoVaamonde谢谢你的建议…我想唯一的方法是创建一个客户测试运行程序。另一方面,我觉得你违反了良好的考试惯例,因为一组考试取决于前一次考试的结果/副作用。你真的应该构建相互隔离的测试,这不仅允许它们并行运行,而且允许它们以任何顺序运行。每个关于测试依赖性的问题都有一个开发人员说这是一种不好的做法,你不应该这样做。不,这不是一个坏习惯。TestNG中的功能存在是有原因的。这不是JUnit。碰巧他们只知道单元测试,在单元测试中,测试必须相互独立。对于E2E测试和有时的回归,有时(我甚至会说通常情况下)依赖关系是必要的,以节省执行时间并获得更清晰的报告。无论如何,我的回答在这里帮助您:@Gavin你能建议一种更好的并行执行方法吗,每个测试用例都有单独的测试方法,所以如果我添加parallel=“methods”在套件级别,将为所有测试中的所有testmethods创建10-15个浏览器实例。。所以只有我认为并行执行testmethods和顺序执行测试会更好!你能建议一个更好的做法吗?谢谢你advance@RodrigoVaamonde谢谢你的建议。。。