CSE 341: Web Services

W06 Team Activity: Coordinate Automated Testing Work

Overview

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

  1. Open the team's GitHub repository.
  2. Review the open pull requests from Week 05.
  3. Identify pagination, search, or filter work that is still waiting for review.
  4. Assign reviewers for every outstanding pull request.
  5. Merge approved work or record a clear plan for resolving anything that cannot yet be merged.
  6. 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:

  1. Trips API
  2. Users API
  3. Bookings API
  4. Stations API and trip relationships
  5. 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

  1. Have each teammate select one feature set.
  2. Do not assign the same feature set to more than one person.
  3. If your team has fewer than five people, decide which feature sets are most important to complete.
  4. Post every feature-set owner in Microsoft Teams.
  5. 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.

Agree on shared test conventions

Consistent tests are easier for teammates to read and maintain. Agree on the following decisions:

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.

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:

Completion Checklist

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: