【发布时间】:2013-03-15 23:59:23
【问题描述】:
如果运行模式为parallel="methods",如何强制TestNG为每个方法创建新的测试类实例?
JUnit 会自动执行此操作,但 TestNG 在方法之间重用相同的实例。
有没有办法改变这种行为?
我正在运行 selenium 测试并在 @BeforeMethod 方法中创建 webdriver 并将其存储到类变量中以在测试方法中使用它并关闭 @AfterMethod。
并且我希望能够在不共享 webdriver 的情况下并行运行一个测试类的方法。
【问题讨论】:
-
只要在构造函数中赋值你的字段就可以达到你想要的效果。
-
那行不通——构造函数只被调用一次。
-
使用
@BeforeMethod和@AfterMethod管理驱动程序不是一个好主意。我建议将 TestNG 与 QAF 一起使用,它会以最有效的方式利用 TestNG 的所有功能来处理驱动程序管理和其他黑盒测试需求。