我正在使用django 1.3并编写一些硒测试&django单元测试。我想知道是否有可能在不创建数据库的情况下运行测试&每次都装载固定装置?
我偶然发现了这个SO线程,它提供了一种在不创建数据库的情况下进行测试的好方法,但它仍然刷新数据库fixture&每次都重新加载。我甚至不希望发生这种事。我只想让测试读取/写入我设置过的数据库一次。我不希望它在每次运行任何测试时都创建数据库/加载固定装置。
如果需要的话,我很乐意提供任何进一步的信息来解决这个问题。
提前感谢!:)
我能够通过侵入一些django代码来做到这一点。需要编辑的部分是,
文件:django/db/backends/sqlite3/creation.py
更改代码如下:
- 在第55行设置
confirm = 'yes'
- 注释掉
os.remove(test_database_name)
的所有出现
文件:django/db/backends/creation.py
按以下更改代码
- 注释359到376(
create_test_db
函数中的syncdb和flush部分) - CCD_ 6中的几乎所有内容。(几乎所有的东西都是做我们试图消除的不想要的东西的代码部分)
- CCD_ 7中的几乎所有内容
- CCD_ 8中的几乎所有内容
希望能有所帮助!