Apidog

Nền tảng phát triển API hợp tác tất cả trong một

Thiết kế API

Tài liệu API

Gỡ lỗi API

Giả lập API

Kiểm thử API tự động

API REST giả | Quan sát API REST của bạn trong môi trường thực tế

Xây dựng một API REST? Đừng chờ đợi một API thực! API REST giả lập các tương tác trong thế giới thực, cho phép bạn phát triển và kiểm tra chức năng độc lập. Điều này giúp phát triển nhanh hơn và giúp bạn quan sát hành vi của API trong nhiều kịch bản khác nhau.

Minh Triết

Minh Triết

Updated on tháng 11 29, 2024

Phát triển phần mềm thường là một môi trường rất nhanh chóng, vì vậy việc chờ hoàn thành một thành phần nhất định có thể có nghĩa là trì hoãn việc ra mắt sản phẩm. Để ngăn chặn các vấn đề như vậy phát sinh, bạn có thể tận dụng các mock REST API - những công cụ mạnh mẽ cho phép các lập trình viên phát triển và kiểm tra chức năng của API một cách độc lập.

💡
Mocking REST APIs có thể là một công cụ rất mạnh mẽ, đặc biệt là cho các lập trình viên API cá nhân cần phân chia sự chú ý của họ cho nhiều khía cạnh quan trọng của việc phát triển API.

Khi bạn không thể xử lý tất cả các quy trình API một mình, bạn nên xem xét việc sử dụng một công cụ phát triển API như Apidog. Tạo các mock REST API với Apidog đảm bảo rằng các REST API của bạn sẵn sàng đối mặt với các tình huống thực tế.

Để bắt đầu sử dụng các tính năng mock miễn phí của Apidog, hãy nhấn nút bên dưới! 👇 👇 👇
button

Mocking REST APIs là gì?

Mocking REST APIs được coi là một kỹ thuật trong phát triển phần mềm, nơi bạn tạo ra phiên bản mô phỏng của một REST API thực để phát triển và kiểm tra ứng dụng của bạn mà không phụ thuộc vào sản phẩm API cuối cùng.

Điều này có nghĩa là các lập trình viên API không còn phải vội vã hoàn thành một hình thức "cuối cùng" của một API để quan sát cách nó tương tác với các ứng dụng.

Các quy trình chính liên quan đến Mocking REST APIs

1.Xác định các điểm cuối API

Đầu tiên, xác định các chức năng cụ thể của REST API thực mà bạn muốn mô phỏng. Ánh xạ các chức năng này đến các điểm cuối (URL) trong API mock của bạn.

Các lập trình viên có thể xem xét việc bao gồm các phương thức yêu cầu khác nhau (GET, POST, PUT, DELETE) cho mỗi điểm cuối, phản ánh hành vi của API thực.

2.Xác định các yêu cầu mong đợi

Xác định định dạng của các yêu cầu đến cho mỗi điểm cuối. Điều này bao gồm:

  • Phương thức yêu cầu: GET, POST, PUT, DELETE, v.v.
  • Các tham số đường dẫn: Bất kỳ biến nào được bao gồm trong đường dẫn URL (ví dụ: /users/:id).
  • Các tham số truy vấn: Các cặp khóa-giá trị được thêm vào URL (ví dụ: /products?category=electronics).
  • Nội dung yêu cầu: Dữ liệu được gửi trong phần thân cho các yêu cầu POST hoặc PUT (thường ở định dạng JSON hoặc XML).

3. Xác định phản hồi mô phỏng

Xác định các phản hồi mong đợi của một API mock sẽ cung cấp cho các yêu cầu khác nhau. Điều này bao gồm:

  • Mã trạng thái phản hồi: Mã trạng thái HTTP như 200 (OK), 404 (Không tìm thấy), hoặc 500 (Lỗi máy chủ nội bộ).
  • Tiêu đề phản hồi: Siêu dữ liệu gửi kèm theo phản hồi, chẳng hạn như loại nội dung hoặc mã thông báo xác thực.
  • Nội dung phản hồi: Dữ liệu thực tế mà API mock của bạn trả về thường khớp với cấu trúc dữ liệu của API thực (ví dụ: đối tượng JSON hoặc phần tử XML).

4. Mô phỏng độ trễ và lỗi (Tùy chọn)

Để có trải nghiệm thực tế hơn, các lập trình viên có thể cấu hình API mock để giới thiệu độ trễ trong các phản hồi hoặc mô phỏng các điều kiện lỗi. Điều này giúp kiểm tra hành vi của ứng dụng của bạn dưới độ trễ mạng hoặc các lỗi API không mong đợi.

