4
我正在Minitest中编写一个测试用例来创建数据库条目。测试运行后,测试所做的所有更改应回滚。什么是实现这一目标的好方法?由minitest单元测试创建的回滚更改
require 'minitest/autorun'
require 'rubygems'
require 'sequel'
require 'factory_girl'
class TestPostgresqlFunctions < MiniTest::Unit::TestCase
def test_simple_function
Factory.find_definitions
user = FactoryGirl.create(:user)
end
end
使用此代码,创建的条目将保留在数据库中。我没有使用Rails或任何其他框架。我正在使用的数据库是PostgreSQL 9.1。
看来,如果这rollsback立即将所有续集的交易。我正在寻找的是在测试(minitest)完成后回滚所有事务。 – Hartwig
这会在自己的事务中运行每个测试。如果你想在自己的事务中运行每个测试套件,可能会有一个单独的方法来覆盖。阅读MiniTest源代码。 –
似乎我在测试解决方案时犯了一个错误。它完美的作品。非常感谢! – Hartwig