【问题标题】:RSpec - Converting Before(:each) do to :letRSpec - 将 Before(:each) 转换为 :let
【发布时间】:2026-02-09 19:05:01
【问题描述】:

当我阅读指南时,他们说我应该在测试时使用 :let 而不是 before(:each) 。

如何将这些转换为 :let?

    before(:each) do

      @book1111 = Book.new('1234','title 3','author 3', 23.99, 'Ruby', 5 )
      @memcached_mock = double()
      @database_mock = double()
      @target = DatabaseWithCache.new @database_mock, @memcached_mock 

   end

谢谢

【问题讨论】:

    标签: ruby rspec


    【解决方案1】:
    let(:book1111) { Book.new('1234','title 3','author 3', 23.99, 'Ruby', 5 ) }
    let(:memcached_mock) { double() }
    let(:database_mock) { double() }
    let(:target) { DatabaseWithCache.new database_mock, memcached_mock }
    

    【讨论】: