如何在Tomcat服务器上运行Selenium webdriver?

时间:2017-04-06 17:42:26

标签: java eclipse selenium tomcat

我在Eclipse IDE中运行Tomcat服务器。整个设置在Windows Server 2012上。当我从没有Tomcat服务器的本地计算机运行selenium webdriver时,它工作正常。 但它不适用于Tomcat服务器。我也没有看到任何错误。请在下面找到我的代码。我试图把一些日志看到流量。 “111111”之后没有任何痕迹。由于Tomcat webserver,我没有使用selenium服务器独立jar。是否可以在Tomcat服务器上运行selenium测试?

private void uploadDBIFileInDSS(String csvFileString) throws BillingUserException{
    HomeController.logger.debug("Start");
    WebDriver driver = null;
    try {
        System.out.println("111111");
        System.setProperty("webdriver.chrome.driver", "XXXXX/chromedriver.exe");
        driver = new ChromeDriver();
        driver.get("XXXXXXX");
        System.out.println("222222");
        Thread.sleep(15000);
        WebElement username = driver.findElement(By.name("IDToken1"));
        WebElement password = driver.findElement(By.name("IDToken2"));
        username.sendKeys("XXXXX");
        Thread.sleep(5000);
        password.sendKeys("XXXXXX");
        Thread.sleep(5000);

        WebElement loginButton = driver.findElement(By.name("Submit"));
        loginButton.click();
        Thread.sleep(10000);
        driver.findElement(By.xpath("//*[contains(text(), 'XXXXX')]")).click();
        Thread.sleep(2000);

        driver.findElement(By.xpath("//*[contains(text(), 'XXXX')]")).click();
        Thread.sleep(2000);
        driver.findElement(By.xpath("//*[contains(text(), 'XXXX')]")).click();
        Thread.sleep(5000);
        WebElement attachFileButton = driver.findElement(By.name("upfile"));

        attachFileButton.sendKeys("XXXXXX");

        Select dropdown = new Select(driver.findElement(By.name("reason")));

        Thread.sleep(2000);

        dropdown.selectByValue("Misc");

        Thread.sleep(2000);

        driver.findElement(By.name("Submit")).click();
        Thread.sleep(5000);
        driver.findElement(By.xpath("//*[contains(text(), 'XXXX')]")).click();
        Thread.sleep(5000);
        driver.close();


    }catch(Exception exp) {
        driver.close();
        exp.printStackTrace();
        throw new BillingUserException(BillingUserException.XXXXXXX);
    }
    HomeController.logger.debug("End");

}

1 个答案:

答案 0 :(得分:0)

尝试远程网络驱动程序而不是chrome网络驱动程序。

我猜你的代码当前存在问题,你必须在WEB-INF / lib中导入chrome.exe和chrome web驱动程序。

希望它有所帮助。

相关问题