Cabypara为什么不能调用#assert_current_path?

时间:2015-10-28 05:15:20

标签: ruby-on-rails capybara minitest

我想比较预期路径和当前路径,以证明测试是否通过

我找到了方法Capybara :: SessionMatchers#assert_current_path。我想这种方法可以满足我的要求。

但是当我写道:

page.assert_current_path()

在我的测试中,错误显示:no #assert_current_path method

我看到Capybara::Session已包含Capybara::SessionMatchers。我很困惑为什么我不能调用#assert_current_path方法。 Capybara是否具有比较当前路径和预期路径的功能?因为使用页面内容来证明结果是不稳定的。

提前致谢!

2 个答案:

答案 0 :(得分:1)

确保您正在运行Capybara 2.5+ - 尚未添加assert_current_path匹配器直到2.5.0

page.assert_current_path('/expected/path')

答案 1 :(得分:-1)

试试这个

uri = URI.parse(current_url)

如果您需要检查其他参数

"#{uri.path}?#{uri.query}".should == your_path(:your_params => 'your_value')