无法截图使用Firefox节点

我的Seleniumtesting旨在对失败进行截图并将其添加到报告中。 屏幕截图显示铬浏览器完美,但Firefox的截图只是白色矩形。changelog说一些关于“通过”模式https://github.com/SeleniumHQ/selenium/blob/master/java/CHANGELOG ,我试图禁用,但似乎没有任何工作。

这是我的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 

我不认为enablePassThrough是一个有效的环境variables。 该configuration从https://github.com/SeleniumHQ/docker-selenium/blob/master/NodeFirefox/generate_config生成,其中只包含您的NODE_MAX_INSTANCESNODE_MAX_SESSION

但是,在https://github.com/SeleniumHQ/docker-selenium/blob/master/NodeBase/entry_point.sh#L28-L30 SE_OPTS的父基础映像中有一个SE_OPTSvariables。 你可以使用这个来设置-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