首页 > 解决方案 > 在 JavaScript 中访问 Chrome 选项(可选:来自 Galen 测试)

问题描述

我正在使用 Galen(一个用于测试 HTML 页面布局的 JS 工具)。它是从无法使用 ES6 JS 的 .js 文件配置的 :-(

我需要ChromeOptions从 Chrome 驱动程序加载/修改,但我不知道如何访问它。我看到很多关于如何设置选项的示例,但是当我这样做时:

var options = new chrome.Options();

我收到一条错误消息:ReferenceError: "chrome" is not defined 我尝试过使用require()load()功能,但使用 require 我得到了类似的未定义错误(我认为是 ES6 问题),并且负载我似乎无法将它指向一个有效的脚本,我尝试过:

load("../../npm_modules/selenium-webdriver")
load("../../npm_modules/selenium-webdriver/chrome")
load("chrome")
etc.

似乎这不是 Galen 使用的 webdriver,但我如何找到它正在使用的 webdriver?load()用什么来加载它的?

标签: javascriptecmascript-6selenium-chromedriverchrome-optionsgalen

解决方案


Galen 使用 Rhino JS 引擎。这意味着您可以直接从配置它的 .js 文件中调用 Java 类,从而允许这样的答案:

importClass(org.openqa.selenium.chrome.ChromeOptions);
importClass(org.openqa.selenium.chrome.ChromeDriver);

var options = new ChromeOptions();
options.addArguments("--headless");
var driver = new ChromeDriver(options);

诀窍是知道如何从 Selenium Chrome 驱动程序中导入您需要的类!

在 Galen 的 Google Groups 网站上找到了这个。使用 GitHub 上记录的 Selenium HQ API 来进一步扩展我正在做的事情。HTH。


推荐阅读