Sơ Lược Về Api Test Api Là Gì, Tìm Hiểu Về Api Testing Cơ Bản

Để Tester tiến hành được tốt bài toán thử nghiệm API thì kế bên những kỹ năng về Testing, Tester còn bắt buộc trang bị thêm những kiến thức, phát âm biết về Web service, URL, HTTPhường., HTTP Status code, JSON, XML…

Trong bài này tôi đang reviews sơ cỗ các kiến thức liên quan mang đến API, những loại API testing, Test-case cơ phiên bản cùng ví dụ kiểm tra với thử nghiệm tools.Bạn đã xem: Api testing là gì

API là gì?

API là viết tắt của Application Programming Interface, là tập vừa lòng những Routines, Protocols, Tools kết nối cùng với những ứng dụng hoặc APIs khác.

Bạn đang xem: Sơ lược về api test api là gì, tìm hiểu về api testing cơ bản

Routines nói một cách khác là Procedure, Function, hoặc Subroutine để tiến hành một task ví dụ làm sao kia.

Protocols là một định hình để truyền tài liệu giữa 2 hệ thống

Sử dụng API là cách để một lịch trình ứng dụng hoặc hệ thống thúc đẩy với những lịch trình phần mềm hoặc khối hệ thống khác . API nhập vai trò như một hình ảnh tiếp xúc thân các khối hệ thống hoặc phần mềm cùng nhau.

Việc tiến hành API Testing sẽ đảm bảo cho những hệ thống vận động một giải pháp đúng đắn và lập tức mạch như ý.


*

*

Giao tiếp của API cùng với các hệ thốngTìm hiểu một số Kiến thức cơ phiên bản liên quan mang đến API

Với chúng ta đang biết những kỹ năng này thì hoàn toàn có thể bỏ qua mất và gọi phần liên quan mang lại testing phía bên dưới.

URL : Tham khảo https://vi.wikipedia.org/wiki/URL

HTTP: Tđam mê khảo https://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol

HTTP Methods:

GET: Sử dụng để đưa đọc tin trường đoản cú hệ thống theo URI sẽ cung ứng.HEAD: Giống với GET mà lại response trả về không có toàn thân, chỉ có header.POST: Gửi báo cáo tới sever trải qua những parameters HTTPhường.PUT: Ghi đtrằn toàn bộ lên tiếng của đối tượng với đông đảo gì được trình lên.PATCH: Ghi đnai lưng các thông tin được biến đổi của đối tượng người dùng.DELETE: Xóa resource bên trên server.CONNECT: Thiết lập một kết nối cho tới server theo URI.OPTIONS: Mô tả các tùy chọn giao tiếp cho resource.TRACE: Thực hiện tại một bài xích thử nghiệm loop-back theo đường truyền mang lại resource.

HTTP Status Code:

• 1xx — Informational

• 2xx — Success ( e.g. 200 Success)

• 3xx — Redirection ( e.g. 302 Temporary Redirect)

• 4xx — Client Error ( e.g. 400 Bad Request, 404 Not Found )

• 5xx — Server Error (e.g. 500 Internal Server Error)

Tsi khảo chi tiết nghỉ ngơi : https://httpstatuses.com/

JSON: Tđam mê khảo https://www.json.org/json-en.html

XML: Tđê mê khảo https://www.w3schools.com/xml/xml_whatis.asp

RESTful API là gì?

REST: là 1 dạng chuyển đổi cấu tạo tài liệu, một mẫu mã kiến trúc để viết API. Nó sử dụng thủ tục HTTP đơn giản và dễ dàng để tạo cho tiếp xúc giữa những vật dụng. Vì vậy, nuốm vị áp dụng một URL đến câu hỏi xử lý một số thông tin người dùng, REST gửi một trải đời HTTPhường như GET, POST, DELETE … đến một URL nhằm xử trí tài liệu.

