问题标签 [selenium-grid]

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 回答
359 浏览

selenium - seleniumGrid + testNG+ hudson集成有什么材料吗

我在我的项目中使用 selenium RC + TestNG。我也在使用 Selenium - Grid 在多个平台上运行。现在我想将我的项目整合到 Hudson 中。有人可以帮忙吗

0 投票
2 回答
230 浏览

selenium-rc - 在 MS Virtual PC 2007 中运行 selenium RC - Grid 时显示名为 Script Error 的弹出窗口

我正在使用 testNG 套件运行 selenium 网格。当我在 localhost 和其他系统中运行 RC 时运行良好。但是当我在 Microsoft Virtual PC 2007 中运行时,系统会显示一个名为“脚本错误”的弹出窗口。请检查附件图片

我已经关闭了 IE 浏览器的弹出窗口拦截器设置,但仍然是同样的错误。我被困在这一点上,请帮助我

0 投票
2 回答
2668 浏览

parallel-processing - 集成 Selenium Grid 和 Sikuli API

目前,我正在开发自动化测试框架,它结合了 Selenium Grid 和 Sikuli API。

我已经实现了一个包含 Selenium 和 Sikuli 功能的库,当我在同一台机器上设置集线器和节点时它运行良好。但是,这与在机器上运行 Selenium RC 是一样的。

因此,为了实现并行测试,我的下一步是从其他机器启动节点并将它们注册到集线器机器。想法环境是 Amazon EC2 实例。

集线器:Linux 盒子

节点:win server 2008

如果我只是使用仅包含 Selenium 函数的库运行测试,它工作正常。但是,我收到错误消息

“没有设置 X11 DISPLAY 变量,但该程序执行了需要它的操作。”

我应该将 DISPLAY 变量导出到节点的 IP 地址吗?我需要将节点机器设置为 X 服务器吗?如果有许多实例注册到集线器机器怎么办?

很抱歉这个模糊的问题......但是任何关于如何实现这个框架的想法都值得赞赏。我正在使用 selenium 网格,因为有许多执行图形验证的操作。如果我可以进行并行测试,那将非常有效。

非常感谢任何帮助和建议。

0 投票
3 回答
535 浏览

selenium-rc - 如何从通过 Hudson 插件运行的硒网格启动特定的 RC?

我的环境:

  • Hudson -> 带有 selenium 网格插件 - 安装在 linux 机器上
  • Hudson -> 有 4 台机器 ( 1 linux , 3 Windows ) 作为节点
  • TestCases -> MyTestCases 在 TestNG 中

在 Hudson 服务器中,我检查了 selenium 控制台http://localhost:4444/console。它显示了使用随机端口号注册为 RC 的节点机器。我运行测试(测试被配置为另一个作业)。测试在任何一台机器/RC 上运行。

但我想在特定环境 Machine 1 / Machine 3 上执行测试。我怎样才能做到这一点?我必须如何更改服务器上 selenium-grid 上的配置文件才能执行此操作?

0 投票
1 回答
2499 浏览

ruby - Selenium Grid 2 使用 Ruby 进行测试

我最近发现了 Selenium Grid 2。我之前使用过 Grid、IDE 和 RC,编写测试非常简单,尤其是使用原始 Grid。(也许是因为我从未使用过网络驱动程序?)

Grid 2 文档在编写实际测试方面仍然很不稳定。

任何人都可以让我开始使用 Ruby 测试吗?也许只是一个简单的例子就可以了。

还有 DeepTest 与 Grid 2 的集成……或类似的东西。

提前致谢。

0 投票
1 回答
1833 浏览

ruby - Selenium 2 Webdriver + Grid2 + Ruby 需要帮助

我一直在玩各种版本的 Selenium,现在 Selenium 2 已经发布,我决定深入研究 Webdriver 并将它与 Grid 一起使用。(Ruby 中的测试)

我的问题是我似乎无法完成这项工作。

在我的 Mac 上,我启动了 Grid hub:

在我的 Windows 7 上,我启动 Webdriver:

然后我运行一个简单的 Ruby 测试,它只是远程打开 Internet Explorer 并在 Google 上运行:

这是由以下人员运行的:

这给了我一个冗长的抱怨,我想这是其中最重要的一点:

我一定错过了一些非常基本的东西。有人可以帮帮我吗?

提前致谢!

0 投票
2 回答
4908 浏览

phpunit - 将 Selenium Grid 2 与 PHPUnit 测试一起使用

我最近为一个相当复杂的项目编写了很多 selenium 1 测试。它们都是用 php 编写的,可以在 selenium-server 1.0.7 上顺利运行。

显然,使用 firefox 5(和今天发布的 6)selenium 服务器 1.0.7 不再工作了。我试过了,但服务器只是打开空白窗口。

现在我正试图让这些测试在硒网格上运行。我设法使用grid v1获得了一个集线器和几个远程控制,但它们只打开空白窗口,就像旧服务器一样。所以我想我需要升级到 grid v2。

出于某种原因,我可以让客户端连接到集线器,但如果我尝试对集线器运行测试,它似乎根本无法连接(“PHPUnit_Framework_Exception:无法连接到 Selenium RC 服务器”)。我尝试在 selenium 独立服务器 2.4.0 上运行它们,这似乎确实有效。

我在一个论坛上读到,selenium grid 2 不能与 phpunit 一起工作(还没有?)。

如何让我的测试在网格上运行?phpunit 连接服务器缺少什么?我很感激任何帮助!

我按如下方式设置集线器:

还有两个奴隶:

