问题标签 [ghostdriver]

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 投票
4 回答
4619 浏览

java - 设置 PhantomJSDriverService.PHANTOMJS_GHOSTDRIVER_PATH_PROPERTY

我很难PhantomJSDriverService.PHANTOMJS_GHOSTDRIVER_PATH_PROPERTY在我的 Java 程序中正确设置功能,以便将来自 github 的最新版本的 Ghostdriver与我安装的 phantomjs 版本 (1.9.1) 一起使用

这是我在我的 Java 程序中所做的

selenium 驱动程序正确启动,如果我没有设置PhantomJSDriverService.PHANTOMJS_GHOSTDRIVER_PATH_PROPERTY,但我在测试中遇到了一些错误,这些错误应该在 ghostdriver 的当前开发人员分支中修复。所以我遵循了这个建议,并设置了 ghostdriver 的 cuttent github 版本。

但是,现在我收到以下错误:

我的问题是,有人知道如何解决这个问题吗?我必须以某种方式更改config.jsghostdriver 才能使其工作吗?

信息:我也将其交叉发布到 ghostdriver 的 github 问题

0 投票
1 回答
1721 浏览

c# - 如何在 phantomjs 中禁用外部 javascript 执行/站点请求

我正在尝试在寻找问题的网站上运行一些测试。

作为记录,我在 C# 中使用 phantomjs 和 selenium 中的 ghostdriver

一切正常,但我想加快速度。检查提琴手中的标题,很多时间都花在对外部网站(facebook / twitter)的外部调用上,以获取所有网站这些天似乎认为是个好主意的社交插件:-\

我不需要测试这些功能,所以我试图禁用外部站点调用,这应该会加快我的测试速度。

幻影中有没有办法获得noscript / ghostery在firefox中给出的效果?

0 投票
2 回答
4274 浏览

c# - 设置 PhantomJSOptions.AddAdditionalCapability 以引用 ghostdriver 的本地副本

phantomjs 中的 ghostdriver 似乎存在一个问题,即当单击按钮后 HTTP 调用失败时,整个事情都会失败。

https://github.com/detro/ghostdriver/issues/202#issuecomment-19808784

该问题已得到修复,并且在主分支中。给出了有关如何引用新文件以及不使用 phantomjs 中包含的 ghostdriver 的说明。

Java 在这里: https ://github.com/detro/ghostdriver/issues/243

并且似乎有一个值

但这在 C# 中不存在

所以试过

但不行,phantomjs 中的输出仍然显示旧版本


EDIT1:这与可以设置的 phantomJS 的路径不同

我试图告诉 phantomjs 使用本地版本的 Ghostdriver,而不是 phantomjs 本身包含的 ghostdriver。


EDIT2:所以在这里挖掘Java代码文件 https://github.com/detro/ghostdriver/blob/master/binding/java/src/main/java/org/openqa/selenium/phantomjs/PhantomJSDriverService.java

我找到了设置 Java 静态字符串的代码

这意味着我在上面设置错误,但是在更正后仍然不起作用

虽然越来越热......

0 投票
2 回答
1389 浏览

java - 配置 PhantomjsDriver 以运行 selenium 测试用例

我是 selenium webdriver 中的这个 PhantomjsDriver 的新手。我需要在没有 GUI 的服务器中运行我的 selenium 脚本。请任何人都可以告诉我如何实现这一目标。我需要从如何配置 Phantomjs 驱动程序、在服务器中的使用和休息开始。下面是我通过 GUI 运行的 selenium 代码,现在我必须在没有 GUI 的服务器中运行这些案例。我必须做哪些修改才能完成上述任务。

0 投票
2 回答
4012 浏览

java - 从 Phantomjs 驱动程序开始

任何人都可以建议我在 java 中启动或配置 phantomJs 驱动程序的良好文档或步骤,以便我可以在远程服务器上运行我的测试用例。

0 投票
2 回答
15812 浏览

python - Phantomjs Selenium WebDriver 中的自定义标头

据此,现在可以修改标题。Atm 我需要在 PhantomJS webdriver 中修改 Accept-Language。此代码不起作用

是否有可能以某种方式配置 Phantomjs 以发送我的标头?我不在乎在哪里:在 ghostdriver、phantomjs 或 phantomjs-webdriver 中。

0 投票
0 回答
5358 浏览

selenium - PhantomJS 在使用代理运行测试时抛出错误(JUnit 测试)

我正在 PhantomJS 1.9.1 和 GhostDriver 1.0.4、JDK 1.7 和 Win 7 操作系统中运行基于 Java 的 Selenium 测试。

我也在使用 BrowserMob 代理,这样我就可以捕获网络流量来验证一些网络调用。下面给出的是我的代码的样子。

然后我执行我的测试。有时测试通过没有任何错误,有时我得到以下 2 个不同的错误。我不确定是什么原因造成的。

如果你能帮助我或者给我一个关于这里可能有什么问题的线索。如果需要,我可以提供更具体的信息。

这是我不时遇到的另一个例外。

0 投票
1 回答
3170 浏览

selenium-webdriver - 如何使用 Selenium Webdriver 和 PhantomJS 进行基本身份验证?

我在 Mac 10.6.8 上使用 Selenium Server 2.33.0、Selenium Webdriver JS binding 2.34.0(npm 包“selenium-webdriver”)和 PhantomJS 1.9.1 进行身份验证时遇到问题。我还尝试了其他 JS 绑定“webdriverjs”和“wd”,结果相似,所以我认为这个绑定没有问题。

我使用这个设置Webdriver:

然后我在 Selenium Server 日志中看到这个输出:

我可以看到协商的功能包含我指定的用户和密码。但是,当我尝试在使用 http 基本身份验证的网站中打开页面时,身份验证失败:

如果我对没有身份验证的本地主机网站运行我的脚本,它工作正常。如果我使用 Firefox(不是通过 Selenium)查看远程网站,我可以进行身份​​验证并查看主页。

我还尝试使用“-w”在 Webdriver 模式下运行 PhantomJS,我得到了类似的结果。

如果我用 phantomjs 运行这个脚本,它就可以工作:

我从这个帖子中复制了这个脚本。我发现使用 1.9.1 的用户名和密码可以正常工作,我不需要设置 customHeader。我在我的 Selenium 脚本中尝试了一个 customHeader,但它没有任何区别。这可能是 GhostDriver 的问题。

有没有人能够得到这个工作?

0 投票
1 回答
4990 浏览

java - 我需要 ghostdriver 在 java 中使用 selenium 和 phantomjs 吗?

在过去,我曾在 python 中使用过 selenium 2 和 phantomJS,似乎有很多支持。不过我现在想用java试试这个组合,有人试过吗?我需要使用ghostdriver吗?

0 投票
0 回答
661 浏览

java - 使用java运行ghostdriver会出错

我正在使用远程 ubuntu 机器来运行我的测试用例。我用 github 配置了 jenkins。我可以使用我的 windows7 机器使用 putty.exe 访问这台机器。我想使用 phantomjs 运行无头测试用例(调度作业),即当我的 Windows 机器关闭时,测试将在始终开启的远程 ubuntu 机器上运行。

现在的问题是,当我现在构建时它给出了错误:

我的 setup() 方法和 pom 看起来像:
setup()


pom.xml

编辑: HasInputDevices 的问题已通过添加 selenium 2.34.0 jar 依赖项得到解决
但是在运行上面的测试时它仍然给出错误: