簡體   English   中英

Serenity / WebDriver:無法訪問本地主機

[英]Serenity/WebDriver: cannot access localhost

我在Serenity / WebDriver中遇到問題。 突然有一天,我的代碼無法正常工作,並且出現錯誤“未知主機本地主機”。

我可以使用http://thucydides.info/docs/serenity-staging/#_serenity_with_cucumber中的代碼進行復制:

@RunWith(SerenityRunner.class)
public class WhenSearchingOnGoogle {

    @Managed                                                                
    WebDriver driver;

    @Test
    public void shouldInstantiateAWebDriverInstanceForAWebTest() {
        driver.get("http://www.google.com");                                

        driver.findElement(By.name("q")).sendKeys("firefly", Keys.ENTER);

        new WebDriverWait(driver,5).until(titleContains("Google Search"));

        assertThat(driver.getTitle()).isEqualTo("firefly - Google Search");
    }
}

我收到此錯誤:

測試開始:shouldInstantiateAWebDriverInstanceForAWebTest

18:06:11.599 [main] INFO net.serenitybdd.core.Serenity-測試號:9月1日。 22,2018 6:06:11 PM org.openqa.selenium.remote.DesiredCapabilities chrome信息: DesiredCapabilities.chrome()首選使用new ChromeOptions() DesiredCapabilities.chrome()

net.serenitybdd.core.exceptions.SerenityManagedException:無法訪問本地主機

at net.serenitybdd.core.webdriver.driverproviders.RemoteDriverBuilder.newRemoteDriver(RemoteDriverBuilder.java:66)
at net.serenitybdd.core.webdriver.driverproviders.DefaultRemoteDriver.buildWithOptions(DefaultRemoteDriver.java:24)
at net.serenitybdd.core.webdriver.driverproviders.RemoteDriverProvider.newInstance(RemoteDriverProvider.java:53)
at net.thucydides.core.webdriver.WebDriverFactory.newWebdriverInstance(WebDriverFactory.java:127)
at net.thucydides.core.webdriver.WebDriverFacade.newDriverInstance(WebDriverFacade.java:149)

當我輸入另一個URL時,我不理解“無法訪問本地主機”?

我嘗試了其他驅動程序,但均未成功。 我該如何運作?

塞克斯(ThéricCédric)

看來,肯定是通過serenity.properties中的此參數使用的遠程Webdriver與localhost:4444一起使用:webdriver.remote.url = http:// localhost:4444 / wd / hub

我用https://github.com/SeleniumHQ/docker-selenium/blob/master/README.md#selenium-grid-hub-and-nodes解決了這個問題:創建docker-compose.yml,然后從docker開始-d使用docker-compose down停止

如果您在本地運行Selenium服務器,那么它很簡單

1. Please download the binary from 

硒下載頁面

現在導航到包含jar和打開命令提示符的文件夾,並在步驟2和3中運行命令

2。 啟動中心:

    java -jar selenium-server-standalone-3.14.0.jar -port 4444 -role hub

3.注冊:

java -jar selenium-server-standalone-3.14.0.jar -role node -hub http://localhost:4444/grid/register 

之后,您必須找到與chrome版本匹配的驅動程序。 例如使用chromdriver版本2.42的v69。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM