QDAirPortBackend0122/deploy/collision_prepare_test_plan.md

81 lines
2.1 KiB
Markdown

# Collision Prepare Flow Test Plan
## Goal
Verify the deployed `qaup-app` service can complete the interface-only preparation flow for simulated collision objects before live position and alert testing.
## Scope
This plan only verifies:
1. Health endpoint is reachable.
2. Simulated aircraft, unmanned vehicle, and special vehicle can be registered.
3. Aircraft route query both returns route data and binds the route.
4. Unmanned and special vehicle routes can be directly submitted and bound.
5. Preparation status changes from `not ready` to `ready`.
This plan does not verify:
1. Real position ingestion.
2. Real collision point calculation from live tracks.
3. WebSocket alert delivery.
4. Real stop/recover signal dispatch.
## Recommended Execution Location
Run inside the `qaup-app` container if possible, or on a host that can access the container port.
Examples:
```bash
docker exec -it qaup-app sh -lc 'bash /opt/qaup/deploy/test_collision_prepare_flow.sh'
```
```bash
BASE_URL="http://127.0.0.1:8080" bash deploy/test_collision_prepare_flow.sh
```
## Script Inputs
The script supports environment variables:
- `BASE_URL`
- `HEALTH_PATH`
- `AIRCRAFT_ID`
- `UNMANNED_ID`
- `SPECIAL_ID`
- `AIRCRAFT_ROUTE_TYPE`
- `AIRCRAFT_IN_RUNWAY`
- `AIRCRAFT_OUT_RUNWAY`
- `AIRCRAFT_CONTACT_CROSS`
- `AIRCRAFT_SEAT`
- `AIRCRAFT_START_SEAT`
- `AUTH_HEADER`
Default execution assumes no authentication because the current platform HTTP integration document states these endpoints are unauthenticated.
## Expected Result
The script should end with:
```text
PASS: collision preparation interface flow is ready for deployment testing
```
The preparation status before binding should report missing routes.
The preparation status after binding should report:
- `ready=true`
- `registeredCount=3`
- `missingRouteCount=0`
## Failure Handling
If the script fails:
1. Confirm `qaup-app` is healthy.
2. Confirm the service port matches `BASE_URL`.
3. Confirm the aircraft route query parameters are valid in the target environment.
4. If formal environment adds authentication later, set `AUTH_HEADER`.