0

次のようなメソッド呼び出しでテストを実行したいと思います。

call_to_method_1 param1

このメソッドは、たとえば次のように発生する可能性があります。

raise msg1 if ...
raise msg2 if ...

私の質問は、RSpecを使用してmsg1、msg2例外メッセージを使用して例外をテストする方法です。

4

1 に答える 1

2
describe SomeClass do
  let(:some_object) { described_class.new }

  it 'should raise an exception' do
    some_object.some_method('param').should raise_error(ExceptionClass, "exception_message")
  end
end

のインスタンスにraise "message"なります。ExceptionClassRuntimeClass

ただし、メッセージに依存するのではなく、特定の種類の例外を発生させる方がよいでしょう。

于 2012-12-06T21:14:01.217 に答える