5. Chọn một framework mock:

Các framework mock khác nhau giúp đơn giản hóa quy trình xây dựng các mock REST API. Các tùy chọn phổ biến bao gồm:

  • Mockito (Java)
  • Mockoon (Web-based)
  • WireMock (Java)
  • Postman Mocks (công cụ phát triển API)

Các framework này cho phép các lập trình viên xác định các điểm cuối, các kỳ vọng yêu cầu và phản hồi mock bằng cách sử dụng giao diện thân thiện với người dùng hoặc mã trong ứng dụng của bạn.

6.Tích hợp với ứng dụng của bạn

Cấu hình ứng dụng của bạn để tương tác với API mock thay vì API thực. Điều này thường liên quan đến việc đặt URL cơ sở của API mock trong cấu hình của ứng dụng của bạn.

7.Phát triển và kiểm tra

Với API mock đã được thiết lập, bạn có thể bắt đầu phát triển và kiểm tra logic ứng dụng của mình. Bạn có thể gửi các yêu cầu khác nhau đến API mock và xác minh các phản hồi mong đợi, cho phép các lập trình viên xác định và sửa lỗi trong sự tương tác của ứng dụng của bạn với API.

Khi nào bạn nên mock REST APIs?

Mocking REST APIs nổi bật trong nhiều kịch bản phát triển, cung cấp một môi trường kiểm soát để xây dựng và kiểm tra các ứng dụng một cách hiệu quả. Dưới đây là một số tình huống chính mà chúng đặc biệt có giá trị:

1. Phát triển và kiểm tra độc lập:

  • Khi API thực không khả dụng, đang phát triển hoặc có quyền truy cập hạn chế, các API mock cho phép các lập trình viên tiếp tục phát triển và kiểm tra mà không có sự trì hoãn.

2. Tạo mẫu nhanh và lặp lại:

  • Cần nhanh chóng xác minh chức năng cốt lõi của một ứng dụng hoặc tương tác giao diện người dùng với một API? Các API mock cung cấp một cách nhanh chóng để xây dựng các mẫu và lặp lại thiết kế mà không phụ thuộc vào API thực.

3. Mô phỏng các tình huống khác nhau:

  • Các API mock cung cấp sự linh hoạt để định nghĩa nhiều phản hồi và điều kiện lỗi khác nhau. Điều này cho phép các lập trình viên kiểm tra hành vi của ứng dụng của bạn dưới các kịch bản khác nhau, bao gồm các trường hợp biên và các lỗi API không mong đợi.

4. Tách biệt logic ứng dụng:

  • Bằng cách mock API, các lập trình viên có thể tập trung kiểm tra logic nội bộ của ứng dụng của bạn mà không có các phụ thuộc bên ngoài. Điều này giúp xác định lỗi trong mã và đảm bảo xử lý đúng các phản hồi API.

5. Kiểm tra đơn vị nhanh hơn:

  • Mocking giúp đơn giản hóa việc kiểm tra đơn vị của mã tương tác với API. Các lập trình viên có thể định nghĩa các phản hồi mock cụ thể cho các bài kiểm tra đơn vị của bạn, dẫn đến các bài kiểm tra nhanh hơn và đáng tin cậy hơn.

6. Đào tạo và tài liệu:

  • Các API mock có thể được sử dụng để tạo ra những môi trường đào tạo thực tế cho các lập trình viên hoặc kiểm tra QA. Thêm vào đó, chúng có thể làm tài liệu tham khảo cho hành vi mong đợi của API, hỗ trợ trong việc tạo tài liệu.

Vượt xa những tình huống này, hãy xem xét việc mock REST APIs khi:

  • API liên quan là mới hoặc không ổn định.
  • API thực có giới hạn tốc độ sẽ cản trở việc kiểm tra.
  • Cần kiểm tra các kịch bản xử lý lỗi cụ thể.

Các lựa chọn thay thế cho REST API Mocks

1.Kiểm tra hợp đồng:

  • Khái niệm: Cách tiếp cận này tập trung vào việc xác định một hợp đồng giữa ứng dụng của bạn và API thực trước. Hợp đồng này phác thảo hành vi mong đợi, bao gồm các định dạng yêu cầu, phản hồi và xử lý lỗi.
  • Lợi ích: Khuyến khích giao tiếp rõ ràng giữa các nhóm phát triển và đảm bảo cả hai bên đều đồng nhất về chức năng của API.
  • Nhược điểm: Cần đầu tư ban đầu vào việc xác định hợp đồng và có thể không đủ linh hoạt cho việc phát triển lặp nhanh khi mà các chi tiết API vẫn đang tiến hóa.

