我即将将我的测试自动化语言从 Java 更改为 Ruby(我有一份新工作,其中 Ruby 更适合技术堆栈)。
我在 Java 和 Webdriver 方面有很多经验,但可以看到 Watir 和 Capybara 等包装器在 Ruby 中的使用似乎比直接访问 Webdriver API 更多。
我对使用这样的库的担忧是性能。我通常会尝试将 3rd 方网格(例如 Saucelabs)集成到我的测试框架中,但我了解到 Selenium Web 元素对象的缓存很重要,因为不断查找元素会对性能产生影响。
如果我使用 Capybara 等库,我会失去控制缓存策略的能力吗?我之前调查过 Geb,发现该框架不断地重新创建 web 元素而不是缓存,并且在改变这种行为方面显得不灵活。
我是否担心这些库可以帮助您避免编写样板代码但以性能为代价有效?