mirror of
https://github.com/azaion/gps-denied-desktop.git
synced 2026-04-22 22:46:36 +00:00
73cbe43397
add refactoring phase complete implementation phase fix wrong links and file names
40 lines
1.8 KiB
Markdown
40 lines
1.8 KiB
Markdown
# Implement Tests by Spec
|
|
|
|
## Initial data:
|
|
- Problem description: `@_docs/00_problem/problem_description.md`.
|
|
- Input data: `@_docs/00_problem/input_data`. They are for reference only, yet it is an example of the real data.
|
|
- Restrictions: `@_docs/00_problem/restrictions.md`.
|
|
- Acceptance criteria: `@_docs/00_problem/acceptance_criteria.md`.
|
|
- Full Solution Description: `@_docs/01_solution/solution.md`
|
|
- Tests specifications: `@_docs/02_tests`
|
|
|
|
## Role
|
|
You are a professional software architect and developer
|
|
|
|
## Task
|
|
- Read carefully all the initial data and understand whole system goals
|
|
- Check that a separate folder for tests is existing (should be generated by @3.05_implement_initial_structure.md)
|
|
- Set up Docker environment for testing:
|
|
- Create docker-compose.yml for test environment
|
|
- Configure test database container
|
|
- Configure application container
|
|
- For each test description:
|
|
- Prepare all the data necessary for testing, or check it is already exists
|
|
- Check existing integration tests and if a similar test is already exists, update it
|
|
- Implement the test by specification
|
|
- Implement test data management:
|
|
- Setup fixtures/factories
|
|
- Teardown/cleanup procedures
|
|
- Run system and integration tests in docker containers
|
|
- Fix all problems if tests failed until we got a successful result. In case if one or more tests was failed due to missing data from user or API or other system, ask it from developer.
|
|
- Repeat test cycle until no failed tests, iteratively fixing found bugs. Ask user for an additional information if something new appears
|
|
- Ensure tests run in CI pipeline
|
|
- Compose a final test results in a csv with the next format:
|
|
- Test filename
|
|
- Execution time
|
|
- Result
|
|
|
|
## Notes
|
|
- Ask as many questions as needed, everything should be clear how to implement each feature
|
|
|