2

我需要处理在 selenium 独立服务器上运行并行测试的经过身份验证的多个用户,并在 nodejs 上发现了两个 webdriver 客户端。有webdriver-jswd-js。哪个更主动、更可靠?有什么经验吗?当节点或硒更新或删除功能时,我有点担心它们会崩溃。

我认为这些软件包中的任何一个都没有提到在每次测试的唯一显示编号上自动启动 Xvfb。那么在驱动浏览器之前启动shell命令来运行xvfb?

以下过程是我试图在 nodejs 中构建的(它本质上类似于 Grid 2,但在 nodejs 的目的是持续集成运行的测试)并为以下任何部分寻找任何包或建议。

  1. 首先使用持久的双向连接(WebSockets 或 HTTP 1.1)对用户进行身份验证

  2. 用户要求在可用硬件节点上运行的启动/队列测试(我将添加更多的 linux 盒子,因此需要一个包来跨“网格”分发并行测试)

  3. 监控正在运行的 selenium 浏览器测试并发送客户端状态更新(例如)运行/停止)

  4. 用户提交的测试需要持久且可访问,以便将来或持续集成(couchdb 或 mysql)

  5. 调度作业以连续运行(例如,每隔设定的时间间隔运行)。

nodejs是不是有点矫枉过正?我应该只关注 Java 的背面吗?

4

1 回答 1

2

https://github.com/LearnBoost/soda

这适用于香草酱实验室/Selenium RC 集成。我想当你在像 Selenium RC 这样的浏览器实例中运行时,websockets 应该可以正常工作,因为页面上的 javascript 被执行。如果您正在对用户进行身份验证,您只需填写任何表单并照常提交(这会触发您的 WS 身份验证)。

我认为 nodejs 并不过分。节点是轻量级的。我不知道我只会为此将节点添加到我的堆栈中,但它肯定很方便,如果你对 javascript 有承诺,那没什么大不了的。

于 2011-06-15T22:49:37.983 回答