我正在尝试使用Webdriver Hub和TestNG并行机制设置Webdriver并行执行。我正面临线程问题
我有这个扩展TestBaseSetUp的类,它有一个BeforeMethod和AfterMethod,并设置为始终运行。对于webdriver并行执行,我想使用ThreadLocal,但@Test和@ Before / @ After方法在不同的thread.So如果我在我的TestBaseSetUp中将webdriver设置为ThreadLocal,并尝试获取我的测试方法,则返回null。
public class TestCheck extends TestBaseSetUp {
@Test
public void test(){
System.out.println("Thread in test " + Thread.currentThread().getId());
} }
我们是否有办法使@Test与@Fast / @ After方法
在同一个线程中答案 0 :(得分:0)
答案 1 :(得分:0)
@Manish_pat
看一下我的博文:https://rationaleemotions.wordpress.com/2013/07/31/parallel-webdriver-executions-using-testng/ 我们的想法是从依赖于Web驱动程序实例化的配置方法转变为TestNG监听器驱动模型,其中webdriver对象是在beforeInvocation()中创建的,并在afterInvocation()中被销毁。 TestNG保证beforeInvocation(),@ Test和afterInvocation()总是在同一个线程上执行。所以现在你可以继续在这里使用ThreadLocal。