Giới thiệu hệ thống
Vấn đề thường gặp trong phát triển & kiểm thử phần mềm
Trong một dự án phần mềm hiện đại, quá trình phát triển thường được chia thành nhiều nhóm chức năng như frontend, backend, kiểm thử (QA) và tích hợp hệ thống. Các nhóm này làm việc song song với mục tiêu rút ngắn thời gian phát triển và đẩy nhanh tiến độ ra mắt sản phẩm.
Tuy nhiên, trên thực tế quá trình này thường gặp phải một số vấn đề phổ biến:
- Backend chưa sẵn sàng
- Frontend team không thể tích hợp do thiếu API.
- Mất thời gian chờ đợi backend hoàn thiện.
- Ảnh hưởng đến tiến độ và khả năng test giao diện.
-> Giải pháp: Mock API giúp frontend phát triển độc lập. Giúp tăng tốc frontend
- API phụ thuộc hệ thống khác
- Một số API nằm ở hệ thống bên thứ ba (ví dụ: ngân hàng, đối tác).
- Không thể gọi thử hoặc bị giới hạn số lần truy cập.
- Rủi ro nếu hệ thống ngoài bị lỗi → ảnh hưởng toàn bộ test.
-> Giải pháp: Mock lại API bên ngoài để đảm bảo chủ động khi test. Giảm sự phục thuộc vào môi trường khác
- Khó kiểm thử lỗi (timeout, dữ liệu sai)
- API thật thường khó mô phỏng lỗi có kiểm soát.
- Không thể dễ dàng test các kịch bản "góc chết", như:
- Trả sai JSON schema
- Timeout kết nối
- ...vv
-> Giải pháp: Mock API để chủ động tạo phản hồi lỗi, giúp test bao phủ tốt hơn, chủ động kiểm thử lỗi, gỡ lỗi dễ hơn, viết test tốt hơn
Giải pháp
Để giải quyết những vấn đề trên, Serivce Visualization được ra đời. Đây là một sản phẩm nổi bật trong nền tảng LLQ QA Platform, là một bộ công cụ cho phép tạo ra các endpoint giả mô phỏng hành vi của các API thật. Những endpoint này có thể trả về dữ liệu tĩnh, mô phỏng trạng thái lỗi tương tự như khi làm việc với hệ thống backend hoặc dịch vụ bên ngoài.
Giả lập phản hồi API bằng dữ liệu định nghĩa sẵn.
Thay thế API thật trong quá trình phát triển/test.
- Mục tiêu:
- Giảm phụ thuộc
- Kiểm soát phản hồi
- Tăng tốc phát triển

Serivce Visualization trong kiểm thử API
Mặc dù API giả không thay thế API thật trong môi trường production, nhưng nó đóng vai trò cực kỳ quan trọng trong giai đoạn phát triển và kiểm thử, hỗ trợ đầy đủ các khía cạnh khi làm việc với API như:
-
Xây dựng kịch bản kiểm thử test tự động ngay cả khi backend chưa sẵn sàng.
-
Kiểm tra nhiều trường hợp khác nhau: thành công, lỗi, time-out…
-
Tách biệt hệ thống cần test với phần phụ thuộc.

Việc sử dụng Service Visualization giúp tăng tốc độ phát triển, giảm lỗi và tạo ra một quy trình làm việc thống nhất – từ thiết kế đến kiểm thử.