问题标签 [google-chrome-headless]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2266 浏览

google-chrome - 无头谷歌浏览器 - 更改时区

是否可以启动无头谷歌浏览器并以编程方式设置时区进行测试?它似乎没有作为shell switch存在。

我希望能够运行具有不同时区的测试,以确认前端正在正确处理时区转换。

0 投票
1 回答
1915 浏览

google-chrome - google-chrome --headless --screenshot 在 Centos 7 上因消息“无法获取下载目录”而崩溃

我正在尝试使用 Centos 7 框中的 Google Chrome 59 (Google Chrome 59.0.3071.86)的新功能通过命令行获取屏幕截图,但我收到一条错误消息,提示无法获取下载目录。我试图在我的主文件夹中创建目录但没有成功!有什么建议么?

这是我的文件夹结构:

0 投票
7 回答
27661 浏览

javascript - 打印到 PDF 时更改默认页眉/页脚

我正在尝试使用 Google Chrome 代替 PhantomJS 将 HTML 呈现为 PDF。到目前为止,它对我来说效果很好。我唯一的问题是我没有找到任何方法来翻译以下 PhantomJS 代码:

格式日期与问题中的功能相同如何格式化JavaScript日期

但是我还没有找到一种方法可以在无头的谷歌浏览器中复制这种行为。我正在使用来自https://github.com/cyrus-and/chrome-remote-interface的 Chrome 远程接口 (CDP)

这是我的 chrome 远程接口代码的大纲:

我得到的 PDF 很好,但只能得到默认的 Chrome 页眉和页脚。有什么办法可以修改它们?

注意:我意识到我可以在我的页面中使用 JavaScript 将元素附加到每个页面的底部,但我更喜欢在导出/打印时更改浏览器附加的页脚,因为我发现它更可靠正确放置并且不会导致页面中其他 div 的任何奇怪的重新流动。

0 投票
4 回答
9316 浏览

ruby - 如何将无头铬与水豚和硒一起使用

铬版本:59.0.3071.104

使用 Cucumber、Capybara、Selenium 通过 Headless Chrome 实现自动化测试。

功能/支持/env.rb

运行黄瓜测试时,它说:

警告 Selenium [DEPRECATION] :args 或 :switches 已弃用。请改用 Selenium::WebDriver::Chrome::Options#add_argument。

将 capybara 和 selenium 与 Headless Chrome 一起使用的正确方法是什么。谢谢你。

编辑 1:我使用Ruby-BindingCapybaraWorking Example尝试了以下操作。但它也给出了错误。

错误:

编辑 2:下载最新的ChromeDriver 2.30

使用ChromeDriver Capabilities & Chrome Command Line Switches中的示例我得到一个错误。

网络::ReadTimeout (网络::ReadTimeout)

0 投票
3 回答
1528 浏览

angularjs - 在 docker 中运行的量角器返回不存在但在 localhost 中的元素

我一直在尝试在 Docker 中运行一些量角器测试,但我发现了一个我自己无法解决的问题。Protractor 表示该元素在 Docker 的网页中不存在,但在 localhost 中存在。此外,网页的 CURL 暴露了 HTML 元素(如您所知,不是 Angular 组件中的 HTML),但仍然找不到该元素。

首先,测试在本地主机上正常工作:

和两个测试

配置文件如

Docker 链接到暴露于端口 80 的 docker-nginx 服务器,因此我们可以检查项目是否正确运行(确实如此)。当我运行 docker 命令时:

我可以使用 CURL 访问网页,它会在浏览器中显示网页 HTML(实际上与本地主机中的 curl 返回的结果相同)但不知何故量角器在 URL 中找不到元素(我已经尝试获取多个茉莉花功能的元素,仍然会发生同样的问题)。

本地主机PROTRACTOR_RESULT

DOCKER PROTRACTOR_RESULT

谢谢!

编辑1:

在 docker 中使用它会产生错误,但不会在 localhost

错误(因为我是新手,我不能粘贴超过 2 张图片,所以我在这里粘贴代码)

编辑2:

使用

我已经打印了显示组件的 html...但不是内部 html(它放置了正确的 id 和实际的输入元素)

我可以运行一个通过.model 搜索元素的测试,但它不是指内部输入,因为它应该使用 by.id。

问题仍然很清楚,无法获取角度组件的内部 html

编辑3:

我已经测试了这个页面https://docs.angularjs.org/examples/example-heroComponentSimple/index.html并暴露了 HTML,它似乎可以读取组件的内部 html。

暴露的 HTML:

考试:

0 投票
1 回答
6474 浏览

pdf - 如何在 Chrome Headless 模式下指定 PDF 输出路径

此页面显示您现在可以使用 chrome 使用以下 CLI 命令生成网页的 PDF:

但是,它没有说明如何指定输出路径。

你如何指定输出路径?

0 投票
0 回答
162 浏览

javascript - 限制生成的无头 Chrome 进程的数量

我一直在使用chrome-launcherchrome-remote-interface从 JS 渲染页面生成静态图像,如下所示:

它运行良好,但这是响应传入的 http 请求而发生的,我不想产生无限的 chrome。如何最好地跟踪和限制生成的进程数量,记住这是一个每次都重新运行的独立节点脚本?

0 投票
1 回答
79 浏览

javascript - CLI 在 phantomjs 或 chromium headless 中加载 html 并获取任何 javascript 错误

我有一个自包含的非交互式 html 工件,我想以自动化的单个 CLI 调用方式检查 javascript 错误,以便它可以与我的基于 java 的功能测试集成。我只想将 html 文件发送到一些无头浏览器并得到任何错误,例如 F12 控制台中的错误。优选地,这不涉及服务器。

0 投票
1 回答
3542 浏览

selenium - 无法从 Selenium 无头打开 Chrome

我在这里使用 maven。这是我的 Selenium 代码:

当我运行“mvn test”时,它会以 GUI 模式启动 chrome。但它应该以无头模式打开。我有chrome vesrion 59.0OS X yosemite(10.10.5)chromedriver 2.30Selenium 3.4.0

0 投票
4 回答
13850 浏览

java - 如何使用 chrome 选项将无头 chrome 的窗口大小设置为全屏?

执行 UI 测试时,我收到一个错误,即 selenium 不支持 chromedriver 自动调整窗口大小,这导致测试失败。

有没有办法使用 chrome-options 来设置它headless-chrome

我尝试了以下方法,

此外,替换"--start-maximized""--start-fullscreen""--kiosk"

但以上都不适合我,唯一适合我的选择是"--window-size=width,height".

我不想硬编码宽度和高度的值,有什么方法可以设置全屏吗?