= Minor release test protocol = This protocol lists the tests that should be performed before a minor release (eg. a release that changes the second version number). Patch releases (that changes the third number) doesn't have to go through the tests. The tests should make sure that a basic installation/upgrade is working on PostgreSQL. Since BASE 3.19 we do not test with MySQL. This part is done with an automated test program. A second part is a manual test of web interface that includes most of the major features of BASE. These tests should be done about a week before the scheduled release to make sure that there is enough time to fix any problems. During the last week it is of course not allowed to make any changes in the code that will fundamentally change the results of the test. For example, do not change the database. In the table below the following notation is used: * 3.N = the BASE version that is to be released * 3.P = the last patch release of the previous version * `initdb/updatedb` = run the installation/upgrade script * `TestAll` = run the `TestAll` test program * `test roles` = run the roles test program as described in [/chrome/site/latest/test/roles/index.html latest/test/roles/index.html]. This test program can also use batch importers instead of the hard-coded item creation. Run in batch-import mode with `./test.sh roles -b all` (step 1d). == Automated tests == || || ''' PostgresSQL ''' || || '''1. Basic installation of 3.N''' || ----- || || a) `initdb` || || || b) `TestAll` || || || c) `test roles` || || || d) `test roles -b` || || || '''2. Upgrade a fresh 3.P installation''' || ----- || || a) `initdb` (on 3.P) || || || b) `updatedb` (on 3.N) || || || c) `TestAll` (on 3.N) || || || '''3. Upgrade a 3.P installation with data''' || ----- || || a) `initdb` (on 3.P) || || || b) `test roles` (on 3.P) || || || c) `updatedb` (on 3.N) || || == Manual tests == Manual testing of different user roles using the web interface. Follow the instructions in the [https://base.thep.lu.se/chrome/site/latest/test/roles/index.html latest/test/roles/index.html] document. || || '''Firefox''' || '''Edge''' || || a) root user || || || || b) administrator || || || || c) power user || || || || d) user - item creation || || || || e) user - analysis || || || || e) guest - analysis || || ||