2.Kiểm tra với môi trường Sandbox:

  • Khái niệm: Nếu có sẵn, một số API cung cấp một môi trường sandbox được thiết kế đặc biệt cho mục đích kiểm tra. Điều này tái hiện chức năng của API thực với dữ liệu hoặc chức năng hạn chế.
  • Lợi ích: Cung cấp một mô phỏng gần hơn về các tương tác thực tế so với các mock.
  • Nhược điểm: Tính khả dụng phụ thuộc vào nhà cung cấp API cụ thể. Các môi trường Sandbox có thể có chức năng hoặc dữ liệu hạn chế so với môi trường sản xuất.

3.Các công cụ tạo mẫu UI/UX:

  • Khái niệm: Trong một số trường hợp, nơi mà trọng tâm chính là kiểm tra các tương tác của người dùng với API, các công cụ tạo mẫu UI/UX có thể được sử dụng. Những công cụ này cho phép bạn tạo mô phỏng giao diện người dùng và giả lập các phản hồi API mà không cần một backend hoàn toàn chức năng.
  • Lợi ích: Thích hợp cho phát triển giai đoạn đầu hoặc kiểm tra giao diện người dùng.
  • Nhược điểm: Không phù hợp để kiểm tra logic ứng dụng phức tạp tương tác với API.

Ví dụ thực tế về REST API Mocks

1.Mô phỏng API Quản lý Người dùng:

  • Hãy tưởng tượng bạn đang phát triển một ứng dụng cho phép người dùng đăng ký và đăng nhập. Bạn có thể mock một API quản lý người dùng với các điểm cuối cho:
  • POST /users: Để mô phỏng việc đăng ký người dùng, trả về một đối tượng người dùng mock với ID và token sau khi đăng ký thành công.
  • POST /login: Để mô phỏng việc đăng nhập của người dùng, kiểm tra thông tin xác thực đã cung cấp và trả về một phản hồi mock với một token xác thực nếu thành công.
  • API mock này cho phép bạn kiểm tra chức năng đăng ký và đăng nhập của ứng dụng độc lập, ngay cả trước khi API quản lý người dùng thực sự được phát triển hoàn toàn.

2.Kiểm tra xử lý lỗi cho một API thương mại điện tử:

  • Bạn đang xây dựng một ứng dụng giỏ hàng tương tác với một API thương mại điện tử. Bạn có thể mock API thương mại điện tử và định nghĩa các phản hồi cho các kịch bản khác nhau:
  • GET /products/:id (thành công): Trả về một đối tượng sản phẩm mock với chi tiết.
  • GET /products/:id (lỗi): Trả về mã trạng thái 404 (Không tìm thấy) cho các ID sản phẩm không hợp lệ, cho phép bạn kiểm tra cách ứng dụng của bạn xử lý các lỗi như vậy.
  • POST /orders: Trả về mã trạng thái 201 (Đã tạo) cho việc đặt hàng thành công, hoặc mã 500 (Lỗi máy chủ nội bộ) để kiểm tra cách ứng dụng của bạn xử lý lỗi cho các đơn hàng thất bại.
  • Bằng cách này, bạn có thể chủ động đảm bảo rằng ứng dụng của bạn xử lý một cách mềm mại các tình huống lỗi khác nhau mà API thương mại điện tử thực phản hồi.

3.Tạo mẫu ứng dụng thời tiết với dữ liệu thời tiết giả mạo:

  • Bạn đang xây dựng một ứng dụng thời tiết. Thay vì chờ đợi một API thời tiết thực, bạn có thể mock một API với các điểm cuối cho:
  • GET /weather?city=:city trả về dữ liệu thời tiết giả mạo (nhiệt độ, dự đoán) cho một thành phố nhất định.
  • Điều này cho phép bạn nhanh chóng tạo mẫu UI của ứng dụng và các tương tác người dùng với dữ liệu thời tiết mà không cần tích hợp API thực tế.

