繁体   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