엣지 케이스 검증 및 퍼즈 테스트 생성기
출시 전 폼과 API를 강화하기 위해 포괄적인 엣지 케이스, 퍼즈 입력 및 부정 테스트를 생성하세요.
프롬프트 개요
추천 팁
가장 위험한 필드부터 우선 공략하세요. 퍼즈 문자열 라이브러리를 지속적으로 관리하세요. 모든 배포에 부정 테스트 스모크 런을 추가하세요.
운영팀 제공NexusAi Technology해결하는 문제
대부분의 팀은 드물지만 치명적인 실패를 놓칩니다. 이 프롬프트는 경계 및 악용 사례를 노출시키고 실행 가능한 테스트로 전환합니다.
엣지 케이스 카탈로그
안전하게 잘못된 가정을 깨뜨릴 준비된 입력.
부정적 API 테스트
CI용 페이로드 및 예상 오류.
악용 시나리오
속도 제한 및 재생 방지 대책 포함.
하니스 개요
자동화를 위한 구현 노트.
AI 프롬프트 지침
역할: 입력 검증 및 악용 방지에 특화된 시니어 QA 엔지니어로 활동하세요.
이 작업이 중요한 이유: 엣지 케이스와 잘못된 입력은 장애와 데이터 손상을 초래합니다. 사전 테스트는 재작업을 줄이고 데이터를 보호합니다.
중요 경계 조건:
- 관련된 경우 유니코드, RTL, 이모지, 로케일 특이사항을 포함하세요.
- 클라이언트 및 서버 검증을 일관된 오류 스키마로 다루세요.
- 속도 제한 및 재생 방지 대책을 고려하세요.
사용자 입력:
[규칙이 포함된 필드 목록]
[API 엔드포인트]
[로케일]
[우려되는 악용 벡터]
목표:
1) 필드별 엣지 케이스 및 퍼즈 문자열 카탈로그 생성.
2) 예상 오류와 함께 부정적 API 테스트 정의.
3) 속도 제한 테스트 및 재생 시나리오 제안.
4) 최소한의 테스트 하니스 개요 작성.
분석 워크플로우:
1) 각 필드에 대해 경계 값 생성(min-1, max+1, 빈 값, null, 유니코드).
2) 부정 테스트용 API 페이로드 생성.
3) 속도 제한 및 재생 시퀀스 정의.
4) 예상 오류 코드/메시지 매핑.
5) CI 통합 개요 작성.
필수 출력 형식:
- EdgeCases[{field, cases[]}]
- NegativeAPITests[{name, payload, expected_code, expected_message}]
- AbuseTests[{type, sequence, expected_outcome}]
- HarnessOutline {tools, fixtures, CI}
품질 관리:
- 케이스는 현실적이며 규칙과 연관되어야 합니다.
- 오류는 API 스키마와 정확히 일치해야 합니다.
검증 체크리스트:
- 현재 버그에 대해 테스트가 실패합니까?
- 메시지는 실행 가능하고 현지화되어 있습니까?
최종 지침: 먼저 카탈로그를 출력한 후, CI에 통합하기 위한 간단한 계획과 통과/실패 기준을 제시하세요.
예상 결과
전화번호의 경우: 너무 짧음, 너무 김, 유니코드 숫자, 선행 +, 공백 포함; 잘못된 열거 상태에 대한 API 테스트; 분당 20회 생성 시도 시 429 예상되는 속도 제한 테스트.
실행 과정
Gemini에서 엣지 케이스 생성
필드 규칙과 API 엔드포인트를 Gemini에 제공하세요. 오류 스키마에 매핑된 엣지 케이스 및 부정 테스트 카탈로그를 요청하세요. 페이로드와 예상 코드가 정리된 목록을 기대하세요.
12-15 minChatGPT에서 메시지 검토
부정 테스트를 ChatGPT에 붙여넣고 필요한 경우 더 명확하고 현지화된 오류 메시지를 요청하세요. 스타일 가이드에 맞춘 정제된 메시지를 기대하세요.
8-10 minCI에서 자동화
제공된 테스트 하니스 개요를 테스트 러너에 구현하고 CI에 연결하세요. 통과/실패 기준을 설정하고 모든 PR마다 실행하세요.
45-60 min
