Hướng dẫn test API

Hướng dẫn sử dụng Postman cho test API    

  • Báo cáo

Postman là gì?

Postman là một App Extensions, cho phép làm việc với các API, nhất là REST, giúp ích rất nhiều cho việc testing. Hỗ trợ tất cả các phương thức HTTP (GET, POST, PUT, DELETE, OPTIONS, HEAD ...) Postman cho phép lưu lại các lần sử dụng. Sử dụng cho cá nhân hoặc team lớn.

Cài đặt

Là một công cụ mã nguồn mở (Open Source), Postman có thể dễ dàng tải về. Truy cậo trang chủ link và chọn nền tảng muốn cài đặt như cho Mac, Windows hoặc Linux rồi tiến hành cài đặt.

Cách sử dụng

Làm việc với request get

Request GET được sử dụng để truy vấn thông tin được truyền vào từ URL. Điều này sẽ không làm thay đổi gì với endpoint. Chúng ta sẽ sử dụng URL bên dưới cho các ví dụ trong bài này:

https://jsonplaceholder.typicode.com/users

Trong workspace

Hướng dẫn test API
  • Chú ý: Có thể có nhiều trường hợp request GET không thành công. Nó có thể là do URL của request không hợp lệ hoặc do chứng thực không thành công(authentication).

Hướng dẫn pass authentication

Như các bạn cũng biết, khi sử dụng một ứng dụng nào đó thì chúng ta hay phải tạo một tài khoản để có thể đăng nhập vào ứng dụng đó.

Khi vào một trang web bán hàng chẳng hạn, khi bạn muốn thực hiện chức năng thêm vào giỏ hàng thì yêu cầu bạn phải đăng nhập mới có thể thực hiện chức năng đó. Đúng vậy có những chắc năng mà bạn phải đăng nhập mới có thể thưc hiện được.

Để có thể test một chức năng trên postman mà yêu cầu bạn phải đăng nhập thì postman cho phép bạn truyền lên header của nó một biến Authorization có value là dạng chuối mã hóa Base64. Giá trị này chính là giá trị access_token của user khi user đó đăng nhập vào hệ thống.

Thực hiện: Chuyến đến tab header, thêm key Authorization và giá trị access_token của user đang đăng nhập.

Hướng dẫn test API

Hướng dẫn pass basic authen

Phân biệt Authorization và Authentication

Authentication và Authorization hai khái niệm này liên quan chặt chẽ đến nhau. Trong khi Authentication cho phép hệ thống biết bạn là ai thì Authorization là quá trình cho phép hoặc từ chối ai đó truy cập vào một cái gì khi mà Authentication được thực hiện.

Chắc hẳn khi làm việc trong các dự án, khi các bạn test trên môi trường staging có lẽ đã gặp trường hợp phải pass qua basic authen.

Basic Access Authentication(Xác thực truy cập cơ bản) là loại đơn giản và cơ bản nhất hiện có. Nó chỉ kiểm tra ủy quyền của 1 người nào đó (đó là lí do tại sao chúng ta gọi xác thực truy cập cơ bản).

Hướng dẫn pass basic authen trong postman

Sử dụng endpoint: https://postman-echo.com/basic-auth với GET request

Tạo một request GET với endpoint: https://postman-echo.com/basic-auth và nhấn nút create ta sẽ thấy trả về Unauthorized.

Hướng dẫn test API

Bây giờ chúng ta sẽ xác thực bằng mã hóa postman.

Chọn tab Authorization và click Basic Auth

Hướng dẫn test API

Nhập username là postman và pasword là pasword sau đó click Preview Request. Sau đó click Send. Bạn sẽ thấy kết quả trả về  "authenticated": true Vậy là chúng ta đã pass basic authen trong postman.

Hướng dẫn test API

Làm việc với request post

Request post khác với request get ở chố request post có thao tác dữ liệu. Bước 1: Kích dấu + để thêm mới một tab cho request mới:

Hướng dẫn test API

Bước 2: Trong tab mới

Bước 3: Trong tab Body

Hướng dẫn test API

Bước 4: Copy và paste chỉ một user từ kết quả request trước như bên dưới. Đảm bảo rằng mã đã được sao chép chính xác với các dấu đóng mở. Thay đổi id thành 11 và đặt name bất kỳ tên nào bạn muốn. Bạn cũng có thể thay đổi các trường khác như address.

