执行JAR文件时无法打开Chrome或IE

时间:2014-04-09 12:35:23

标签: java selenium junit webdriver

如何在我的Junit测试用例中运行IE和Chrome。这是我的代码:

import org.openqa.selenium.ie.InternetExplorerDriver; import org.openqa.selenium.support.ui.Select;

公共类Selenium_Email_TestCase {

private WebDriver driver;
private String baseUrl;
private boolean acceptNextAlert = true;
private StringBuffer verificationErrors = new StringBuffer();

public static void main(String[] args) {
System.out.println("In main method");
    JUnitCore jCore = new JUnitCore();
    jCore.run(Selenium_Email_TestCase.class);
}

@Before
public void setUp() throws Exception {
    System.out.println("In setup");
        driver = new InternetExplorerDriver();
    baseUrl = "http://stage7.bicycling.com";
    driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);   
}

2 个答案:

答案 0 :(得分:0)

试试这个......

    String jarPath = SeleniumTest.class.getProtectionDomain().
            getCodeSource().getLocation().getPath();
    File file = new File(jarPath);
    String selHome = file.getParentFile().getParent();
    System.setProperty("webdriver.chrome.driver", 
    selHome+"/web_driver/"+"chromedriver.exe");

   WebDriver driver = new ChromeDriver();

答案 1 :(得分:0)

您已经实例化了您的驱动程序,现在您只需要拥有入口点。首先,您需要导航到要测试的URL。

@Before方法中(或在您的个别测试中),您需要:

driver.get(baseUrl); // or driver.navigate().to(baseUrl);

要使用Chrome,只需将实例化更改为:

driver = new ChromeDriver();

如果您没有真正详细说明是否收到错误,如果您收到错误提及chromedriver must be set by webdriver.chrome.driver,那么您需要设置一些环境变量,或者通过运行传递变量组态。 -Dwebdriver.chrome.driver=/absolute/path/to/chromedriver