인터페이스 테스트 전에 Postman을 사용하여 요청 매개변수를 사용자 정의하는 방법

1. 소개

인터페이스 테스트를 위해 Postman을 사용할 때   처리할 필요가 없는 단순한 인터페이스의 경우에는 직접 요청할 수 있지만, 트랜스코딩, 값 교체 등 처리가 필요한 인터페이스의 경우에는 더욱 번거롭습니다. 일반적으로 먼저 수동으로 진행하고 수정된 값을 요청에 복사한 후 인터페이스를 요청하는데, 이는 대부분의 테스터가 인터페이스 테스트를 수행할 때 수행하는 작업입니다.

실제로 Postman에는 Pre-request Script 기능이 있습니다. 즉, 테스터는 인터페이스 요청을 하기 전에 요청 매개변수를 처리하는 기능을 사용자 정의할 수 있습니다. 이 기사에서는 이 기능을 예와 함께 소개합니다.

2. 소개

사전 요청 스크립트

1. 사전 요청 스크립트는 요청이 전송되기 전에 실행되어야 하는 컬렉션의 코드 조각입니다.

2. 사용 시나리오는 요청 매개변수에 임의의 숫자가 포함되어 있거나 요청 헤더에 타임스탬프가 포함되어 있거나 요청 매개변수를 암호화해야 하는 등입니다.

3. 예시

작가의 프로젝트를 예로 들어보자

그림과 같이 POST 요청을 위한 인터페이스인데, 인터페이스의 특징은 요청 값을 트랜스 코딩 해야 요청이 성공할 수 있다는 점인데, 트랜스코딩을 하지 않고 직접 요청하면 반환값이 없다. 그림에서 볼 수 있듯이 요청 후 반환 값은 공백입니다.

그림

그런 다음 수동으로 작업할 때 트랜스코딩해야 하는 데이터를 선택하고 마우스 오른쪽 버튼을 클릭한 후 URI 구성 요소 인코딩을 선택하여 데이터 트랜스코딩을 완료합니다.

EncodeURIComponent: 문자열은 URI 구성 요소로 인코딩될 수 있습니다. 반환 값은 일부 문자가 16진수 이스케이프 시퀀스로 대체된 URIstring의 복사본입니다.

그림

트랜스코딩 후 다시 요청하면 요청이 성공한 것을 확인할 수 있습니다.

그림

그렇다면 수동 트랜스코딩 없이 사전 요청 스크립트를 사용하는 방법은 무엇입니까?

Postman은 직접 트랜스코딩할 수 있는 encodeURIComponent 함수를 제공합니다.

그러면 매개변수 값을 찾는 방법은 pm.request.url.query의 get 메소드를 사용하여 지정된 매개변수 값을 얻는 것입니다.

그런 다음 원래 매개변수와 값을 삭제한 다음 매개변수와 변환된 값을 추가합니다.

console.log 메소드는 콘솔에 로그를 인쇄합니다.

코드는 아래와 같이 표시됩니다.

encodevalue = encodeURIComponent(pm.request.url.query.get("p")) // 将参数值进行转换
console.log("p="+encodevalue)

pm.request.url.query.remove("p") // 删除请求参数和值
console.log(pm.request.url.query)

pm.request.url.query.add("p="+encodevalue) // 添加参数与转换后的参数值
console.log(pm.request.url.query)

트랜스코딩된 매개변수 값을 다시 원래 값으로 변경한 후 이 인터페이스를 다시 실행하세요.

수동으로 트랜스코딩할 필요가 없으며 성공적으로 실행될 수 있습니다.

그림

콘솔에 의해 인쇄된 정보입니다.

여기에 이미지 설명을 삽입하세요.

마지막으로 제 글을 주의 깊게 읽어주시는 모든 분들께 감사의 말씀을 전하고 싶습니다. 호혜는 언제나 필요합니다. 비록 그다지 귀중한 것은 아니지만, 사용할 수 있다면 직접 가져갈 수 있습니다.

여기에 이미지 설명을 삽입하세요.

이 정보는 [소프트웨어 테스팅] 친구들을 위한 가장 포괄적이고 완전한 준비 창고가 되어야 합니다. 이 창고는 또한 가장 어려운 여정을 통해 수만 명의 테스트 엔지니어와 동행했습니다. 또한 도움이 되기를 바랍니다!  

추천

출처blog.csdn.net/nhb687095/article/details/133133034