RESTful API: là một trong những tiêu chuẩn chỉnh cần sử dụng trong việc thi công API cho những ứng dụng Web (nhỏng kiến thiết Web services), nhằm tiện mang đến việc thống trị các resource. Nó chú trọng vào resource khối hệ thống (như: tệp vnạp năng lượng bản, ảnh, âm tkhô hanh, video, hoặc dữ liệu động…), bao gồm các tinh thần resource được định hình và được truyền thiết lập qua HTTP..

REST vận động dựa hầu hết bên trên thủ tục CRUD ( Create, Read, Update, Delete) tương đương với 4 giao thức HTTP: POST, GET, PUT, DELETE.


*

*

Các các loại API Testing

Sau đấy là các nhiều loại demo buộc phải thực hiện vào API Testing

Functional Testing: Đảm bảo tất cả input cùng output của API đa số chuyển động đúng với tức thời mạch trong hệ thống.Reliability Testing: Đảm bảo API vận động đúng lúc thúc đẩy cùng với những thiết bị không giống cùng không xẩy ra ngắt liên kết giữa chừng.Load Testing: khi có nhiều request gửi cho API cách xử lý thì nên cần bảo đảm luôn luôn tất cả API response trả về đúng như công dụng ước muốn.Stress Testing: Cần cần kiểm tra trường đúng theo lúc API dìm được không ít hơn lượng request mà lại nó hoàn toàn có thể cách xử lý. khi kia API sẽ xử trí vắt nào? Có gửi message như thế nào không? gồm hoạt động như đúng yên cầu không?Security Testing: Cần hòn đảo bảo API luôn có authentication, permissions, access controls, những data gửi đi luôn luôn được mã hóa, những nội dung data được gửi đi-mang đến luôn luôn bảo đảm an toàn vào đúng tận hưởng.

Xem thêm: 7 Bệnh Viện Khám Đau Lưng Ở Đâu Tốt Nhất Tại Tp Hcm, Khám Chữa Đau Lưng Ở Đâu Tốt Tại Tp

Integration Testing: Các giao tiếp của API là liền mạch và đúng chuẩn. Việc thêm, sút, hoặc thay thế API không làm cho tác động hoặc xẩy ra lỗi cho các API khác.Usability Testing: Đảm bảo API dễ cần sử dụng với thân mật với user.Testcase cho API testing

Trước hết chúng ta để mắt tới ví dụ sau:

Dưới đó là API create user, API đang gửi request POST cùng với data có user name với job title như sau:

https://reqres.in/api/users

“name”: “UserTestAPI”, “job”: “leader”

API xử lý thành công xuất sắc, nhận được Response thông tin đã chế tạo thành công xuất sắc cùng trả về báo cáo JSON data cụ thể nhỏng sau;

Response code: 201

“name”: “UserTestAPI”, “job”: “leader”, “id”: “435”, “createdAt”: “2020–09–16T07:22:50.021Z”

Với một API nhỏng bên trên thì bọn họ cần phải có mọi testcase đánh giá những trường hòa hợp sau:

Testcases check cực hiếm trả về dựa trên điều kiện input

Với ví dụ bên trên thì cần kiểm tra xem công bố status code gồm đúng trường vừa lòng không, “name” cùng “job” vẫn đúng chuẩn với phù hợp lệ không, date time bao gồm chính xác cùng với thời gian gửi request ko, về lên tiếng “id" thì tùy thuộc vào yêu thương cần hoặc sệt tả chuyên môn của dự án công trình nhưng kiếm tra( thứ hạng như: id tự tăng, duy nhất…).

thường thì Lúc tôi triển khai chạy thử đa số case này, kế bên Việc kiểm tra request/ response của API thì tôi đang kết hợp bình chọn luôn luôn vận động sống Frontend, Backkết thúc và Database nhằm bảo đảm tài liệu xuyên suốt và luôn luôn đúng.

Vì vậy nhằm đỡ tốn effort cho Việc viết testcase với exedễ thương chạy thử thì trong một testcase các bạn yêu cầu lồng vào các bước soát sổ bên trên cùng expected result ví dụ cho mỗi step.

Testcases kiểm tra trường hòa hợp không trả về giá trị gì

