我在一个Rails3.2应用程序中有一些需要由用户的USER_AGENT驱动的功能。基本上,对于某些较旧的浏览器,我需要以不同的方式呈现页面。
如何使用水豚/黄瓜测试我的视图是否正确响应?
我看过这篇文章,但它看起来并不适用于最新的水豚--它基本上破解了水豚存根环境参数的方式:
http://blog.sparqcode.com/2011/03/07/custom-user-agent-strings-with-cucumber-and-capybara/
我想要的是一个黄瓜步骤的定义,如下所示:
When /^I visit the page with an unsupported browser$/ do
user_agent = "Mozilla/5.0 (X11; U; Linux i686; pl-PL; rv:1.9.0.2) Gecko/2008092313 Ubuntu/9.25 (jaunty) Firefox/3.8"
# do something here that mimics the user arriving on the page with this USER_AGENT
end发布于 2012-04-14 00:05:46
如果你正在使用火狐来运行你的测试,你可以用你喜欢的任何USER_AGENT创建一个定制的驱动。参见this answer。
一旦你创建了一个自定义的驱动程序,你就可以在运行场景时使用它,只需用驱动程序名称来标记场景,例如,如果你做了Capybara.register_driver :old_browser,你可以将场景标记为@old_browser,Capybara会自动切换驱动程序。如果你不喜欢这样,你可以在任何时候切换驱动程序:Capybara.current_driver = :old_browser。
https://stackoverflow.com/questions/10140948
复制相似问题