在我的 rspec 集成测试中,当我有以下断言时:
assert page.has_content? some_value
如果断言失败,则显示:
MiniTest::Assertion:
Failed assertion, no message given
minitest 文档说“所有断言方法都接受在断言失败时打印的 msg”,但我找不到任何如何指定消息的示例。这些不是有效的语法:
assert("custom fail msg") page.has_content? some_value
assert page.has_content? some_value, "custom fail msg"
最佳答案
尝试:
assert page.has_content?(some_value), "custom fail msg"
假设我已经正确地重现了您的错误,那么您第二次尝试的问题是 Ruby 认为“自定义失败消息”是
page.has_content?
的一个参数。而不是 assert
.在 page.has_content?
的参数周围添加括号应该可以解决问题。
关于rspec - 如何在 Rspec/Capybara 中为断言指定失败消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13847499/