我想将JSTestDriver与jenkins-CI集成。问题是生成服务器没有显示。有没有办法无头运行浏览器?
谢谢
从Linux上的版本55到Windows和macOS上的版本56,Firefox现在有了内置的无头模式。
目前(2017年9月),我正在使用基于GNU/Linux的发行版,带有Firefox 55,并且像这样的控制台命令工作正常:firefox --无头 http://www.wikipedia.org
,这不是很有用的东西,但它有效,因为我看到Firefox的相应操作系统进程一直在运行。
随着时间的推移,这个特性会逐渐改进,所以推荐阅读官方的开发者文档,特别是对于那些对自动化测试和持续集成计划感兴趣的人。
Google Chrome now(Mac和Linux的Chrome 59,Windows的Chrome 60)内置了无头模式。它可以跨平台工作,不需要对显示设备、虚拟机或类似的东西进行任何改动。你可以在这里找到Eric Bidelman的一篇很棒的入门文章,但这里有最关键的几点:
您必须使用 ---headless
标志启动 Chrome 二进制文件(在 macOS 上,它位于 Contents/MacOS
目录中的 Google Chrome.app
捆绑包内)。目前还需要添加 --disable-gpu
标志,因为 GPU 加速在无外设模式下无法正常工作。
chrome --headless --disable-gpu [url/path/flags...]
与标准的非无头Chrome一样,如果由--telted-debug ing-port=[SOME_PORT]
标志启用,您的测试运行器可以使用开发工具接口与Chrome通信。但是,如果您只是想自己快速测试它,您可以在加载后使用--Screshot
或--dip-dom
标志来检查页面的内容。
chrome --headless --disable-gpu --dump-dom https://stackoverflow.com/
如果你的服务器Linux,如前所述,你不能运行IE。但是你可以运行其他浏览器,比如火狐。诀窍是在你的Jenkins服务器上安装XVFB,这样火狐就可以无头运行。我用过这个设置,它运行得很好。
http://www . alittle madness . com/2008/03/05/running-selenium-headless/
问题内容: 我想在无头模式下为所有3种浏览器Chrome,Firefox和IE运行脚本 以下是Chrome的代码: 注意:其工作正常 Firefox: 注意:其工作正常 IE浏览器: 同样,我想在IE中使用选项执行 问题答案: IE不支持无头模式(因为如今IE尚未接受任何形式的更新或改进。)。 但是您可以使用trifle.js,这是一种浏览器,可以将其以无头模式模拟某些IE版本,因为它被编码为Ph
问题内容: 我有5个FF,Chrome,IE,Opera和Safari插件/扩展程序。 如何识别用户浏览器并重定向(一旦单击安装按钮)下载相应的插件? 问题答案: 谷歌浏览器可靠检测通常会导致检查用户代理字符串。这种方法不可靠,因为欺骗这个值很简单。 仅在确实需要时才使用浏览器检测方法,例如显示特定于浏览器的安装扩展说明。尽可能使用特征检测。 可靠性分析 在先前的方法依赖于渲染引擎的性质来检测浏览
使用: Angular CLI在Chrome中默认运行测试,这很好,但是如果我需要在仅控制台环境(无头浏览器)中运行它们呢? 如果我可以在每次运行它时指定是否想要无浏览器,那就太好了,所以类似于: 编辑: 运行PhantomJS我得到了以下信息: PhantomJS 2.1.1 (Linux 0.0.0)错误类型错误:useValue,useFactory,数据不可迭代!http://localh
我有FF、Chrome、IE、Opera和Safari的5个插件/扩展。 我如何识别用户浏览器并重定向(一旦一个安装按钮已经被点击)下载相应的插件?
问题内容: 我正在研究用于网络抓取的python脚本,并且没有使用Chromedriver作为软件包之一。我希望此操作无需任何弹出窗口即可在后台运行。我在chromedriver上使用了“无头”选项,它似乎在不显示浏览器窗口的情况下完成了工作,但是,我仍然看到.exe文件正在运行。查看我在说什么的屏幕截图。屏幕截图 这是我用来启动ChromeDriver的代码: 我尝试做的事情是将选项中的窗口大小
我使用的是Python2.7