Lúc soát sổ APIs, chúng ta buộc phải buộc phải trả lập ngôi trường thích hợp này, cực kỳ nhiều người Dev làm việc cùng với tôi bảo rằng nó cần yếu xẩy ra. Tin tôi đi, không gì là cần thiết, vậy cần nhằm chắc chắn các bạn yêu cầu giả lập trường thích hợp lỗi không trả về và hãy soát sổ coi thời gian kia API giỏi hệ thống của chúng ta gồm tình trạng ra sao, nó cách xử trí thế nào.

Testcases check trường thích hợp tác động cho APIs or Events khác

Nếu output của API này là input đầu vào của APIs không giống hoặc gồm tác động cho APIs/Events/Interrupts không giống thì nên cần kiểm tra rõ ràng các tác động ảnh hưởng hoặc input kia. Cần check coi APIs/Events/Interrupts bao gồm vận động như mong muốn ao ước ko, tài liệu chuẩn xác ko.

Vd: Sau Khi API create user new thành công thì đang call luôn luôn mang đến API menu user (https://reqres.in/api/listusers), Vậy thì chúng ta yêu cầu check coi sinh hoạt trong danh mục user tất cả hiển thị báo cáo user new tạo thành không, trường hợp có thì nên cần kiểm soát tiếp xem lên tiếng sẽ khá đầy đủ với đúng mực sinh sống trong menu không.

Testcases kiểm tra ngôi trường vừa lòng cập nhật data structure

khi đổi khác data structure của API ( thêm, sửa, xóa, thay đổi hình dạng dữ liệu …) thì chúng ta cần cẩn thận kiểm tra lại các testcase hoặc APIs tương quan mang lại dữ liệu đã sửa thay đổi kia.

Vd: Với API create user phải bổ sung thêm thông tin “email", “password", vậy thì bạn phải update những testcase với thực hiện demo lại toàn thể case sinh sản user tất cả tương quan, cần nhớ đừng chỉ chạy thử lại mỗi ngôi trường thích hợp thêm gmail, password hãy thử nghiệm lại tổng thể những case tích hợp quan trọng để bảo đảm API luôn xử lý đúng. Trong khi chúng ta cũng cần phải update testcase và demo lại những case gồm liên quan đến chức năng List User.

Testcases check ngôi trường đúng theo chuyển đổi Resource

lúc API đề xuất đổi khác hoặc update lại resource, bạn phải update và thực hiện thử nghiệm lại toàn thể những case có liên quan mang lại resource đó.

Vd: Với API danh sách user ban sơ chỉ hiển thị lên tiếng của user được lấy tự API create user, ni cần rước thêm biết tin từ bỏ API Projects để hiện lên biết tin những project nhưng user đó đã tsay mê gia. Với biến đổi đề nghị như thế, bạn cần bổ sung thêm các case tương quan tới sự việc get công bố tự API projects, cùng thử nghiệm tổng thích hợp lại những case liên quan làm việc API danh sách user.

Kết Luận:

Các case trên thì tôi chỉ liệt kê ra các team testcase chủ yếu mà các bạn cần phải tất cả, mà còn sẽ sở hữu những testcase đặc thù theo dự án công trình với phần đông testcase cơ bản như khi bạn test 1 đồ họa giỏi module bình thường( thiếu, vượt, sai đẳng cấp, thừa rank …)

=> bài toán tất cả tiến hành chạy thử thêm các testcase này hay là không thì hay dựa vào vào thực trạng dự án ( requirement, effort, budget…), mặc dù thế cho dù thực hiện hay là không thì Tester nên biết là có những testcase kia và Đánh Giá hoặc Quanh Vùng được vùng unique của dự án công trình.

Các chuyên môn kiến thiết testcases đến APIs thì cơ phiên bản vẫn giống như kiến thiết testcase thông thường, vẫn base bên trên những chuyên môn viết testcase cơ bản nlỗi phân vùng tương tự, cực hiếm biên, đoán lỗi …

Hy vọng các kỹ năng và kiến thức bên trên sẽ giúp ích cho bạn vào vấn đề thử nghiệm API, Phần demo cùng thực hiện chạy thử với tool tôi đang trình diễn ở trong phần sau.