스타트업이 주목을 받기 시작하는 시나리오를 상상해 보세요. 갑자기 이용자 수가 늘어나네요! 그리고 이제 사용자는 10명에서 100명으로 지속적으로 증가하고 있으며 꽤 오랫동안 귀하의 애플리케이션을 사용해 왔습니다. 몇 가지 버튼을 클릭하고, 몇 가지 기능을 사용하고, 백엔드 서버에서 요청을 보내는 중...
이런 상황에서 원하지 않는 것은 준비되지 않은 것입니다. 귀하의 애플리케이션이 사용자에게 신뢰할 수 있고 사용 가능한지 확인하고 싶습니다. 이것이 테스트가 이루어지는 곳이며 여기서 우리가 이야기할 것은 이러한 종류의 시나리오를 테스트하는 데 적합한 특정 유형의 테스트인 부하 테스트.
입니다.이 가이드에서는 FastAPI와 자동화된 OpenAPI 사양 생성을 사용하여 부하 테스트를 위한 Postman 컬렉션 생성 프로세스를 간소화하는 데 중점을 둘 것입니다. 마지막에는 FastAPI의 OpenAPI 사양과 Postman을 활용하여 규모에 맞게 애플리케이션을 테스트하는 방법을 알게 될 것입니다.
FastAPI에는 OpenAPI 지원이 내장되어 있어 API를 쉽게 문서화하고 테스트할 수 있습니다. FastAPI와 Postman을 결합하면 다음을 수행할 수 있습니다.
FastAPI와 Postman의 이러한 시너지 효과를 통해 개발자는 실제 트래픽 시나리오를 빠르게 시뮬레이션하고 애플리케이션의 병목 현상을 식별할 수 있습니다.
FastAPI 애플리케이션이 로컬 또는 서버에서 실행되고 있는지 확인하세요. 예:
from fastapi import FastAPI app = FastAPI() @app.get("/items/{item_id}") def read_item(item_id: int, q: str = None): return {"item_id": item_id, "q": q} if __name__ == "__main__": import uvicorn uvicorn.run(app, host="0.0.0.0", port=8000)
서버가 시작되면 http://127.0.0.1:8000/openapi.json에서 OpenAPI JSON 엔드포인트를 사용할 수 있습니다.
브라우저를 열고 http://127.0.0.1:8000/openapi.json으로 이동하여 OpenAPI JSON에 액세스할 수 있는지 확인하세요.
브라우저를 사용하거나 컬을 사용하여 OpenAPI JSON 파일을 로컬에 저장할 수 있습니다.
curl -o openapi.json http://127.0.0.1:8000/openapi.json
또는 OpenAPI 엔드포인트 URL인 http://127.0.0.1:8000/openapi.json을 복사하면 됩니다.
엔드포인트 URL을 방금 복사한 경우 가져오기
를 클릭하면 나타나는 모달 상단의 입력 표시줄에 URL을 붙여넣으면 됩니다.가져온 컬렉션을 검토하여 모든 엔드포인트가 올바르게 구성되었는지 확인하세요. 인증이나 데이터 관리를 위해 필요에 따라 환경 변수나 스크립트를 추가할 수도 있습니다.
실제 시나리오를 시뮬레이션하려면 동적 데이터를 포함하도록 요청을 수정하세요. 예를 들어 Postman의 내장 변수나 사전 요청 스크립트를 사용하세요.
사전 요청 스크립트 예:
from fastapi import FastAPI app = FastAPI() @app.get("/items/{item_id}") def read_item(item_id: int, q: str = None): return {"item_id": item_id, "q": q} if __name__ == "__main__": import uvicorn uvicorn.run(app, host="0.0.0.0", port=8000)
페이로드 예시:
curl -o openapi.json http://127.0.0.1:8000/openapi.json
$randomInt와 같은 내장 스크립트를 사용하여 임의의 값을 생성할 수도 있습니다.
내장 스크립트 사용 사례:
pm.variables.set("random_id", Math.floor(Math.random() * 10000));
이 내장 스크립트는 요청이 있을 때마다 0~1000 사이의 임의 값을 반환합니다.
Postman의 컬렉션 변수를 사용하여 컬렉션 없이 API 기본 URL, 인증 토큰 또는 동적 매개변수를 관리하세요. 이를 통해 컬렉션 전체의 업데이트 및 테스트가 단순화됩니다.
이제 Postman에는 사용자 트래픽을 시뮬레이션하고 API 성능을 평가할 수 있는 성능 테스트 기능이 내장되어 있습니다.
실행을 클릭하여 성능 테스트를 시작합니다. Postman은 평균 응답 시간, 오류율, 처리량 등의 실시간 성능 지표를 표시합니다.
테스트가 완료된 후 결과를 분석하여 성능 병목 현상을 식별합니다.
Postman은 자세한 측정항목을 제공하고 여러 테스트 실행을 비교하여 시간 경과에 따른 성능 변화를 추적할 수 있도록 해줍니다.
FastAPI의 OpenAPI 사양과 Postman의 성능 테스트 기능을 활용하면 사용자 트래픽을 효과적으로 시뮬레이션하고 잠재적인 성능 문제를 식별할 수 있습니다. 이 접근 방식을 사용하면 FastAPI 애플리케이션이 다양한 로드 조건에서도 견고하고 응답성을 유지할 수 있습니다.
즐거운 테스트를 해보세요!
위 내용은 FastAPI 및 Postman을 사용한 부하 테스트: 종합 가이드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!