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
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 PostmanNhượ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ệub. 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ệuNhượ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 consoleTừ 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ếtKhác nhau:
Ngôn ngữ lập trình | Tool UI – được viết bằng javascript | Java Library – được viết bằng Java và Groovy |
Dễ dàng tạo request | Rất dễ, tạo trên UI | Khá loằng ngoằng khi bắt đầu |
View response | Tuyệt vời | Phải view qua console log |
Debug | Dễ | Dễ |
Tạo API flow | Dễ dàng, chỉ cần xếp đúng thứ tự các request | Đã code được thì dễ dàng |
Support parameterized test | Tính năng tồi tệ | Đã code được thì dễ dàng |
Share code | Tấ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ài | Khó | Đã code được thì dễ dàng |
Sử dụng trong CI | Không khó, sử dụng Newman | Sử dụng build tool như Maven hoặc Gradle |