Rest Assured Là Gì

  -  

Rest Assured cho phép bạn kiểm tra các API REST bằng thư viện java và tích hợp tốt với Maven. Với các kỹ thuật đối sánh hiệu quả giúp cho việc khẳng định expected results khá dễ dàng. Rest Assured có các phương thức để tìm nạp dữ liệu từ hầu hết mọi phần của yêu cầu và phản hồi bất kể cấu trúc JSON phức tạp đến mức nào.

Bạn đang xem: Rest assured là gì

Đối với cộng đồng tester, API automation testing vẫn còn khá mới mẻ bởi sự phức tạp của JSON. Nhưng điều đó không làm cho nó kém quan trọng trong quá trình thử nghiệm. Rest Assured.io framework làm cho nó trở nên đơn giản bằng cách sử dụng các khái niệm cơ bản về java core, khiến Rest Assured trở thành một kiến thức rất đáng để học hỏi.

Xem thêm: Bigfun: Đánh Bài Online Fi88

b. Hướng dẫn cài đặt Rest Assured

Trước tiên ta cần setup:

Setup Rest AssuredTạo một Dự án Maven trong IDE. (Ở đây mình dùng Intellij)Mở POM.xml của bạn
*

TH: Rest Assured.io: Java version io.rest-assuredjson-path4.2.0testio.rest-assuredxml-path4.2.0testio.rest-assuredjson-schema-validator4.2.0testTH: Rest Assured.io : Java version 9+ users :

io.rest-assuredrest-assured-all4.2.0testXử lý sự cốTrong trường hợp bạn gặp lỗi và không chắc dependencies có được tải xuống tốt hay không.

Xem thêm: Hướng Dẫn Giải Nén File Game Có File Apk + Data, Cách Nén File Và Giải Nén File Đơn Giản Dễ Hiểu

Thực hiện clean maven sau đó cài đặt maven và nó sẽ được xây dựng lại mà không gặp bất kỳ lỗi nào.Có thể thêm các dòng dưới đây vào lớp java của mình và không thấy lỗi biên dịch nào.

import io.restassured.RestAssured.*;import io.restassured.matcher.RestAssuredMatchers.*;import org.hamcrest.Matchers.*;

2. So sánh Postman vs REST Assured

a. Postman

Ưu điểm

Dễ học nên có thể nhanh chóng sử dụngDễ sử dụng, dễ dàng tạo request trên UIDễ dàng sử dụng với người chưa biết code từ trướcDễ dàng tạo API flowDễ dàng debugDễ dàng view responseCó thể dùng để manual test, automation testDễ dàng tích hợp trong CI khi dùng NewmanPhạm vi người dùng rộng hơn, có nhiều hướng dẫn khi sử dụng Postman

Nhược điểm

Khó khăn trong việc share code cho teamSupport parameterized test: một tính năng chưa tốt của PostmanKhông thể tùy biến được báo cáoKhó sử dụng libraryMỗi collection chỉ có thể cung cấp được 1 tệp data cho nên hạn chế khi thiết kế automation framework hướng dữ liệu

b. REST Assured

Ưu điểm

Cung cấp DLS để kiểm tra để test được hướng BehaviourSử dụng thư viện Java nên có thể tát sử dụng code -> Chi phí bảo trì thấpDễ dàng tạo API flow nếu biết codeDễ dàng sử dụng library nếu biết codeDễ dàng debugDễ dàng tích hợp trong CI khi build tool như Maven hoặc GradleDễ dàng support parameterized test nếu biết codeDễ dàng share code cho team git và dễ dàng review codeCó thể sử dụng được với bất kì tool mã nguồn mở báo cáo nàoKhông giới hạn khi khi thiết kế automation framework hướng dữ liệuCó thể sử dụng excel hoặc csv để import dữ liệu

Nhược điểm

Phải có kiến thức tốt về Java/BDD mới làm việc được trong REST AssuredKhó sử dụng khi tạo request khi mới bắt đầuView response phải nhìn qua console

Từ những thông tin trên ra được một số điểm giống và khác nhau của Postman vs REST Assured sau đây

Giống nhau:

Đều là HTTP client, gửi request và nhận response, extract response.Cung cấp đủ loại HTTP method và những config header cần thiết

Khác nhau:

Tiêu chíPOSTMANREST-ASSURED
Ngôn ngữ lập trìnhTool UI – được viết bằng javascriptJava Library – được viết bằng Java và Groovy
Dễ dàng tạo requestRất dễ, tạo trên UIKhá loằng ngoằng khi bắt đầu
View responseTuyệt vờiPhải view qua console log
DebugDễDễ
Tạo API flowDễ dàng, chỉ cần xếp đúng thứ tự các requestĐã code được thì dễ dàng
Support parameterized testTính năng tồi tệĐã code được thì dễ dàng
Share codeTất cả các requests nằm trong 1 file json rất rất lớn (không tính sharing của Postman Pro)Share qua git và dễ dàng review code
Muốn sử dụng thêm library từ bên ngoàiKhóĐã code được thì dễ dàng
Sử dụng trong CIKhông khó, sử dụng NewmanSử dụng build tool như Maven hoặc Gradle