Pandaria - GraphQL API 테스트
URL 설정
Pandaria 를 사용 하여 RESTFul API 를 테스트 할 때 저 희 는
.feature
파일 의 맨 위 에 현재 feature 작업 디 렉 터 리 와 기본 API 의 Endpoint 를 설정 합 니 다.예:Background:
* dir: features/rest-api-test
* base uri: http://localhost:10081/your-rest-api
이렇게 하면 테스트 에서 상대 경 로 를 사용 하여 요청 을 보 낼 수 있 습 니 다.
* uri: /users/me
* send: GET
* status: 200
* verify: '$.username'='jakim'
* verify: '$.age'=18
REST 와 달리 GraphQL 은 Query 와 Mutation 에 대해 하나의 유일한 Endpoint 만 있 습 니 다.
base uri
키 워드 를 사용 하면 이 Endpoint 를 설정 할 수 있 습 니 다.예:Background:
* dir: features/graphql-test
* base uri: http://localhost:10081/graphql
GraphQL Query
기본 디 렉 터 리 를 설정 하면 GrapQL 테스트 를 작성 할 수 있 습 니 다.
graphql
키 워드 를 사용 하여 검색 어 를 입력 하 십시오.Scenario: basic query without specify operation name
* graphql:
"""
query bookById($id: String){
book(id: $id) {
title
isbn
author {
name
}
}
}
"""
* variables:
"""
{
"id": "1"
}
"""
* send
* verify: '$.data.book.title'='CSS Designer Guide'
* verify: '$.data.book.isbn'='ISBN01123'
* verify: '$.data.book.author.name'='someone'
GraphQL
의 조회 문 구 를 설정 했다. id
조회 book
의 title
, isbn
, author
와 author
의 name
필드 에 따라.variables
키 워드 를 사용 하여 GrapQL 의 인 자 를 설정 합 니 다.send
키 워드 를 GrapQL 서버 에 보 냅 니 다.verify
키 워드 는 조회 결 과 를 검증 했다.variables
꼭 필요 한 것 이 아니 라 검색 어 에 파 라 메 터 를 입력 하지 않 으 면 생략 할 수 있 습 니 다.GraphQL Mutation
Mutation 은 Query 와 똑 같이 작 동 하 므 로 Query 문 구 를 Mutation 문구 로 바 꾸 면 되 며 군말 하지 않 습 니 다.
GraphQL 문 구 를 파일 에 저장
Pandaria 를 사용 하여 REST 테스트 를 진행 할 때 가 독성 을 높이 기 위해 요청 체 를 파일 에 넣 습 니 다. 예 를 들 어:
* uri: http://localhost:10080/users
* request body: requests/user.json
* send: POST
* status: 200
* verify: '$.id'='auto-generated'
* verify: '$.username'='jakim'
* verify: '$.age'=18
마찬가지 로, 우 리 는 GraphQL 의 문장 (과 / 또는) GraphQL 변 수 를 파일 에 넣 어서 테스트 용례 의 가 독성 을 높 일 수 있다. 예 를 들 어:
* graphql: query_book_by_id.graphql
* variables: css_designer_guide.id.json
* send
* verify: '$.data.book.title'='CSS Designer Guide'
* verify: '$.data.book.isbn'='ISBN01123'
* verify: '$.data.book.author.name'='someone'
GraphQL 구문 에는 여러 동작 이 포함 되 어 있 습 니 다.
같은 GraphQL 파일 은 여러 개의 GraphQL 동작 을 지원 합 니 다.
operation
키 워드 를 통 해 실행 할 동작 을 지정 할 수 있 습 니 다. 예 를 들 어:Scenario: query with operation name
* graphql: query_book_by_id.graphql
* variables: css_designer_guide.id.json
* operation: bookById
* send
* verify: '$.data.book.title'='CSS Designer Guide'
* verify: '$.data.book.isbn'='ISBN01123'
* verify: '$.data.book.author.name'='someone'
Pandaria 공식 문서 참조
다음으로 전송:https://juejin.im/post/5d2360136fb9a07ebb05583b
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.