到目前为止,一切似乎都在工作,因为我在网格控制台(http://localhost:4444/grid/console)中看到了两个节点。

所以这是我在代码中所做的所有初始化:

此代码仍然适用于独立服务器 2.4.0。正如预期的那样,它在最后一行失败。

异常似乎是在 PHPUnit/Extentions/SeleniumTestCase/Driver.php 中抛出的。似乎有问题。

当我在浏览器中请求http://localhost:4444/selenium-driver/driver时,我得到:

知道如何解决这个问题吗?我是否需要更改该网址?

0 投票
1 回答
1152 浏览

internet-explorer - 需要结合 *iehta 和 *iexploreproxy 以使 Selenium Grid 工作

最近,我一直在尝试将设计用于 Linux 上的 Firefox 的 Selenium 1 测试用例适应 Windows Vista 上的 Internet Explorer。为了测试它,我在 Windows Vista 机器上安装了非网格版本的 Selenium,发现“*iexplore”和“*iehta”启动器无法工作。"*iehta" 和 "*iexplore" 在运行它们的 .start() 命令时似乎都进入了无限循环,而 .start() 函数永远不会返回。两者还打开一个 Internet Explorer 窗口,通向 localhost 计算机上 C:/Users/($the current user's account)/AppData/Local/Temp 中的一个位置,该位置似乎是与某种 IE 配置文件相对应的空白页面.

“*iexploreproxy”在独立的 selenium 服务器上工作得很好,远程控制都在同一台机器上运行。但是,当尝试连接到 Selenium Grid 上的持续集成 Linux 集线器时,“*iexploreproxy”不再起作用。在 Selenium Grid 上运行时,“*iexplore”会打开(然后立即关闭)一个 IE 窗口,大概是 Selenium 遥控器。"*iehta" 打开 Selenium 远程控制,但从不将会话 ID 返回到集线器,从而允许集线器开始传输 Selenese 命令,从而导致在独立 Selenium 服务器上遇到的相同行为。

但是,如果“*iehta”被手动停止(例如在与集线器相同的机器上打开一个 python 终端,从集线器请求一个运行“*iehta”的 Selenium 实例,称为“sel”,运行 sel.start(),然后在生成的无限循环期间按 control-C,如果网格的另一个遥控器有“* iexploreproxy”可用,则集线器可以在“* iexploreproxy”上运行可用于测试目的的 Selenium 实例。一些奇怪的差异我'我们注意到,在“*iexploreproxy”上,多个连续的 Selenium 实例似乎在它们之间共享 cookie 和基本 HTTP 身份验证登录数据(在 Firefox 上,我需要在每次运行 Selenium 时重新输入这些密码),并尝试访问外部域一个“*iehta”最初被分配失败(IE,如果我要求“*iehta”在http://development.place.com,尝试在http://stagingarea.place.com中启动另一个浏览器会导致 Selenium 失败。)同样,运行 selenium.stop() 时 Internet Explorer 窗口不会关闭,而在这种情况下,所有 Firefox 窗口都会关闭。据我所知,*iehta 正在创建 *iexploreproxy 然后使用的 Internet Explorer 配置文件。

是否有人比我更熟悉 IE 上的 Selenium,或者了解 *iehta 的内部工作原理,知道如何合并 *iehta 调用和 *iexploreproxy 调用,这样就不必使用这种脆弱的解决方法?我不完全理解这一事实意味着我的所有测试都必须手动运行,我宁愿避免这样做,这样我就可以重新开始研究新功能。

0 投票
1 回答
436 浏览

selenium - Selenium 无法单击 magento 模块详细信息页面中的选项卡

我正在尝试在 magento 网格及其详细信息页面中使用 selenium 1.0.9 版验证数据。

首先,我浏览了 Selenium IDE 从登录页面到模块详细信息页面,然后单击那里可用的选项卡。最终,IDE 会生成 PHP 代码,因此我将代码放在适当的位置。

注意:在这里,我单击了两个选项卡,以便将事件记录到 selenium IDE 中。

然后,我使用以下命令从命令提示符运行代码:

我得到了错误(类似):

我修改了代码并尝试在执行单击上面的链接之前打开详细信息页面,即“test_tabs_form_section”,我得到了同样的错误。

另一个奇怪的是,如果我验证详细页面的任何文本并删除调用单击模块详细信息选项卡的代码,它是有效的,不知道为什么?

但我真的很想打开详细信息页面并单击选项卡,使用 xpath 获取表单元素值并验证数据。

有人可以帮我吗?

任何帮助或建议都是非常可观的!

期待收到来自 stackoverflow 极客的消息!

谢谢

0 投票
2 回答
9970 浏览

java - 在 Ubuntu 上启动 Firefox 时 Selenium 挂起

我的最终目标是让 Selenium 在 Jenkins 内部运行。我的 Jenkins 安装在 Ubuntu 虚拟机中运行。

在 jenkins selenium 设置出现一些问题(源于运行 jenkins 的用户的权限)后,我切换到从命令行运行命令以查看发生了什么。我的目标是让测试在这里运行,然后让它在 Jenkins 中运行。

这是我目前正在使用和看到的命令和响应。

Ubuntu 虚拟机不是无头实例,因此我不需要安装 xvfb(正如在同一主题的一些博客文章中提到的那样)。

在此问题之前,我遇到了 Firefox 配置文件的问题,我使用我在此处回答的方法修复了该问题:Jenkins can't launch selenium tests (Timed out waiting for profile to be created)

Firefox 在使用“应用程序”菜单中的快捷方式启动时可以正常打开,并且只需在命令行上输入“firefox”即可。

我尝试以多种方式将完整路径添加到 Firefox 应用程序:

  • 在命令 '... *firefox /usr/lib/firefox-3.6.20/firefox.sh ...” 导致“找不到 HTML 套件文件:/home/resn/http:/google.com :" - 似乎将 firefox 路径与下一个参数混淆了
  • 在命令中,没有空格 '... "firefox/usr/lib/firefox-3.6.20/firefox.sh ...' 导致

    “看到 HTML 套件异常:java.lang.RuntimeException:不支持浏览器:*firefox/usr/lib/firefox-3.6.20/firefox.sh

    支持的浏览器包括:*firefox"

  • 在 grid_configuration.yml ' ...浏览器中:“*firefox /usr/lib.firefox-3.6.20/firefox.sh”。这没有任何影响。

此外,由于进程只是挂起,实际上并没有失败,因此不会创建日志文件 (/tmp/selenium.log)。

非常欢迎任何想法、提示或调试建议!