将旧项目升级为水豚

时间:2017-08-26 07:33:05

标签: ruby selenium cucumber capybara

我们现在正在使用Ruby,Cucumber和Selenium来执行我们的集成测试。

目前我们希望提高测试质量,因此我们希望使用Capybara。

既然我们所有的方法都需要为此重写,我们认为可能有人已经这样做并为selenium webdriver编写了一个包装器,Capybara在那里完成了这项工作。

例如:

包装器应替换以下内容:

driver.navigate_to "/home"

类似

visit "/home"

关键是,我们不想重写所有代码,因为我的视图中的功能完全相同,编写驱动程序的包装器并不困难,驱动程序会自动执行此操作。意思是:navigate_to方法只调用一个访问方法,我很高兴。

我必须自己写这个,还是已经完成了?

非常感谢!

1 个答案:

答案 0 :(得分:1)

不,没有现成的包装器。

你似乎错过了Capybara本身就是selenium-webdriver的包装器的事实,所以你要求在selenium周围的包装器周围使用兼容硒的包装。如果你所做的只是用Capybara命令模仿现有的selenium命令,你就不会从Capybara获得任何东西,所以它毫无意义。听起来你的团队会更好地离开现有的测试,使用Capybara编写所有新测试,并且现有的测试需要更改/维护重写它们以使用Capybara内置的等待/重试和更友好的API。