Add database dump cache to run TestCase and Scenario
The idea is to store a dump of the database right after installing the tested module (for TestCase in setUpClass) and to allow to restore this dump when the test is run a second time.
This is based on the idea that the schema do not change often when you are developing a module/feature but you want to run the test very often and not wait to re-create the all database.
Of course the developer will have to drop the backup if the schema has been changed.
I think this option could be activated just by using a environment variable which will point to the backup directory.
For the scenario, I think we will need to create a tool function that will contain all the DB creation and modules installation (and the backup feature).
This will not improve the run on https://drone.tryton.org/ because we can not rely on the schema stability.
To make backup with sqlite3, we could optionally rely on https://pypi.python.org/pypi/sqlitebck
For PostgreSQL, we will rely on pg_dump/pg_restore.
I do not think we should care for other back-end as those two databases are the main target so development should be done on them and after that tested on other back-end.