Rails 單元測試,flexmock 0.9.3 發布

fmms 13年前發布 | 6K 次閱讀 Rails

flexmock 0.9.3 發布,新版本增加了 Python 3.3 作為目標測試平臺,可正常處理跨不同方法的 ordered() 期望,支持偽對象,修復了 pytest 2.2 的兼容性問題等等。

FlexMock是一個比較流行的針對Rails單元測試的Mock工具,

安裝方法:$ gem install flexmock

代碼示例:

  require 'test/unit'
  require 'flexmock/test_unit'

class TemperatureSampler def initialize(sensor) @sensor = sensor end

def average_temp
  total = (0...3).collect {
    @sensor.read_temperature
  }.inject { |i, s| i + s }
  total / 3.0
end

end

class TestTemperatureSampler < Test::Unit::TestCase def test_sensor_can_average_three_temperature_readings sensor = flexmock("temp") sensor.should_receive(:read_temperature).times(3). and_return(10, 12, 14)

  sampler = TemperatureSampler.new(sensor)
  assert_equal 12, sampler.average_temp
end

end</pre>

 本文由用戶 fmms 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!