我目前正在做一个使用Java、Selenium和Testng的项目。我的总体目标是在不同的web浏览器上测试网页的功能。我有我的Selenium代码工作,并能够在Chrome和Firefox上运行测试。但是,我必须手动更改代码才能切换浏览器。我通过注释掉driver = new ChromeDriver();来做这件事,我想编辑我的代码,这样测试就可以在火狐中运行,当测试完成后,就可以在Chrome中开始测试了。有谁能给我指引正确的方向吗?
下面是我的代码的示例:
WebDriver driver = null;
Selenium selenium = null;
@BeforeSuite
public void setup() throws Exception {
/// Chrome Driver ///
System.setProperty("webdriver.chrome.driver", "mac/chromedriver.exe");
//driver = new ChromeDriver();
/// Firefox Driver ///
driver = new FirefoxDriver();
}
@Test
public void testGoogle() throws Exception {
selenium = new WebDriverBackedSelenium(driver,"URL");发布于 2012-06-30 04:29:09
有相当多的方法可以实现这一点。
在设置中,您可以读取属性,并在此基础上实例化正确的驱动程序。
String driverType = System.getProperty("driverType");
if ("firefox".equals(driverType))
driver = new FirefoxDriver().....您可以运行测试两次,一次使用firefox属性,然后使用chrome属性。
另一种选择是将所有测试放在一个类中。然后扩展这个类两个类,一个用于firefox设置,另一个用于chrome设置。然后,您可以在一个套件中运行这两个子类测试。他们会一个接一个地跑。
https://stackoverflow.com/questions/11268418
复制相似问题