当前位置: 首页 > 知识库问答 >
问题:

在Docker容器中运行Robot Framework Selenium测试时出现GeckoDriver/Firefox问题

吴哲
2023-03-14

作为我的项目构建管道的一部分,我们需要使用Robot Framework和Docker运行一系列SSH/Web验收测试。目前,我们正在创建一个docker容器,并在docker容器中运行ssh和selenium web测试。

Python-2.7 RobotFramework-3.1.1 SeleniumLibrary(用于机器人)-3.3.1 Selenium-3.1 geckodriver-0.21.0 Firefox-60.7.0

当我试图访问一个IP地址时,我经常遇到这样的错误:

WebDriverException: Message: Reached error page: about:neterror?e=connectionFailure&u=http%3A//172.20.0.158/&c=UTF-8&f=regular&d=Firefox%20can%E2%80%99t%20establish%20a%20connection%20to%20the%20server%20at%20172.20.0.158.
Google Test
    Open Browser    http://www.google.com   ff
    Page Should Contain     Google
    Close Browser

Jenkins Test
    Open Browser    http://100.00.00.00   ff
    Page Should Contain     Jenkins
    Close Browser

如果你需要更多的信息,请让我知道--我可以提供。谢谢!

共有1个答案

杜骏祥
2023-03-14

在错误消息中,您试图打开的地址是172.20.0.158。如果这是您实际命中的一个,那么它在一个专用范围内--更具体地说是172.16.0.0/12(例如,像家庭网络中更流行的范围192.168.0.0/24-其他网络不可路由)。
如果您的docker节点无法访问它,那么它的路由表很可能配置错误。您说您可以打开目标url,但您可能必须从另一台机器(您的工作机器,docker主机?)尝试,该机器的路由设置应该是这样的。

由于docker上运行着sshd,请连接到它并尝试用以下命令打开url:

curl http://172.20.0.158/

如果成功了,那就是Firefox的问题;如果失败并出现类似错误,那么这是网络配置。
在ssh会话中,可以使用以下命令打印路由表:

ip route
 类似资料:
  • 问题内容: 我正在尝试在Alpine 3.10 docker容器中专门运行GeckoDriver v0.26.0 。 在弄清楚一些事情之后,我碰壁了: 我想念什么? 我怎么到这里 首先启动docker容器: 然后尝试安装GeckoDriver 真?但我只是提取了它…嗯…好 提取正确吗?是对的吗 是。好吧,让我们用谷歌搜索。好吧,也许我应该检查一下信息。默认情况下,Alpine没有。 对于同一问题的

  • 如何在docker容器中运行基于的测试用例? 我有一个简单的Spring Boot应用程序,它具有集成测试(组件级),使用与容器交互。测试用例正在破坏来自外部容器(本地机器)的罚款。 我们正在容器中运行所有内容,并且build正在docker jenkins映像上运行。Docker文件正在创建jar,然后创建image。找不到安装的docker。下面是我的docker文件。 处理这个案子最好的办法

  • docker错误: PS C:\Windows\System32>docker运行测试错误:出现JNI错误,请检查线程“main”java.lang.noClassDeffounderRorr:javax/JMSException在java.lang.Class.GetDeclaredMethods0(本机方法)在java.lang.Class.GetDeclaredMethods(class.j

  • 我在容器中运行空手道UI测试时遇到了问题。我可以清楚地在本地运行测试。但是我在容器中运行的测试显示“错误com.intuit.karate-驱动配置/启动失败:”我使用的驱动配置如下 配置驱动程序={type:'chrome',headless:true,showDriverLog:true,addOptions:['--incognito'],httpConfig:{readTimeout:12

  • 我试图找出如何在Visual Studio2015中调试在Docker容器中执行的单元测试和集成测试。 null