Hurl: 플레인 텍스트로 HTTP 요청/테스트 도구
AI Store에서 AI코딩으로 만들어진 앱을 만나보세요!
지금 바로 방문하기

플레인 텍스트로 HTTP 요청을 실행하고 테스트하는 Hurl

카테고리

프로그래밍/소프트웨어 개발

서브카테고리

개발 툴

대상자

  • *개발자 및 DevOps | 초보자~중급자**

핵심 요약

  • Hurl은 플레인 텍스트 기반의 HTTP 요청/테스트 도구로, libcurl 엔진을 사용해 IPv6, HTTP/3 등 최신 프로토콜을 지원하며, Rust로 구현된 단일 실행 파일로 설치가 간편함
  • 요청 체이닝, 값 캡처, 상태코드·헤더·본문 검증 기능을 통해 REST, GraphQL, SOAP, HTML/XML/JSON API 테스트CI/CD 연동 리포트(JUnit, HTML 등) 생성이 가능함
  • Postman, curl 대비 텍스트 기반의 버전 관리, 협업, CI/CD 통합에 유리하며, AWS Sigv4 인증, 폴링/재시도, 변수화 기능 등 고급 제어 기능을 제공함

섹션별 세부 요약

1. 기본 동작

  • .hurl 파일에 여러 HTTP 요청을 순차적으로 작성해 실행 가능
  • Captures 구문을 통해 응답에서 값 추출 및 다음 요청에 변수 주입 가능
  • REST/JSON, SOAP/XML, GraphQL, HTML 등 다양한 형식 지원

2. 체이닝 및 변수 활용

  • Xpath, JSONPath, 정규표현식 등으로 데이터 추출 및 활용 가능
  • newUuid, newDate 등 동적 데이터 생성 함수 제공
  • 요청 간 데이터 전달 및 옵션 커스터마이징 지원

3. 다양한 요청 및 검증 방식

  • 쿼리파라미터, 헤더, 인증 등 요청 사양 설정 지원
  • Asserts 구문으로 상태코드, 바디, 헤더, 쿠키, 응답시간 등 검증 가능
  • XPath/JSONPath 기반의 REST/GraphQL/SOAP 및 HTML 콘텐츠 테스트 지원

4. 테스트 리포트와 자동화 연동

  • 텍스트, HTML, JUnit, TAP, JSON 등 리포트 형식 지원
  • --parallel, --retry 등 병렬 실행 및 재시도 기능 제공
  • CI/CD 파이프라인에 손쉽게 통합 가능

5. 고급 제어 및 유용 기능

  • --variable, --user 등 인증 정보 및 변수 설정 지원
  • --json으로 실행 결과를 JSON 형식으로 출력 가능
  • Homebrew, npm, Docker 등 다양한 플랫폼에서 설치 가능

결론

  • Hurl은 텍스트 기반의 간결한 문법과 CI/CD 연동 기능을 통해 HTTP 테스트 자동화에 최적화된 도구임. brew install hurl 또는 cargo install --locked hurl 명령으로 간편하게 설치 가능하며, REST/GraphQL/HTML 등 다양한 API 테스트 및 시나리오 자동화에 유리함.