[
    {
        "id": 11,
        "name": "Krishna Rungta",
        "username": "Bret",
        "email": "[email protected]
	",
        "address": {
            "street": "Kulas Light",
            "suite": "Apt. 556",
            "city": "Gwenborough",
            "zipcode": "92998-3874",
            "geo": {
                "lat": "-37.3159",
                "lng": "81.1496"
            }
        },
        "phone": "1-770-736-8031 x56442",
        "website": "hildegard.org",
        "company": {
            "name": "Romaguera-Crona",
            "catchPhrase": "Multi-layered client-server neural-net",
            "bs": "harness real-time e-markets"
        }
    }
]
Hướng dẫn test API
  • Chú ý: Request POST nên đúng định dạng để đảm bảo dữ liệu được yêu cầu sẽ được tạo. Kinh nghiệm để check dữ liệu JSON đúng định dang hay không, bạn có thể sử dụng tool như: https://jsonformatter.curiousconcept.com/
Hướng dẫn test API

Bước 5:

Các thiết lập các tham số Request

Tham số hóa dữ liệu là một trong những tính năng hữu ích nhất của Postman. Để tạo cùng một request với dữ liệu khác nhau, bạn có thể sử dụng các biến với tham số. Những dữ liệu này có thể từ một tệp dữ liệu hoặc biến môi trường. Tham số hóa giúp tránh lặp lại các thử nghiệm tương tự  và có thể sử dụng để kiểm thử tự động.

Các tham số được tạo thông qua việc sử dụng dấu ngoặc kép: {{sample}}. Chúng ta hãy xem một ví dụ về việc sử dụng các tham số trong request trước đây

Hướng dẫn test API

Bây giờ hãy tạo một tham số cho request

Bươc  1:

Không nhận đựoc giá trị nào vì chúng ta chưa đặt giá trị cho biến này.

Hướng dẫn test API

Bước 2: Để sử dụng biến này bạn cần thiết lập môi trường

Bước 3:

Bước 4: Kích Close nếu bạn muốn đóng màn hình này

Hướng dẫn test API

Bước 5: Trở lại request GET và kích nút Send. Bạn sẽ nhìn thấy kết quả của bạn

Hướng dẫn test API

Cách tạo colection

Collection đóng một vai trò quan trọng trong việc tổ chức các bộ thử nghiệm. Nó có thể được import và export để dễ dàng chia sẻ các collection giữa các nhóm. Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách tạo và thực hiện một bộ sưu tập.

Bắt đầu tạo một collection:

Bước 1: Click vào nút New ở góc trái của trang:

Hướng dẫn test API

Bước 2: Chọn Collection, Cửa sổ tạo Collection sẽ hiển thị ra:

Hướng dẫn test API

Bước 3: Nhập vào tên Collection và mô tả. Sau đó nhấn nút Create, sau đó 1 collection sẽ được tạo ra:

Hướng dẫn test API

Bước 4: Trở lại request GET lần trứoc và kích nút Save:

Hướng dẫn test API

Bước 5:

  • Chọn Postman Test Collection.
  • Kích nút Save to Postman Test Collection
Hướng dẫn test API

Bước 6: Postman test collection bấy giờ sẽ chứa một request

Hướng dẫn test API

Bước 7: Lặp lại Bước 4-5 cho request POST phần trước. Collection bây giờ sẽ có hai request.

Hướng dẫn test API

Cách chạy Collection sử dụng Runner

Có hai cách để chạy một collection đó là sử dụng Collection Runner và  Newman. Hãy bắt đầu thực thi collection bằng Collection Runner.

Bước 1: Kích nút Runner ở góc trên bên cạnh nút Import

Hướng dẫn test API

Bước 2:  Trang Collection Runner sẽ xuất hiện như ở bên dưới. Theo các mô tả ở các trường bên dưới.

Hướng dẫn test API

Bước 3: Chạy Postman Test Collection bằng cách thiết lập sau:

  • Chọn Postman test collection- Thiết lập Iterations là 3
  • Thiết lập Delay là 2500 ms
  • Kích nút Run Postman Test
Hướng dẫn test API

Bước 4 Trang kết quả chạy sẽ được hiển thị sau hi kích nút Run. Phụ thuộc và delay, bạn sẽ nhìn thấy kết quả mà chúng thực hiện.

  • Khi test kết thúc, bạn có thể nhìn thấy trạng thái nếu nó Passed hoặc Failed và kết quả mỗi lần lặp (iteration).
  • Bạn nhìn thấy trạng thái Pass cho các request GET
  • Khi chúng ta không có bất kỳ thử nghiệm nào cho POST, sẽ có một message hiển thị This request did not have any tests.
Hướng dẫn test API

Bạn có thể thấy tầm quan trọng của việc có các test trong các requesst để bạn có thể xác minh trạng thái HTTP nếu thành công và dữ liệu được tạo hoặc truy xuất.

Kết luận

Bài viết trên đây cho bạn biết cách sử dụng cơ bản của POSTMAN, một công cụ rất tuyệt vời giúp cho các developer khi cần test cách truyền params hoặc kết quả respond từ API trả về.

Tham khảo

https://www.guru99.com/postman-tutorial.html

https://www.toolsqa.com/postman/basic-authentication-in-postman/