嗨,当我试图通过eclipse运行selenium进行本地URL测试时,我得到以下错误

时间:2017-02-14 07:59:47

标签: eclipse selenium selenium-webdriver selenium-firefoxdriver

尝试为我的本地网址执行selenium firefox驱动程序时出现以下错误:

INFO: Attempting bi-dialect session, assuming Postel's Law holds true on the remote end
org.openqa.selenium.remote.ProtocolHandshake createSession
INFO: Detected dialect: W3C
ession ID: 107f76f0-251f-4d62-9308-2968ed6e354f
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    at java.lang.reflect.Constructor.newInstance(Unknown Source)
    at org.openqa.selenium.remote.http.W3CHttpResponseCodec.createException(W3CHttpResponseCodec.java:127)
    at org.openqa.selenium.remote.http.W3CHttpResponseCodec.decode(W3CHttpResponseCodec.java:93)
    at org.openqa.selenium.remote.http.W3CHttpResponseCodec.decode(W3CHttpResponseCodec.java:42)
    at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:163)
    at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:82)
    at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:601)
    at org.openqa.selenium.remote.RemoteWebDriver.get(RemoteWebDriver.java:322)
    at Gmail_login.main(Gmail_login.java:14)

代码

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.By;
public class Gmail_login {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
    // objects and variables instantiation
            System.setProperty("webdriver.gecko.driver", "C:\\Selenium\\geckodriver.exe");
            WebDriver driver = new FirefoxDriver();
            String appUrl = "https://localhost/qwer";
    // launch the firefox browser and open the application url
            driver.get(appUrl);
    //maximize the browser window
            driver.manage().window().maximize();
    //declare and initialize the variable to store the expected title of the webpage.
            String expectedTitle = "Web Login Service";
    //fetch the title of the web page and save it into a string variable
            String actualTitle = driver.getTitle();
    //compare the expected title of the page with the actual title of the page and print the result
            if (expectedTitle.equals(actualTitle))
            {
              System.out.println("Verification Successful - The correct title is displayed on the web page.");
            }
            else
            {
             System.out.println("Verification Failed - An incorrect title is displayed on the web page.");
            }
    // enter a valid username in the email textbox
            WebElement username = driver.findElement(By.id("username"));
            username.clear();
            username.sendKeys("karthiktest@gmail.com");
                // enter a valid password in the password textbox
            WebElement password = driver.findElement(By.id("password"));
            password.clear();
            password.sendKeys("Welcome");
                // click on the Sign in button
            WebElement SignInButton = driver.findElement(By.name("_eventId_proceed"));
            SignInButton.click();
                // close the web browser
            driver.close();
            System.out.println("Test script executed successfully.");
                    // terminate the program
            System.exit(0);

    }

}

2 个答案:

答案 0 :(得分:1)

如果无法访问url,则Firefox驱动程序会抛出此错误,例如,域名无法解析或服务器阻止连接。如果您在localhost上安装webserver并为此url提供一些内容,它将起作用。 您可以尝试将firefox切换为chrome,这不会为此方案抛出异常。您还可以围绕driver.get()语句编写try-catch块。

答案 1 :(得分:0)

这是一条INFO消息,让人们可以看到正在发生的事情。 这不是一个错误,而是需要担心的事情。

使用selenium3.0.0和geckodriver

以上的版本时会出现此消息

这不会停止脚本执行。