23

my_file_spec.rb:

require 'spec_helper'
require 'my_file'

module M
  describe C do
    it 'should print everything' do
      c = C.new
      c.meth.should == "something"
    end
  end
end

my_file.rb:

module M
  class C
    puts "class TEXT" # label1
    def meth
     puts "method TEXT" # label2
     return "something"
    end
  end
end 

出力は次のとおりです。

class TEXT

M::C
  should print everything

Finished in 0.75 seconds
1 example, 0 failures

そして最後に、「label2テストの実行後に-(「メソッドTEXT」)が印刷されなかったのはなぜですか?」という質問です。

PS Ruby192、rspec2

4

1 に答える 1

38

を使用してみてください$stderr.puts "method TEXT"。これは私のために働きます。手動で調べる必要のある出力を持つテストを作成することは悪い習慣と見なされていることに注意してください。しかし、あなたはすでにそれを知っていると思います...

于 2012-08-15T14:04:08.717 に答える