我正在使用 RSpec 测试一个从数据库中读取数据的类。根据参数,它不会返回相同的值。
我目前的策略是这样的:
before do
# create a bunch of data
end
it 'test1' # ...
it 'test2' # ...
it 'test3' # ...
这当然意味着我的数据将在每次测试之前创建。
我希望能够在此文件的范围内创建一次数据,然后读取数据。
我尝试将use_transactional_fixtures
文件设置为 false 并使用 database_cleaner 但它使我的测试速度变慢了两倍,因为我必须在测试之前和之后重新播种我的数据库。
我想知道是否有办法告诉 rspec“在同一个事务中运行这些测试中的每一个”。
或者,因为我很难找到这一点,有没有更好的策略来进行这种测试?