使用Webdriver+TestNG,设置FireFox安装路径。

来源:互联网 发布:淘宝如何快速升心 编辑:程序博客网 时间:2024/05/28 23:22

最近学习使用TestNG写测试脚本,仿照的是乙醇的脚本,由于火狐没有装到默认路径,运行时总是报找不到路径的错误。QQ群里问了半天也没人回答,只好自己倒腾,最终调试通过的代码如下。

package com.testgoogle;import org.testng.Assert;import org.testng.annotations.BeforeTest;import org.testng.annotations.Parameters;import org.testng.annotations.Test;import org.openqa.selenium.*;import org.openqa.selenium.chrome.ChromeDriver;import org.openqa.selenium.firefox.*;public class GoogleTest {WebDriver driver;@BeforeTestpublic void setup(){System.setProperty("webdriver.firefox.bin", "D:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe");}@Parameters({"browser"})@BeforeTestpublic void setupBrowser(String browser){if (browser.equals("firefox")){driver = new FirefoxDriver();} else {driver = new ChromeDriver();}  }  @Parameters({ "url", "keyword" })@Testpublic void search(String url, String keyword) {       driver.get(url);WebElement element = driver.findElement(By.name("q"));element.sendKeys(keyword);element.submit();Assert.assertTrue(driver.getTitle().contains(keyword), "Title is  wrong!");            }  }
调试过程中发现system.setproperty()必须放在@BeforeTest的一个方法里,不能直接贴代码也不能放在@BeforeClass之类的位置。当然放在@Test的方法里也可以,但是不太规范。