【发布时间】:2013-07-21 10:10:20
【问题描述】:
我在 Flask 上有一个使用 SqlAlchemy 来审核新闻的 Web 应用程序,它有一些 api 方法来处理审核请求,例如批准、拒绝当前选定的新闻、列出它们等。
我想为此方法编写单元测试,并让它们工作,但我不明白如何在一个数据库会话中执行我从测试用例执行的所有请求,以便我可以删除所有更改数据库。还是有其他更清洁或正确的方法来做到这一点?
我发现也许我需要的只是 SqlAlchemy 中的“scoped_session”,但我实现它的所有尝试都失败了。如果这是正确的方法,请告诉我在哪里使用这行代码(在设置中,或在测试用例 set_up 方法中)。
from sqlalchemy.orm import scoped_session
from sqlalchemy.orm import sessionmaker
session_factory = sessionmaker()
Session = scoped_session(session_factory)
【问题讨论】:
-
你是直接使用sqlalchemy还是flask-sqlalchemy扩展?
标签: python session testing flask sqlalchemy