6

我正在将数据从遗留系统传输到 Django。为了确保当前数据库的完整性,我手动提交所有内容。

但是,在编写单元测试时,事务不会正确回滚。由于TestCase可能正在使用事务,有没有办法在 Django 中正确测试依赖事务的代码?

@transaction.commit_manually
def import_records():
    # initial prep
    try:
        import_data()
    except Exception as error:
        rollback = True
    except (KeyboardInterrupt, SystemExit):
        sys.stdout.write("Import canceled\n")
        rollback = True
    if rollback is True:
        transaction.rollback()
    # save history of import
4

1 回答 1

11

我相信您正在寻找TransactionTestCase与正常不同的处理设置和拆卸的方法TestCase

于 2013-04-11T17:34:52.353 回答