본문으로 건너뛰기

시나리오 테스트와 보고서

단일 요청은 한 번의 호출만 증명합니다. 시나리오 테스트가 증명하는 것은 워크플로입니다. 한 응답의 값을 후속 요청에 전달하고 각 단계에서 어설션을 확인하는 순서 있는 요청 열. 시나리오는 개발자 머릿속에만 있던 엔드투엔드 흐름을 포착합니다.

시나리오 구성​

  • 각 단계가 스펙의 작업을 참조하는 순서 있는 단계.
  • 단계 간 데이터 전달——예: 생성한 리소스의 id를 꺼내 다음 요청에 사용.
  • 상태 코드, 응답 헤더, 응답 필드에 대한 어설션.
  • 실행 전 독자가 제공해야 하는 값.

순서와 어설션은 일급이며 실행 중 조용히 버려지지 않습니다.

시나리오 실행​

시나리오는 메인 프로세스에서 @powerduck/openapi-cli의 runScenario 엔진으로 실행됩니다.

  • scenario:run은 시나리오, 스펙, 요청 설정으로 실행 시작.
  • 단계 실행에 따라 진행이 scenario:event로 스트리밍됨.
  • scenario:cancel은 실행 중 작업 중지.

각 단계를 관찰하고 플로우가 어디서 실패하는지 보며 긴 실행을 취소할 수 있습니다.

어시스턴트가 시나리오를 구성하는 법​

어시스턴트는 스펙 내부에 테스트 정의를 날조하지 않습니다. 시나리오는 독립 호스트 워크플로이며 OpenAPI 문서에 저장되지 않습니다——x-scenarios 키나 내장 단계가 없습니다.

작업 설계와 테스트를 모두 요청하면 작업이 순서화됩니다.

  1. 어시스턴트가 먼저 작업 패치만 제안.
  2. 당신이 적용하면 플로우를 실행하는 액션 카드를 반환:
    • test.single은 단일 작업용.
    • scenario.plan은 호스트가 엔드투엔드 플로우를 발견.
    • scenario.run은 순서 있는 플로우를 준비하고 실행.

scenario.run 카드는 실행 순서(2~8)로 작업을 나열하고 어떤 응답 필드, 헤더, 상태를 각 후속 요청에 전달하는지 포함해 목표를 서술합니다. 각 참조는 현재 스펙에서 그대로 복사됩니다.

보고서​

실행 후 자체 포함 HTML 보고서를 내보낼 수 있습니다. 원시 CLI 출력이 아닌 요약 문서로, 플로우, 각 단계 결과, 어설션, 최종 결과를 읽기 쉬운 레이아웃으로 제시합니다.

내보낼 때 언어를 선택합니다. 10개 언어가 내장돼 있습니다.

  1. English
  2. 简体中文(간체 중국어)
  3. 繁體中文(번체 중국어)
  4. 日本語(일본어)
  5. 한국어(한국어)
  6. Français(프랑스어)
  7. Deutsch(독일어)
  8. Español(스페인어)
  9. Português — Brasil(포르투갈어-브라질)
  10. العربية(아랍어)

기타/사용자 지정 옵션으로 직접 언어를 입력할 수 있습니다.

보고서는 안전하게 공유 가능합니다.

  • 자격 증명이 자동 마스크돼 토큰과 키가 나타나지 않습니다.
  • 큰 페이로드는 접혀 전체 붙여넣기 대신 보고서를 읽기 쉽게 유지합니다.

HTML은 독립적이어서 티켓에 첨부하거나 릴리스마다 보관할 수 있습니다.

시나리오 사용 시점​

  • 다단계 업무 플로우(생성, 읽기, 갱신, 삭제) 검증.
  • 인증과 토큰 전달이 호출 간 동작하는지 확인.
  • 릴리스나 인수인계를 위한 API 동작 증거 생성.
  • 계약 변경 후 플로우 회귀 확인.

관련: 요청 워크스페이스、어시스턴트로 설계하기、모크 서버.