API Testing là một trong những kỹ thuật kiểm tra phổ biến. Đặc biệt đối với những công ty làm về ứng dụng mobile thì đây là điều bức thiết. Vậy API Testing là gì? Bài viết dưới đây của Gockhampha.edu.vn.COM.VN sẽ trả lời cho câu hỏi đó, xem ngay nào!
Bạn đang đọc: API testing là gì? Tổng quan đặc điểm nổi bật về API testing
Contents
Định nghĩa API testing
API Testing, một loại kiểm thử phần mềm, gồm kiểm tra trực tiếp các giao diện lập trình, ứng dụng. Ngoài ra, đây cũng là một phần kiểm thử tích hợp nhằm xác định phần mềm có đáp ứng được mong đợi hay không.
Không giống với các loại kiểm thử khác API Testing chưa có giao diện nên phải thiết lập môi trường khởi tạo. Gọi API cùng các tham số được đề xuất, sau đó kiểm tra kết quả trả về.
Một số ví dụ điển hình về kiểm thử API:
- Dựa trên điều kiện đầu vào để kiểm tra giá trị API.
- Xác nhận API không trả lại kết quả nào hoặc kết quả không đúng.
- Kiểm tra API có kích hoạt một số sự kiện khác hoạc gội một vài sự kiện khác không.
- Xác nhận API đang cập nhật cấu trúc dữ liệu.
So sánh API testing và GUI testing
So với GUI Testing thì API Testing sẽ phù hợp hơn với test automation và test liên tục. Bởi:
- Hệ thống phức tạp: Gui Testing không thể xác minh đầy đủ các functional path hay API/service có liên quan cấu trúc đa nhiệm. Vì vậy có thể nói API là giao diện ổn định nhất đối với hệ thống được test.
- Chu kỳ release ngắn, vòng phản hồi nhanh: Nhóm Agile, DevOps làm việc cùng các vòng lặp ngắn (short iterations), những vòng phản hồi nhanh (fast feedback loops).
Với hoạt động thay đổi thường xuyên này, GUI Testing yêu cầu làm lại nhiều lần để theo kịp. Nhưng đối với testing ở lớp API thì được giảm bớt đáng kể giúp dễ bảo trì hơn.
Hai lý do trên đã nói lên việc ta nên hạn chế phụ thuộc vào GUI Testing mà hãy dùng API Testing. Tuy nhiên, đối với trường hợp xác thực ở system level, mobile testing, usability testing thì vẫn nên dùng GUI Testing.
Thiết lập môi trường test API
API Testing khác với những loại kiểm thử khác vì giao diện GUI chưa có. Vì vậy, bạn phải yêu cầu thiết lập môi trường khởi tạo gọi API cùng các tham số bắt buộc và sau cùng kiểm tra kết quả trả về.
Vì vậy, để thiết lập môi trường thử nghiệm API Testing không đơn giản.
Máy chủ và cơ sở dữ liệu được cấu hình theo yêu cầu ứng dụng.
Khi cài đặt xong, hàm API được gọi để kiểm tra xem API có hoạt động hay không.
Các loại đầu ra của API
Có nhiều đầu ra cho API:
- Một loại dữ liệu bất kỳ
- Trạng thái (Pass hoặc Fail)
- Gọi đến một hàm API khác.
Cùng xem qua ví dụ cho mỗi đầu ra trên.
Bất kỳ loại dữ liệu nào
Ví dụ: Thêm hai số nguyên vào hàm API
Long add (int a, int b)
Các số phải được đưa ra làm tham số đầu vào. Đầu ra là tổng hai số nguyên. Đầu ra sẽ cần phải xác mình với một kết quả mong muốn.
Call phải là
dd (1234, 5656)
Những ngoại lệ phải được xử lý nếu số lượng vượt quá giới hạn số nguyên.
Trạng thái (Pass hoặc Fail)
Xem hàm API bên bên dưới
- Lock()
- Unlock()
- Delete()
Nó sẽ được trả về bất kỳ giá trị nào như True với trường hợp thành công và False khi lỗi.
Test Case có độ chính xác cao có thể gọi các hàm trong tập lệnh bất kỳ. Kế tiếp là kiểm tra những thay đổi trong cơ sở dữ liệu hay application GUI.
Call một API / Event
Ở tình huống này, khi gọi một trong các hàm API thì nó sẽ gọi một hàm khác.
Ví dụ: Hàm API đầu tiên được sử dụng để xóa một record đã chỉ định trong bảng. Kế đến, hàm này gọi một hàm khác để REFRESH cơ sở dữ liệu.
Tìm hiểu thêm: Việt vị là gì? Luật và các tình huống việt vị trong bóng đá
Test case trong API testing
Test case trong kiểm thử API dựa trên những điều sau:
- Dữ liệu trả về dựa trên điều kiện đầu vào: Tương đối dễ kiểm tra, vì đầu vào có thể được xác định, kết quả thì có thể được xác thực.
- Không trả về bất cứ điều gì: Khi không thấy giá trị trả về, một hành vi API trên hệ thống sẽ được kiểm tra.
- Kích hoạt một vài API / Event / Interrupt: Nếu đầu ra API khởi động những event hoặc gián đoạn, thì các listener của event hoặc interrupt sẽ bị theo dõi.
- Cập nhật cấu trúc dữ liệu: Điều này sẽ có một số kết quả hoặc ảnh hưởng đến hệ thống, cần phải xác thực.
- Sửa đổi một số tài nguyên: Khi lệnh gọi API sửa đổi một vài tài nguyên, nó phải được xác thực bằng cách truy cập những tài nguyên tương ứng.
Tại sao cần kiểm thử API?
Bất kỳ điều gì cũng cần được kiểm tra trước khi dẫn đến kết quả như mong đợi.
- Kiểm thử ứng dụng sớm mà không cần giao diện người dùng
Mất nhiều thời gian, công sức sửa nếu ta phát hiện lỗi muộn. API Testing giúp người kiểm thử được tham gia sớm vào quy trình hoàn thiện sản phẩm.
Khi sử dụng API Testing, bạn chắc chắn có thể kiểm thử sớm ứng dụng mà không cần giao diện người dùng. Nó giúp bạn khắc phục kịp thời những lỗi sai trong quá trình làm.
Một ưu điểm nổi bật đó là API Testing có thể kiểm tra rất nhiều logic mà hoàn toàn không bị phụ thuộc vào GUI. Từ đó các vấn đề sai sót khi làm dễ dàng được phát hiện.
- Tạo ra chiến lược kiểm thử tự động, giảm thiểu chi phí
Phía trên là hình ảnh về Kim tự tháp tự động hóa (Automation pyramid). Khi nắm được điều này, ta có thể tạo nên chiến lược tự động hóa hiệu quả.
Chậm rãi từ tầng dưới kim tự tháp là các chi phí liên quan đến việc tạo, duy trì phương pháp, thời gian thực hiện, phạm vi kiểm thử mở rộng.
Kim tự tháp cho ta thấy việc cần làm nhiều kiểm thử tự động qua Uni Test, API Testing hơn là dựa trên GUI.
Thực tế, việc liên tục tích hợp, thời gian dùng cho kiểm thử hồi quy GUI mất rất nhiều thời gian để nhận được phản hồi. Chi phí liên quan đến việc thực hiện, duy trì phương pháp cũng dần tăng lên.
>>>>>Xem thêm: Referral là gì? Lợi ích của Referral và các thuật ngữ có liên quan
Hy vọng bài viết đã giúp bạn giải đáp được thắc mắc rằng API Testing là gì? Hãy ghé thăm dinhnghia để tìm hiểu thêm những thuật ngữ về công nghệ nha.