【发布时间】:2014-06-18 15:43:24
【问题描述】:
我正在为 Flask 应用程序编写测试用例。
我有一个 setUp 方法,它在重新创建它们之前删除数据库中的表。 它看起来像这样:
def setUp(self):
# other stuff...
myapp.db.drop_all()
myapp.db.create_all()
# db creation...
这适用于第一个测试,但在运行第二个测试之前它会冻结在drop_all。
编辑: 中断进程时的堆栈跟踪是这样的
File "populate.py", line 70, in create_test_db
print (myapp.db.drop_all())
File ".../flask_sqlalchemy/__init__.py", line 864, in drop_all
self._execute_for_all_tables(app, bind, 'drop_all')
File ".../flask_sqlalchemy/__init__.py", line 848, in _execute_for_all_tables
op(bind=self.get_engine(app, bind), tables=tables)
File ".../sqlalchemy/sql/schema.py", line 3335, in drop_all
....
File "/Library/Python/2.7/site-packages/MySQLdb/cursors.py", line 190, in execute
r = self._query(query)
有人知道如何解决这个问题吗?
【问题讨论】: