我的Selenium测试旨在获取失败的屏幕截图并将其添加到报告中。截图显示为Chrome浏览器完美显示,但Firefox屏幕截图只是白色矩形。更改日志说明了我试图禁用的“通过”模式Togglz documentation,但似乎没有任何效果。
这是我的docker撰写文件:
seleniumhub:
image: selenium/hub
ports:
- 4444:4444
firefoxnode:
image: selenium/node-firefox-debug
ports:
- 4577
links:
- seleniumhub:hub
environment:
- enablePassThrough=false
- NODE_MAX_INSTANCES=5
- NODE_MAX_SESSION=5
chromenode:
image: selenium/node-chrome-debug
ports:
- 4578
links:
- seleniumhub:hub
environment:
- NODE_MAX_INSTANCES=5
- NODE_MAX_SESSION=5
答案 0 :(得分:0)
我认为enablePassThrough
不是有效的环境变量。配置是从https://github.com/SeleniumHQ/docker-selenium/blob/master/NodeFirefox/generate_config生成的,该https://github.com/SeleniumHQ/docker-selenium/blob/master/NodeBase/entry_point.sh#L28-L30仅包含您的NODE_MAX_INSTANCES
和NODE_MAX_SESSION
。
但是,的入口点中的父基本映像存在SE_OPTS
变量。您可以使用它来设置-enablePassThrough false
。您在Docker Compose中的服务定义将是这样的:
firefoxnode:
image: selenium/node-firefox-debug
ports:
- 4577
links:
- seleniumhub:hub
environment:
- SE_OPTS="-enablePassThrough false"
- NODE_MAX_INSTANCES=5
- NODE_MAX_SESSION=5