我有一套用网格运行的Selenium WebDriver测试。当我运行这个testng.xml文件时:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Suite" parallel="classes" thread-count="20">
<test name="Test">
<classes>
<class name="testcases.test1"/>
<class name="testcases.test2"/>
<class name="testcases.test3"/>
<class name="testcases.test4"/>
<class name="testcases.test5"/>
<class name="testcases.test6"/>
<class name="testcases.test7"/>
<class name="testcases.test8"/>
<class name="testcases.test9"/>
<class name="testcases.test10"/>
<class name="testcases.test11"/>
<class name="testcases.test12"/>
<class name="testcases.test13"/>
<class name="testcases.test14"/>
<class name="testcases.test15"/>
<class name="testcases.test16"/>
<class name="testcases.test17"/>
<class name="testcases.test18"/>
<class name="testcases.test19"/>
<class name="testcases.test20"/>
<class name="testcases.test21"/>
</classes>
</test> <!-- Test -->
</suite> <!-- Suite -->
public class sampleTestClass {
@BeforeClass
public void setup(){
//setup Remote WebDriver
}
@Test
public void method1(){
//do things
}
@Test(dependsOnMethods = "method1")
public void method2(){
//do things
}
@Test(dependsOnMethods = "method2")
public void method3(){
//do things
}
@AfterClass
public void teardown(){
//call teardown
}
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="MySuite" parallel="tests" thread-count="20">
<test name="First Test">
<classes>
<class name="testcases.test1"/>
</classes>
</test>
<test name="Second Test">
<classes>
<class name="testcases.test2"/>
</classes>
</test>
<test name="Third Test">
<classes>
<class name="testcases.test3"/>
</classes>
</test>
<test name="Fourth Test">
<classes>
<class name="testcases.test4"/>
</classes>
</test>
<!--<test name="Fifth Test">
<classes>
<class name="testcases.test5"/>
</classes>
</test>-->
<test name="Sixth Test">
<classes>
<class name="testcases.test6"/>
</classes>
</test>
<test name="Seventh Test">
<classes>
<class name="testcases.test7"/>
</classes>
</test>
</suite>
在我看来,在suite标记中指定parallel=“classes”与TestNG文档是一致的,但不能在单独的类中实现@test方法的异步执行。
为什么。xml文件的这种配置不起作用?我需要做什么不同的工作来使它发挥作用?
在具有多个方法的webdriver测试类的上下文中,假定该类中有一个webdriver实例,我不知道如何在方法之间同时共享一个webdriver实例。我认为它必须一次调用一个方法,这样每个方法都可以使用webdriver实例。否则,您似乎会得到某种并发异常。
我曾多次尝试使用TestNG获得并行方法,但从未成功。在源代码中有一个例子,但这可能是一个线索;只需查看同一个文件夹中的testng.xml。
这是驱动程序类,它将为每个测试方法创建驱动程序实例。
谢了。
我试图用TestNG并行运行一个示例测试项目。但它是在一个线程中顺序执行的。我漏掉什么了吗? 谢了。
问题内容: 我正在尝试使用testng并行运行自动化测试(Selenium webdriver)。这是我正在运行的节点: 这是我的测试课: } 这是我的xml: 当我运行XML时,我希望我的测试一次在两个线程中的两个浏览器上运行,但是,当我运行XML时,我使两个浏览器实例第一次运行,然后它们分别递增,并且50%测试失败了,您可以看到我正在尝试在每个方法中实例化驱动程序,尽管这不是我的框架如何工作,
为了减少测试的运行时间,我希望并行运行测试。我有几个不能并行运行的类。 假设我有两种类型的类:-并行类-包含类1,类2-不并行类-包含类3,类4我想并行运行类1和类2到类3和类4(但lass3不会并行运行到类4) 我试图这样做: 我并行运行这两个测试,但只有第一个测试具有类的并行性。 如果我可以选择添加parallel=“classes”进行测试,我尝试在TestNG文档中搜索。我看不到,但它正在
我正在试验如何与maven surefire和testng并行运行测试。然而,配置似乎不是很简单,我无法让它工作。下面是我的虚拟测试。 这是我的surefire配置: 测试基本上是按顺序运行的。以下是日志作为证据: 我的意图是并行运行所有测试(直到方法级别)。那么,我该如何实现呢?