集成 Selenium Grid 和 Sikuli API
目前,我正在开发自动化测试框架,该框架与 Selenium Grid 和 Sikuli API 相结合。
我已经实现了一个包含 Selenium 和 Sikuli 功能的库,当我在同一台机器上设置集线器和节点时,它运行良好。然而,这与在机器上运行 Selenium RC 是一样的。
因此,为了实现并行测试,我的下一步是从其他机器启动节点并将它们注册到集线器机器。想法环境是Amazon EC2实例。
中心:Linux box
节点:win server 2008
如果我只是使用仅包含 Selenium 函数的库运行测试,则效果很好。然而,我 收到错误消息
“未设置 X11 DISPLAY 变量,但该程序执行了需要它的操作。”
我应该将 DISPLAY 变量导出到节点的 IP 地址吗?我需要将节点机设置为X服务器吗?如果有许多实例注册到中心计算机怎么办?
对于这个模糊的问题感到抱歉...但是任何关于如何实现这个框架的想法都是值得赞赏的。我正在使用硒网格,因为有很多操作执行图形验证。如果我可以进行并行测试,那将非常有效。
非常感谢您的任何帮助和建议。
Currently, I am working on the automation testing framework, which combines with both Selenium Grid and Sikuli API.
I already implemented a library which includes functionality of Selenium and Sikuli, and it works well when I set up my hub and node on the same machine. However, this is just the same as running Selenium RC on the machine.
So, in order to achieve parallel testing, my next step is to launch the nodes from other machines and register them to the hub machine. The idea environment is Amazon EC2 instance.
Hub: Linux box
Nodes: win server 2008
It works fine if I just ran the tests using the library only contains Selenium functions. However, I
got error message that
"NO X11 DISPLAY variable was set, but this program performed an operation which requires it."
Should I export DISPLAY variable to the node's ip address? And do I need to set the node machine as an X server? What if there are many instances registered to the hub machines?
Sorry for the vague question... but any idea that how to implement this framework is appreciated. I am using selenium grid since there are many action performing graph verification. It would be very efficient if I can do it parallel testings.
Thanks a lot for any help and advice.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
有一个项目旨在在 Selenium Grid 上提供 Sikuli 功能。
https://github.com/sterodium/selenium-grid-extensions
它的工作原理是添加Selenium Grid 集线器和节点上的扩展。
There is a project aiming at providing Sikuli capabilities on Selenium Grid.
https://github.com/sterodium/selenium-grid-extensions
It works by adding extensions both on Selenium Grid hub and nodes.
请参阅我的博客文章,了解如何将 Sikuli 和 AutoIt 等工具与 Selenium Grid 集成。它提供了一种实现上述自动化的理论方法,尽管据我所知,还没有人实现可行的解决方案来演示。
http://autumnator. wordpress.com/2011/12/22/autoit-sikuli-and-other-tools-with-selenium-grid/
顺便说一句,不知道你的X.11 问题开始发挥作用,在转换为 Amazon EC2 部署之前,最好使用带有 Selenium Grid 的本地计算机网络来处理框架。它有助于设计和调试过程,因为 EC2 可能会出现自己的问题,因此您希望首先让最简单的基本网格设置正常工作(非 EC2)。
See my blog post about the topic of integrating tools like Sikuli and AutoIt with Selenium Grid. It provides a theoretical approach to implement said automation, though to my knowledge no one has yet implemented a working solution to demonstrate.
http://autumnator.wordpress.com/2011/12/22/autoit-sikuli-and-other-tools-with-selenium-grid/
On a side note, not sure how your X.11 issue came into play, it would be best you work on the framework using local network of machines with Selenium Grid before you convert to an Amazon EC2 deployment. It helps in the design and debug process as EC2 may present its own issues so you want to have the simplest basic Grid setup working first (non-EC2).