Capybara调用#assert_current_path时出现Minitest错误?

问题描述 投票:1回答:2

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

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

但是当我写信时:

page.assert_current_path()

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

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

提前感谢!

ruby-on-rails capybara minitest
2个回答
2
投票

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

page.assert_current_path('/expected/path')

-1
投票

尝试一下

uri = URI.parse(current_url)

如果您需要检查其他参数

"#{uri.path}?#{uri.query}".should == your_path(:your_params => 'your_value')
© www.soinside.com 2019 - 2024. All rights reserved.