python - 我可以在每个场景之前使用 create_engine()、sessionmaker()、declarative_base() 或其他方法清空内存中的 sqlite 测试数据库吗?
问题描述
我的 SQLalchemy 基础是models.domain.base
这样实例化的:
from sqlalchemy import create_engine
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker
engine = create_engine('sqlite://')
Session = sessionmaker(bind=engine)
Base = declarative_base()
现在我想在每个测试场景之前清空数据库并尝试这样做:
def before_scenario(context, scenario):
from models.domain.base import Session as domain_session_class
domain_session = domain_session_class()
domain_session.close()
domain_session.begin()
这给了我错误sqlite3.OperationalError: table ADDRESSES already exists
。
问候
弗洛里安
解决方案
推荐阅读
- netlify - 如何在使用 Cecil 的 Netlify 上更改网站域名?
- sql - 包含多行的键上的火花合并(替换)
- php - 将部分分配给变量
- json - 不和谐重写如何让机器人在离开服务器时删除数据
- asp.net-core-webapi - Web api netcore 在 appsettings.json 文件中设置 Cors
- nginx - Nginx入口控制器路径重写不起作用
- c++11 - 在向量中查找继承的类对象 emplaced_back 的 unique_ptr
- java - 由于包名称不同,Firebase 中的用户身份验证失败?安卓、Java
- php - 使用 .htaccess 重写位于子目录中的网站的 url
- typescript - 安装@types/mysql2 的问题