diff --git a/tests/README.md b/tests/README.md new file mode 100644 index 000000000..dce4cae0e --- /dev/null +++ b/tests/README.md @@ -0,0 +1,43 @@ +# Corteza Server integration and e2e tests + +Main goal of these integration tests is to test entire system with the database +and without any other external services. + +What, how and why we test: + + - Handling input: + + How HTTP traffic is handled (standard HTTP requests, websocket communication), + to ensure proper response on valid, invalid or harmful input. + + - Configuration: + + How system behaves under different settings to cover as much different + configuration scenarios as possible. + + - Security: + + Are we handling access control and log events (audit log) properly? + All services and data should be protected to prevent unwanted access + and modifications + + - Scenarios: + + Are complex scenarios executed as designed (e.g. is password recovery email + sent and can link from the email be used) + + - Integration with external services + + All external services (with exception to database) are mocked but we do test + if communication to these services take place and if + + + - Database schema & data migrations + + Database migration is executed as one of the first steps in automation tests. + This can be turned off to enable running tests on live/testing database. + + Entire test suite is ran inside transaction so we can rollback all changes + that occurred while testing + +