如何从 rspec 测试中提高标准误差?
How to raise standard error from a rspec test?
所以我有一个 rspec 测试,我试图让我的程序验证:
来自 rspec 测试的代码片段:
context '#validate(test_tool)' do
it { expect(test_tool.validate).to raise_error StandardError }
code snippet from test_tool (test_tool是我为了通过rspec测试而写的程序) test_tool里面有多种方法,不过我只是拉出来了rspec 测试正在寻找的一种方法:
def self.validate
raise StandardError
end
我到处搜索。无论我如何尝试引发此错误。我不断收到错误消息。请查看控制台输出片段:
example at ./spec/training_site/spec_test.rb:56 (FAILED - 1)
Failures:
1) MyClass #validate(test_tool)
Failure/Error: it { expect(MyClass.validate).to raise_error StandardError }
StandardError:
StandardError
第 56 行只是第一个代码片段的第 2 行。
基本上,我正在寻找故障排除和/或有关如何完成此操作的示例。
这是正确的规范。您应该使用 {} (方括号),因为您正在等待它引发错误。您使用的简单括号用于值检查。
context '#validate(test_tool)' do
it { expect{test_tool.validate}.to raise_error StandardError }
所以我有一个 rspec 测试,我试图让我的程序验证:
来自 rspec 测试的代码片段:
context '#validate(test_tool)' do
it { expect(test_tool.validate).to raise_error StandardError }
code snippet from test_tool (test_tool是我为了通过rspec测试而写的程序) test_tool里面有多种方法,不过我只是拉出来了rspec 测试正在寻找的一种方法:
def self.validate
raise StandardError
end
我到处搜索。无论我如何尝试引发此错误。我不断收到错误消息。请查看控制台输出片段:
example at ./spec/training_site/spec_test.rb:56 (FAILED - 1)
Failures:
1) MyClass #validate(test_tool)
Failure/Error: it { expect(MyClass.validate).to raise_error StandardError }
StandardError:
StandardError
第 56 行只是第一个代码片段的第 2 行。
基本上,我正在寻找故障排除和/或有关如何完成此操作的示例。
这是正确的规范。您应该使用 {} (方括号),因为您正在等待它引发错误。您使用的简单括号用于值检查。
context '#validate(test_tool)' do
it { expect{test_tool.validate}.to raise_error StandardError }