3

未来是否有计划用 mechanize + johnson 取代 selenium 和 watir?

https://github.com/jbarnette/johnson/wiki

http://wiki.github.com/tenderlove/mechanize

4

2 回答 2

3

目前,围绕 celerity 的势头似乎最大,它是“orip”提到的围绕 HtmlUnit 的 Jruby 包装器

还有一个围绕 celerity 的非常简洁的包装器“culerity”,它允许您在正常的机器设置中访问 HtmlUnit(运行 Java/JRuby)。Culerity 是 Cucumber 和 Celerity 之间的桥梁。

这非常适合在 Cucumber 中编写测试,我强烈推荐。

这是更多信息:

http://drogomir.com/blog/2009/6/16/cucumber-and-celerity-testing-unobtrusive-javascript

这是 culerity 示例:http: //github.com/drogus/culerity-javascript-example/tree/master

这是 culerity 项目本身也有很好的例子(和一个很好的安装指南) http://github.com/langalex/culerity/tree/master

关于此设置成熟度的说明:几周前我对此进行了实验。我得到了 culerity 示例,并且运行起来相当容易。

另一方面,我在两件事上遇到了问题:

  • 我希望它通过 Webrat 访问我的本地 Rails 应用程序并遇到了问题——(Webrat 的 culerity 接口在编写时还不够成熟)。
  • 这种方法似乎比通过 Selenium(启动常规浏览器)运行类似测试要慢得多。在我的示例中,硒测试比 culerity 测试快 3-4 倍。

我的一些发现可能是在极端前沿尝试的结果。但是,我仍然认为这将是一种方式,无头浏览器测试将会进行,除了不成熟的 webrat/culerity 界面之外,您可能可以创建一些基于 celerity/HtmlUnit 的不错的测试套件:)

我希望这回答了你的问题。

于 2009-09-02T12:53:21.913 回答
1

有点离题,但您已经可以将HtmlUnit用于支持 JS 的无头浏览器以进行测试。使用 JRuby,您甚至可以继续使用 Ruby。

于 2009-08-30T22:41:03.393 回答