硒 Java org.openqa.selenium.remote.UnreachableBrowserException

问题描述

我正在尝试使用 Selenium & Gauge 创建一个小型测试场景。我创建了一个 BaseTest 类,但我无法清晰地运行。对于 BeforeScenario 和 AfterScenario 注释,它给了我两个不同的错误

我进行了一些调试,但我仍然无法理解问题所在。

我的 BaseTest 类:

package org.example;

import com.thoughtworks.gauge.AfterScenario;
import com.thoughtworks.gauge.BeforeScenario;
import org.apache.commons.lang.StringUtils;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;
import org.openqa.selenium.remote.DesiredCapabilities;

import java.net.MalformedURLException;
import java.util.concurrent.TimeUnit;

public class BaseTest
{
    public static WebDriver driver;

    @BeforeScenario
    public void setUp() throws MalformedURLException,Exception
    {
        String BaseUrl = "https://www.lcwaikiki.com/tr-TR/TR";
        DesiredCapabilities capabilities;

        if(StringUtils.isEmpty(System.getenv("key"))){
            capabilities = DesiredCapabilities.chrome();
            ChromeOptions options = new ChromeOptions();
            capabilities.setCapability(ChromeOptions.CAPABILITY,options);
            System.setProperty("webdriver.chrome.driver","src/test/resources/chromedriver.exe");
            driver = new ChromeDriver(capabilities);
        }

        driver.manage().timeouts().pageLoadTimeout(30,TimeUnit.SECONDS).implicitlyWait(10,TimeUnit.SECONDS);
        driver.manage().window().fullscreen();
        driver.get(BaseUrl);
    }

    @AfterScenario
    public void tearDown() throws Exception
    {
        driver.quit();
    }
}

这里是例外:

"C:\Program Files\Gauge\bin\gauge.exe" run --machine-readable --hide-suggestion --simple-console C:/Users/testinium/IdeaProjects/LCWaikikiSelenium/specs/example.spec:7
Testing started at 18:28 ...


SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".

SLF4J: Defaulting to no-operation (nop) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.   



Tem 16,2021 6:28:55 PM org.openqa.selenium.remote.DesiredCapabilities chrome
INFO: Using `new ChromeOptions()` is preferred to `DesiredCapabilities.chrome()`
Starting ChromeDriver 91.0.4472.101 (af52a90bf87030dd1523486a1cd3ae25c5d76c9b-refs/branch-heads/4472@{#1462}) on port 26026
Only local connections are allowed.
Please see https://chromedriver.chromium.org/security-considerations for suggestions on keeping ChromeDriver safe.
ChromeDriver was started successfully.

Failed: Before Scenario
Message: org.openqa.selenium.remote.UnreachablebrowserException: Could not start a new session. Possible causes are invalid address of the Remote Server or browser start-up failure.
Build info: version: '3.12.0',revision: '7c6e0b3',time: '2018-05-08T14:04:26.12Z'
System info: host: 'DESKTOP-KOB5QSG',ip: '192.168.0.26',os.name: 'Windows 10',os.arch: 'amd64',os.version: '10.0',java.version: '1.8.0_291'
Driver info: driver.version: ChromeDriver
Stack Trace:
org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:564)
org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:207)
org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:130)
org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:181)
org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:147)
org.example.BaseTest.setUp(BaseTest.java:29)


Failed: After Scenario
Message: java.lang.NullPointerException
Stack Trace:
org.example.BaseTest.tearDown(BaseTest.java:40)

Successfully generated html-report to => C:\Users\testinium\IdeaProjects\LCWaikikiSelenium\reports\html-report\index.html



Specifications: 1 executed  0 passed    1 Failed    0 skipped
Scenarios:  1 executed  0 passed    1 Failed    0 skipped

Total time taken: 1.182s
Updates are available. Run `gauge update -c` for more info.

Process finished with exit code 1

感谢您的帮助...

解决方法

将 slf4j-nop.jar slf4j-simple.jar,slf4j-log4j12.jar,slf4j-jdk14.jar,logback-classic.jar 中的一个添加到 Pom 依赖应该可以解决你的问题

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...