W06 Team Activity: Coordinate Automated Testing Work
Overview
- Purpose: Coordinate the team's automated testing work and avoid conflicts in shared test infrastructure.
- Task: Review the current project, assign one testing feature set to each teammate, and agree on shared testing conventions.
This week, your team will add automated tests for five areas of the Kizuna Rail API. The tests will cover trips, users, bookings, stations, and schedules. Use this activity to assign clear ownership and agree on testing patterns before anyone begins creating issues or branches.
Decide how you will coordinate
You may meet live with your team. If your schedules do not allow that, complete the same coordination process by posting messages in your Microsoft Teams channel. Every teammate should be able to see the final assignments and decisions.
Instructions
Follow up on Week 05 pull requests
- Open the team's GitHub repository.
- Review the open pull requests from Week 05.
- Identify pagination, search, or filter work that is still waiting for review.
- Assign reviewers for every outstanding pull request.
- Merge approved work or record a clear plan for resolving anything that cannot yet be merged.
- Post the review plan in Microsoft Teams.
Tests must match the current API
Week 06 tests depend on behavior implemented during earlier weeks. Resolve or clearly identify pull requests that are not finished before writing tests for that behavior.
Review the testing feature sets
Open the Week 06 assignment and review all five feature sets:
- Trips API
- Users API
- Bookings API
- Stations API and trip relationships
- Schedules API and trip relationships
Notice that the first three feature sets contain read, write, and pagination/search tasks. The last two contain read and trip-relationship tasks.
Assign one feature set to each teammate
- Have each teammate select one feature set.
- Do not assign the same feature set to more than one person.
- If your team has fewer than five people, decide which feature sets are most important to complete.
- Post every feature-set owner in Microsoft Teams.
- For each feature set, list the numbered tasks and the issue or pull request that will contain each task.
Inspect the real API before planning tests
As a team, inspect the routes that will be tested. Do not rely only on memory or assume that every route uses the same pattern.
- Record the HTTP method and URL for list, detail, create, update, and delete operations that exist.
- Identify which routes require an authenticated user or administrator.
- Record the response shape used by each endpoint.
- Confirm the query parameter names used for pagination, search, sorting, and filtering.
- Identify the seeded records and test accounts that can be found by stable values.
- Identify any behavior that has not been merged or does not currently work.
Agree on shared test conventions
Consistent tests are easier for teammates to read and maintain. Agree on the following decisions:
- Where test files will be stored and how they will be named.
- How test suites and individual tests will be named.
- How tests will find seeded records without copying generated MongoDB ids.
- How authenticated Supertest agents will sign in as administrators and standard users.
- Which response fields should be checked for list, detail, and error responses.
- How write tests will verify database changes.
- How pagination metadata will be checked consistently across endpoints.
Keep the temporary database safe and predictable
Use the shared MongoDB Memory Server setup. Do not load the database connection from .env in automated tests. Do not create a second global setup file unless the team has discussed and approved the change.
Each test must begin from known data. A test should never require another test to run first.
Plan shared-file changes
Most teammates should be able to work in separate test files. Identify any work that could change a shared file and decide who will make that change.
vitest.config.js- The global test setup
- The database initialization or seed data
- Authentication test helpers
- General-purpose test data helpers
When possible, assign one owner to a shared change and merge it before several teammates depend on it.
Record the team plan
Post one final coordination message in Microsoft Teams that includes:
- Each feature set and its owner.
- Any feature set the team will defer.
- The agreed test-file organization and naming pattern.
- The authentication and seeded-data approach.
- Owners of any shared setup or helper changes.
- The plan for unfinished Week 05 pull requests.
Completion Checklist
- The team reviewed outstanding Week 05 work.
- Each teammate selected one testing feature set.
- The feature-set owners were posted in Microsoft Teams.
- The team inspected the real routes, authentication rules, and response shapes.
- The team agreed on test organization, seeded data, authentication, and database-verification patterns.
- Owners were assigned for any shared test infrastructure changes.
Submission
When you are finished, return to Canvas to complete the team activity report or quiz. Be prepared to report your selected feature set and the testing conventions your team agreed to use.
Other Links:
- Return to: Week Overview | Course Home