4.Kiểm tra đơn vị các tương tác API:

  • Bạn đang phát triển một hàm trong ứng dụng của mình lấy dữ liệu từ một API mạng xã hội. Bạn có thể mock API mạng xã hội để trả về dữ liệu cụ thể cho việc kiểm tra đơn vị:
  • Xác định một đối tượng phản hồi mock với thông tin người dùng mong đợi cho một kịch bản lấy dữ liệu thành công.
  • Sử dụng phản hồi mock này trong bài kiểm tra đơn vị của bạn để xác minh hàm của bạn phân tích và xử lý đúng dữ liệu đã lấy.

Apidog - Mock Các REST API của bạn Chỉ với Vài Nhấp Chuột

Mocking REST APIs chủ yếu cung cấp hai lợi ích phổ quát:

  1. Bạn không còn yêu cầu phải vội vàng hoàn thành một REST API để quan sát sự tương tác của nó với các ứng dụng.
  2. Bạn sẽ có nhiều thời gian hơn để hoàn thiện các chức năng của REST API, cung cấp cho người tiêu dùng của bạn công việc chất lượng tốt nhất.

Tất cả những điều này có thể được đảm bảo nếu bạn sử dụng Apidog, một công cụ phát triển API toàn diện mà bên cạnh việc mock, cũng cho phép người dùng xây dựng, kiểm tra và tài liệu hóa các API.

thông số kỹ thuật apidog
button

Tạo API với Apidog

Apidog cung cấp cho người dùng một nền tảng và chức năng để tạo ra các API của riêng họ! Với khả năng cá nhân hóa API của bạn, bạn có thể tạo ra API tốt nhất để phù hợp với nhu cầu của dự án của bạn.

api mới apidog

Bắt đầu bằng cách nhấn nút New API, như hình ở trên.

thêm chi tiết api mới apidog

Tiếp theo, bạn có thể chọn nhiều đặc điểm của API. Trên trang này, bạn có thể:

  • Đặt phương thức HTTP (GET, POST, PUT hoặc DELETE)
  • Đặt URL API (hoặc điểm cuối API) cho sự tương tác giữa máy khách và máy chủ
  • Bao gồm một hoặc nhiều tham số được truyền trong URL API
  • Cung cấp một mô tả về chức năng mà API hướng đến.

Mocking API với Apidog

Khi bạn đã tạo một API với Apidog, bây giờ bạn có thể mock nó. Sẽ có một phần mà bạn có thể lấy URL mock cho API cụ thể đó.

lấy url mock apidog

Tại đây, hãy sao chép URL mock thuộc về API mà bạn muốn mock. Khi đã có, bạn có thể tiếp tục bằng cách dán URL mock đó vào bất kỳ trình duyệt nào để xem JSON mock của nó!

kết quả json mock apidog

Kích hoạt Cài đặt Mock Nâng cao với Apidog

Với Apidog, bạn có thể cung cấp nhiều cài đặt và điều kiện hơn cho API của mình, tiếp tục đặt các ràng buộc mô phỏng các điều kiện nhất định trong thực tế.

cài đặt mock nâng cao apidog

Bạn có thể đặt các điều kiện nâng cao hơn thông qua cài đặt Advanced Mock, như được thể hiện trong hình trên. Phần này cũng sẽ yêu cầu bạn cung cấp một kỳ vọng, vì vậy hãy sẵn sàng với những gì mà API của bạn nên có thể thực hiện và cung cấp!

Kết luận

Bằng cách kết hợp các mock REST API vào quy trình phát triển của bạn, bạn có được khả năng phát triển và kiểm tra các thành phần front-end và logic ứng dụng độc lập. Sự tách biệt này cho phép các chu kỳ phát triển nhanh hơn và kiểm tra đơn vị có trọng tâm hơn.

Điều quan trọng hơn, việc mock cho phép bạn mô phỏng các tình huống thực tế, bao gồm xử lý lỗi và các trường hợp biên, mà không phụ thuộc vào một API bên ngoài hoặc tính khả dụng của nó. Cách tiếp cận chủ động này của việc phát triển dẫn đến các ứng dụng mạnh mẽ và bền bỉ hơn. Về cơ bản, các mock REST API hoạt động như một lưới an toàn, cho phép bạn xây dựng với sự tự tin trong khi quan sát hành vi của API trong một môi trường kiểm soát.

Các API mock ngày càng dễ dàng hơn với sự trợ giúp của một công cụ phát triển API tiên tiến như Apidog. Cho dù đó là các tính năng cơ bản của việc mock một API hay cần các tính năng mock nâng cao, Apidog sẽ hỗ trợ bạn cho toàn bộ vòng đời API!