Rest Assured là một trong những thư viện được sử dụng nhiều độc nhất trong API Automation testing. Trong tutorial này mình đang lí giải chúng ta về các khái niệm như thể Rest API, API Testing, API Automation Testing,...Bạn đang xem: Học Api Automation Testing Với Rest Assured Là Gì ? (Từ Điển Anh

API là gì?

API là viết tắt của (Application Programming Interface) – Giao diện thiết kế áp dụng, nó là một trong những tập đúng theo các functions mà rất có thể được truy cập bởi những ứng dụng không giống. Do đó, nó nhỏng là 1 hình ảnh giữa những khối hệ thống ứng dụng khác biệt và thiết lập sự can hệ và thương lượng tài liệu của bọn chúng.

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


*

API Testing là gì?

Trong nền công nghiệp cải cách và phát triển phần mềm văn minh, không hề ít những ứng dụng / hệ thống được thiết kế theo phong cách dựa trên mô hình 3 lớp (3-tier architecture model).

Ba lớp đó là:

Presentation Tier – Tầng ảnh hưởng thẳng với người tiêu dùng, dùng để hiển thị những thành phần hình ảnh nhằm địa chỉ với người tiêu dùng nlỗi tiếp nhận biết tin, thông tin lỗiLogic Tier – Tầng xúc tích, tầng này cũng hoàn toàn có thể được Gọi là business tier, nhiệm vụ của tầng này là đảm nhận với up date các business của khối hệ thống. Tầng này cũng làm cho trọng trách dịch rời, xử lý báo cáo thân 2 tầng Presentation và Data TierData Tier - khu vực lưu trữ với trích xuất tài liệu từ bỏ các hệ cai quản trị CSDL tuyệt những tệp tin vào khối hệ thống. Cho phép tầng Business xúc tích và ngắn gọn tiến hành các truy tìm vấn tài liệu.

3 layers nhắc bên trên đã tiếp xúc với nhau trải qua những hình thức dịch vụ (services) mà mỗi layer cung cấp để tạo cho áp dụng, lớp này cũng ko nên biết bên phía trong lớp tê làm những gì nhưng chỉ nên biết lớp cơ cung ứng dịch vụ gì cho mình với áp dụng nó nhưng mà thôi.

Đối với UI Testing, bọn họ demo dựa trên các hành vi của người tiêu dùng như nhập dữ liệu qua keyboard, tiến hành cliông xã một button như thế nào kia trên screen,… thì so với API Testing, bọn họ tiến hành gửi các request cùng kiểm tra coi output tự API trả về mang đến họ coi khối hệ thống trả về bao gồm quả thật họ ước muốn hay không. Dữ liệu mà API trả về mang đến bạn cũng có thể là JSON với RESTful API Hay những XML cùng với SOAP.

Xem thêm: Ghim Trên Nhận Code Thiên Thư Vtc Mới Nhất, 【 Link Nhận Code

Để hiểu thêm về REST với SOAPhường. thì những bạn cũng có thể tham khảo bài viếtChọn web service giỏi nhất

REST Assured là gì

Rest-assured (RestA) là 1 trong tlỗi viện Java DSL được gây ra bên trên nền HTTP Builder (thỏng viện tạo HTTPhường. request), có thể chấp nhận được tiến hành gửi request và kiểm soát response. Nói đơn giản là 1 thư viện được tạo sẵn nhằm câu hỏi tiến hành kiểm demo API trsống phải thuận tiện rộng. Thực tế, có tương đối nhiều tlỗi viện nhưng bạn cũng có thể cần sử dụng, tuy thế kinh nghiệm cho thấy, Rest Assured dễ dàng cần sử dụng hơn hết, các tính năng hơn, với nhất là nó tất cả một cộng đồng cung ứng rất to lớn.

REST API testing cùng với REST Assured

Lý ttiết nhiều rồi, bọn họ sẽ thực hiện thực hiện api testing qua ví dụ thực tế sau :D

Dự án A được đảm nhiệm thi công một hệ thống kiếm tìm tìm video đến người tiêu dùng JP.., kế bên Việc xuất bản 1 website kiếm tìm tìm thì quý khách hàng còn mong muốn public API của khối hệ thống ra phía bên ngoài. Vậy là tester trong dự án lại cần đảm nhận sứ mệnh chạy thử những api endpoint nhưng mà hệ thống vẫn public.

Đề bài xích đưa ra mang đến tester nhỏng sau:

Test case 1: Search đoạn phim với từ khóa mang lại trước, giới hạn số video clip trả về là 4 videos.Từ khoá: API TestingParameter:tukhoa: Từ khoá của video clip ước muốn searchsoluongvideo: Số lượng đoạn phim mong ước trả về, vào thử nghiệm case ước muốn là 4URL Endpoint: http://api.5min.com/search/tukhoa/videos.json?num_of_videos=soluongvideoKết trái hy vọng muốn: Trả về công dụng bên dưới dạng JSON, trong những số ấy bao gồm liên kết dẫn cho những videos, title và biểu thị của những đoạn phim đóĐiều khiếu nại nhằm test case pass:Trong tác dụng trả về phải gồm HTTP. Status CodeKết trái trả về đề xuất cất từ khoá tra cứu kiếmChỉ tất cả buổi tối đa 4 videos được trả vềCác Clip trả về ko giống nhau nhauTest case 2: Search đoạn Clip cùng với id của video clip, nhưng lại lần này vẫn trả về thông báo chi tiết của video đó và những đoạn phim liên quan mang lại đoạn phim kia (hình dạng nlỗi suggestion video sinh hoạt youtube vậy), cũng số lượng giới hạn số lượng các video clip tương quan trả về là 4Parameter: video_id : Từ khoá của video clip mong muốn searchsoluongvideo: Số lượng video clip ước muốn trả về, vào kiểm tra case ước muốn là 4URL Endpoint: http://api.5min.com/video/list/info.json?video_ids=video_id&num_related_return=soluongvideoKết quả mong mỏi muốn: Trả về hiệu quả dưới dạng JSON, trong đó có biết tin cụ thể về đoạn phim đó cùng những video liên quanĐiều khiếu nại để thử nghiệm case pass:Trong công dụng trả về đề xuất có HTTPhường Status CodeKết trái trả về bắt buộc liên quan tới video clip được search kiếmChỉ tất cả buổi tối nhiều 4 videos được trả vềCác đoạn phim tương quan được trả về ko giống nhau nhau

Vậy, chiến thuật của anh ấy tester là gì? Hãy thuộc mình thanh lịch phần tiếp theo sau nhé

REST API testing với REST Assured – (cont.)

Để giải quyết bài xích toán thù đưa ra sinh sống bên trên, tester nên xây đắp 1 framework với tích hòa hợp Rest Assured có tác dụng tlỗi viện để testing API. Framework tester xây cất cũng buộc phải đáp ứng tiêu chí Re-usability nhằm rất có thể thử nghiệm cho các api endpoint không giống nhưng mà không hẳn mất công viết lại code.

Bây tiếng chúng ta bước đầu !!

1. Xây dựng Project structure.

trước hết, bọn họ sẽ tạo nên 1 Maven project, cùng thiết đặt những thỏng mục như mặt dưới:

Utils folder đang cất 2 class là HelperMethods và RestUtilHelperMethods: Class này vẫn gồm các helpers hoàn toàn có thể reusalbeRestUtil: class này đang bao hàm những methods tương quan cho thỏng viện Rest AssuredTrong thỏng mục ApiTests sẽ sở hữu được 2 class là Example1Test cùng Example2Test, đấy là 2 classes chứa những test cases với các assertionsTrong tlỗi mục TestSuite sẽ sở hữu class AllApiTest, đấy là class Test Runner của họ, class này sẽ đảm nhiệm vấn đề run tất cả các thử nghiệm cases