Mar*_*cin 5 python testing sqlalchemy
我正在使用 SQLAlchemy 的固定装置来创建一些集成测试。
我想将 SQLAlchemy 置于“从不提交”模式,以防止将更改写入数据库,以便我的测试彼此完全隔离。有没有办法做到这一点?
我最初的想法是,也许我可以Session.commit
用模拟对象替换;但是我不确定是否还有其他东西可能具有相同的效果,如果我要走这条路,我也需要模拟。
默认情况下,作用域会话管理器将为每个连接返回相同的会话对象。因此,可以替换.commit
为.flush
,并使该更改在对会话管理器的调用中持续存在。
这将阻止提交。
要回滚所有更改,应该使用session.transaction.rollback()
.
归档时间: |
|
查看次数: |
1130 次 |
最近记录: |