API Testing với Postman (Phần 19) – Phân biệt và sử dụng các loại variables

I. Cách sử dụng các loại biến trong postman script

Trong postman có nhiều loại biến với các mục đích khác nhau, bạn nên biết những function cơ bản với những loại biến này để viết script được nhanh và pro hơn.

1. Biến Global

#Global
GoalsNhiều mục đích, chủ yếu để quick test, và tất cả các request đều có thể sử dụng.
Setpm.globals.set(‘myVariable’, MY_VALUE);
Getpm.globals.get(‘myVariable’);
Removepm.globals.unset(‘myVariable’);
Clearpm.globals.clear();

2. Biến Collection

#Collection
GoalsChỉ có sử dụng với các request nằm trong 1 collection, dùng để lưu trữ những biến mà sẽ sử dụng trong quá trình run test mà không khác nhau giữa các môi trường với nhau: dev, test, staging.
Setpm.collectionVariables.set(‘myVariable’, MY_VALUE);
Getpm.collectionVariables.get(‘myVariable’);
Removepm.collectionVariables.unset(‘myVariable’);
Clearpm.collectionVariables.clear();

3. Biến Environment

#Environment
GoalsDùng riêng cho các môi trường khác nhau của app, có thể lưu các biến mà khác nhau ở mỗi môi trường như URL, username/password, hoặc các data mà dùng cho các request tiếp theo.
Setpm.environment.set(‘myVariable’, MY_VALUE);
Getpm.environment.get(‘myVariable’);
Removepm.environment.unset(‘myVariable’);
Clearpm.environment.clear();
Show namepm.environment.name

4. Biến Local

Biến này chỉ khởi tạo khi ấn request bắt đầu và clear toàn bộ khi finish khi request kết thúc.

#Local
GoalsChỉ dùng trong vòng đời của 1 request
Setpm.variables.set(‘myVariable’, MY_VALUE);
Getpm.variables.get(‘myVariable’);
Removepm.variables.unset(‘myVariable’);
Clearpm.variables.clear();

5. Biến Iteration

Đọc thông tin từ file data dạng csv hoặc json.

#Data
GoalsChỉ work khi dùng với chức năng đọc file data từ CSV hoặc JSON file từ Runner hoặc Newman
Getpm.iterationData.get(‘myVariable’);

II. Cách lấy giá trị các biến Dynamic

Một thời gian dài trước đây, team postman nhận rất nhiều phản hồi của người dùng về việc thêm thư viện để fake data vào trong postman. Và cuối cùng, team postman đã thỏa mãn người dùng bằng việc cho thêm vào postman rất nhiều biến dynamic, có nghĩa là dummy data mỗi lần run. Ví dụ mỗi lần run, mình lại có 1 random ip.

1. Cách gọi biến bên ngoài script

Sử dụng cú pháp:

{{$ten_bien}}   // Ví dụ: {{$randomIP}}

Full list các biến dạng dynamic có ở đây.

2. Cách gọi biến trong Script (pre-request và test)

pm.variables.replaceIn("{{$randomIP}}");

Ví dụ:

III. Tổng kết

Trong postman, có rất nhiều loại biến với scope khác nhau, các bạn có thể thử và tìm cho mình những cách sử dụng thích hợp để có thể sử dụng postman một cách linh hoạt. Theo kinh nghiệm cá nhân của mình, chỉ nên dùng 2 loại biến chính: collection và environment. Biến dạng global và local gần như không cần dùng đến. Ngoài ra bạn nên nắm vững cách dùng biến dynamic để tiết kiệm thời gian fake data.

4.8 6 votes
Article Rating
Subscribe
Notify of
guest
2 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Phương
Phương
1 year ago

Anh Giang ơi, biến local

Chỉ dùng trong vòng đời của 1 request

Em test thử thì thấy biến local vẫn được các request trong Collection run sử dụng. Em đọc document của postman thì thấy đoạn này.

Local variable values are scoped to a single request or collection run, and are no longer available when the run is complete

https://learning.postman.com/docs/sending-requests/variables/