You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The API, front-end, and database all need to be validated before a deployment can be considered successful. If a deployment is unsuccessful, it should be rolled back.
Test Platform
There is a manual test process, but that should be automated as soon as possible. The following tools have been selected to build the tests.
PyTest: Build unit & integration tests that can be automatically found and executed
Playwright: Execute integration tests using a headless browser
flask_testing: Create easily-testable versions of apps
FastAPI Testing: Easily test APIs
Tests to Execute
Instead of enumerating each test, make sure the following areas are covered.
API
Unit test each back-end function
Unit test each front-end function
Interface
Functional tests enumerated in manual test document
Verify correct rendering of key pages given test data
Database
Guarantee each function when interacting with a test DB still works properly
Relation to Deployment
Pre-deploy and post-deploy will both have tests to run.
If tests fail, a rollback will be performed.
Deployment process will need to be such that a rollback is possible and easy.
Deployment Outline
Testing Steps
Make backup of current snapshot of code & data.
Copy new code, use linter to verify there are no obvious errors.
Create test DB, run unit tests.
Start test server, run interface and database tests.
Shut down test server and delete test DB. Evaluate test results.
If test passes, begin rollout.
After rollout, run interface tests again on live site to verify everything is working.
Rollout Steps
Move new code to server location.
Create new DB & load data from old DB.
If there are any migration queries, they should go here.
Logroll and backup-roll from previous DB backups.
Restart server.
The text was updated successfully, but these errors were encountered:
There's a lot in this feature, but I will try to chip away at it in the coming weeks.
The highest priority is having tests that can be run automatically using pytest.
Testing
The API, front-end, and database all need to be validated before a deployment can be considered successful. If a deployment is unsuccessful, it should be rolled back.
Test Platform
There is a manual test process, but that should be automated as soon as possible. The following tools have been selected to build the tests.
Tests to Execute
Instead of enumerating each test, make sure the following areas are covered.
API
Interface
Database
Relation to Deployment
Deployment Outline
Testing Steps
Rollout Steps
The text was updated successfully, but these errors were encountered: