#33184 closed New feature (wontfix)
Allow a way to create a new test database AND keep it for the next test run
Description ¶
I am running multiple test suites serially. I'd like to ensure the first starts with a fresh test database, but reuse that database in the following test runs.
Currently (to my undestanding) this is not possible with --keepdb
or any of the other parameters.
The --keepdb
flag when running tests does two things:
1) Reuse existing test database if found
2) Leave test database intact after completing the tests
So step 1 prevents me from obtaining my desired scenario.
I could run the tests without --keepdb
and use --no-input
to force the creation of a new test database. But in that case the database will be destroyed after running the tests.
Suggestion:
- Add a '--createdb
parameter to "force" the creation of a new test database, while allowing
--keepdb` to be used in the same run.
Change History (2)
comment:2 by , 3 years ago
Resolution: | → wontfix |
---|---|
Status: | new → closed |
I am running multiple test suites serially. ...
Assuming I've understood correctly, I think Mateusz's point is right.
- Use
--keepdb
for all runs, which should create the DB on the first pass. - Run
dropdb
(Postgres) orrm
(Sqlite) or equivalent, after the last run.
For the dropdb
step, I don't think that replicating existing tools inside django-admin
is going to be worth it.
Why add parameter when you can just create db in separate command?