我正在寻找一种工具来对我的 Yii/Node.js 网络应用程序进行功能测试。我首先研究的是 Selenium。该应用程序在 headless Ubuntu 服务器上运行,因此成功设置 xvfb 并运行测试真的很痛苦,并促使我使用另一个工具。 我不断收到的错误是:
Xlib: extension "RANDR" missing on display :0
另一个工具是 Casperjs连同 Phantomjs .除了 5 分钟的设置外,我还编写了一些测试并将所有测试与 Jenkins CI 集成。我真的相信应该有更多这样的工具。所以我觉得短期是赚到了,但长期就怕走入死胡同。你能给我一些反馈吗?我走错路了吗?
我想到的另一件事是在 Windows 机器上设置 Selenium RC 和 Jenkins,并设置所有浏览器。我认为这将使我的测试有一个更好、更准确的视角。
* 我还希望能够进行一些并行功能测试(交互),因为该网站是套接字驱动的。 Selenium 能解决这个问题吗?
最佳答案
首先,如果可以避免,请不要使用 Selenium RC,它已正式弃用,取而代之的是 Selenium Webdriver(也称为 Selenium 2)。
关于 headless - Webdriver 可以很容易地运行在 HtmlUnit 之上还有PhantomJS - 两者都应该立即工作。
如果您想在实际浏览器上运行测试,人们也已经成功地在 headless 系统上运行它,但正如您所说,这很痛苦。相反,您可以在不同的机器上远程运行测试,由您的 headless 服务器控制所有这些测试。
关于testing - 自动化测试 Web 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14787814/