Mỗi thử nghiệm API đều cần dữ liệu để chạy. Một bài kiểm tra đăng nhập cần người dùng. Một bài kiểm tra thanh toán cần đơn hàng, địa chỉ và hồ sơ thanh toán. Một bài kiểm tra tìm kiếm cần vài nghìn hàng để phân trang thực sự có tác dụng. Nhập dữ liệu đó bằng tay rất chậm, và phiên bản nhập bằng tay luôn quá "sạch" để phát hiện ra những lỗi thực sự.
Một trình tạo dữ liệu thử nghiệm sẽ giải quyết vấn đề này. Nó tạo ra các bản ghi thực tế, đa dạng theo yêu cầu để các thử nghiệm của bạn có thể kiểm tra các trường hợp biên mà dữ liệu sản xuất của bạn cuối cùng sẽ gặp phải. Hướng dẫn này giải thích trình tạo dữ liệu thử nghiệm là gì, các loại chính mà bạn có thể lựa chọn và cách tạo dữ liệu thử nghiệm trực tiếp trong Apidog mà không cần thêm một công cụ riêng biệt.
Nếu bạn là người mới hoàn toàn trong việc giả lập phản hồi API, hãy bắt đầu với mock API là gì và quay lại đây để tìm hiểu về mặt dữ liệu của vấn đề.
Trình tạo dữ liệu thử nghiệm là gì?
Trình tạo dữ liệu thử nghiệm là một công cụ hoặc thư viện tạo ra các bản ghi tổng hợp trông giống như dữ liệu sản xuất thực tế. Thay vì viết {"name": "test", "email": "test@test.com"} hàng trăm lần, bạn mô tả hình dạng mong muốn (một tên, một email hợp lệ, một mức giá từ 10 đến 500) và trình tạo sẽ điền vào các giá trị đáng tin cậy.
Dữ liệu thử nghiệm tốt có ba thuộc tính:
- Thực tế. Tên trông giống tên, email vượt qua xác thực, ngày tháng nằm trong phạm vi hợp lý.
- Đa dạng. Không có hai bản ghi nào giống hệt nhau, vì vậy các xác nhận của bạn sẽ bắt được lỗi lệch một đơn vị và lỗi biên.
- An toàn. Nó là dữ liệu tổng hợp, vì vậy bạn không bao giờ sao chép các hồ sơ khách hàng thực (và PII của họ) vào một bộ thử nghiệm.
Mục tiêu không phải là dữ liệu đẹp. Đó là mức độ bao phủ. Một trình tạo cho phép bạn tạo ra một loạt các đầu vào (chuỗi rỗng, tên unicode, số lớn, ngày hết hạn) làm hỏng mã theo những cách mà các dữ liệu mẫu thủ công gọn gàng của bạn không bao giờ làm được.
Tại sao dữ liệu thử nghiệm thực tế lại quan trọng đối với thử nghiệm API
API xác thực đầu vào. Chúng từ chối các email không đúng định dạng, giới hạn các số ngoài phạm vi và phân nhánh trên các trường tùy chọn. Nếu mọi bản ghi thử nghiệm đều là John Doe / john@example.com / quantity 1, bạn chỉ đang kiểm tra trường hợp thành công.
Dữ liệu được tạo thực tế cho phép bạn thực hiện ba điều mà bạn không thể làm bằng tay:
- Kiểm tra với số lượng lớn. Tạo 5.000 sản phẩm và chức năng phân trang, sắp xếp và lọc của bạn sẽ được kiểm tra thực sự.
- Cố tình chạm đến các trường hợp biên. Yêu cầu giá chính xác bằng 0, số lượng âm hoặc tên 256 ký tự để xác nhận quá trình xác thực hoạt động.
- Chạy các thử nghiệm dựa trên dữ liệu. Đưa một bảng đầu vào qua một thử nghiệm và xác nhận kết quả đúng cho mỗi hàng.
Điểm cuối cùng là nơi một trình tạo phát huy tác dụng nhất, và đó là nơi Apidog liên kết việc tạo dữ liệu trực tiếp với việc thực thi thử nghiệm. Xem thêm bên dưới.
Các loại trình tạo dữ liệu thử nghiệm chính
Trình tạo dữ liệu thử nghiệm được chia thành bốn loại. Hầu hết các nhóm cuối cùng đều sử dụng nhiều hơn một loại.
1. Thư viện mã
Các thư viện như Faker.js (JavaScript) và Faker (Python) cung cấp cho bạn một API lập trình: faker.person.fullName(), faker.internet.email(), faker.commerce.price(). Chúng là lựa chọn linh hoạt nhất vì bạn tạo dữ liệu trong mã, gieo hạt để tái tạo và kết nối nó vào các tập lệnh.
Điểm đánh đổi là bạn phải viết và duy trì mã. Nếu bạn làm việc trong JavaScript, bài phân tích chuyên sâu của chúng tôi về Faker.js và cách sử dụng nó trong Apidog sẽ đi sâu vào thư viện và chỉ ra cách các quy tắc Faker đó được kết nối vào công cụ mock của Apidog.
2. Trình tạo độc lập và trực tuyến
Các công cụ như Mockaroo cho phép bạn định nghĩa các cột trong giao diện người dùng web và tải xuống CSV, JSON hoặc SQL. Chúng tiện dụng cho một tệp hạt giống một lần hoặc một bộ dữ liệu nhanh, không cần viết mã. Nhược điểm: dữ liệu là một xuất khẩu tĩnh. Việc tạo lại hoặc giữ nó đồng bộ với một lược đồ đang thay đổi có nghĩa là phải quay lại giao diện người dùng mỗi lần.
3. Trình tạo dựa trên lược đồ
Nếu bạn đã có một thông số kỹ thuật OpenAPI hoặc JSON Schema, một trình tạo dựa trên lược đồ sẽ đọc các loại trường và ràng buộc, sau đó tự động tạo dữ liệu phù hợp. Điều này giữ cho dữ liệu thử nghiệm của bạn phù hợp với hợp đồng. Chúng tôi đề cập đến luồng OpenAPI trong cách tạo dữ liệu mock từ lược đồ OpenAPI. Tiêu chuẩn JSON Schema là thứ giúp điều này có thể: các loại, định dạng và phạm vi đều có thể đọc được bằng máy.
4. Trình tạo dựa trên AI
Tùy chọn mới nhất yêu cầu một mô hình tạo ra các bản ghi có nhận biết ngữ cảnh: một vé hỗ trợ thực tế, một mô tả sản phẩm hợp lý, một hồ sơ người dùng mạch lạc. Điều này phát huy tác dụng khi bạn cần dữ liệu "có ý nghĩa" cùng nhau thay vì các giá trị trường ngẫu nhiên. Xem tạo dữ liệu mock bằng Claude Code để biết một ví dụ thực hành.
Cách tạo dữ liệu thử nghiệm trong Apidog
Đây là phần mà hầu hết các tổng hợp "trình tạo dữ liệu thử nghiệm" đều bỏ qua: nếu bạn kiểm thử API trong Apidog, bạn hoàn toàn không cần một trình tạo riêng biệt. Việc tạo dữ liệu được tích hợp vào ba nơi trong quy trình làm việc.
Mock thông minh với các quy tắc trường. Khi Apidog mock một endpoint, nó sẽ đọc tên và loại của từng trường và tự động tạo ra các giá trị đáng tin cậy. Một trường email trả về một email hợp lệ, một trường createdAt trả về một ngày, một trường price trả về một số. Bạn có thể đính kèm các quy tắc kiểu Faker cho mỗi trường để kiểm soát đầu ra, để mock trả về hình dạng giống như API thực của bạn. Tải xuống Apidog và bất kỳ endpoint nào bạn định nghĩa sẽ bắt đầu trả về dữ liệu thực tế ngay lập tức, không cần duy trì db.json.

Dữ liệu thử nghiệm do AI tạo. Apidog có thể tạo một loạt các bản ghi thử nghiệm cho một endpoint từ lược đồ của nó, vì vậy bạn có được một bộ dữ liệu đa dạng mà không cần tự viết các quy tắc cho từng trường.

Thử nghiệm dựa trên dữ liệu. Đây là điểm hoàn thành chu trình. Bạn đính kèm một tập dữ liệu CSV hoặc JSON vào một bước thử nghiệm và Apidog sẽ chạy bước đó một lần cho mỗi hàng, thay thế các giá trị dưới dạng biến. Một thử nghiệm, nhiều đầu vào, một mẫu xác nhận. Các cơ chế được đề cập trong cách chạy thử nghiệm API tham số từ CSV và JSON, và nếu bạn đang cân nhắc các công cụ cho công việc cụ thể này, công cụ nào để sử dụng cho thử nghiệm API dựa trên dữ liệu so sánh các tùy chọn. Chạy trong CI? Các tập dữ liệu tương tự hoạt động từ terminal với thử nghiệm dựa trên dữ liệu trong Apidog CLI.
Hướng dẫn từng bước: tạo dữ liệu thử nghiệm cho một endpoint
- Mở dự án của bạn trong Apidog và chọn endpoint bạn muốn tạo dữ liệu thử nghiệm.
- Xác định lược đồ phản hồi (hoặc nhập từ tệp OpenAPI của bạn). Tên và loại trường sẽ điều khiển quá trình tạo dữ liệu.
- Bật mock. Apidog sẽ trả về các giá trị được tạo cho mỗi trường ngay lập tức.
- Để kiểm soát các trường cụ thể, thêm một quy tắc mock (ví dụ: đặt
statusthành một trong các giá trịactive,pending,closed). - Đối với các lần chạy thử nghiệm, tạo một tập dữ liệu (CSV hoặc JSON), đính kèm nó vào bước thử nghiệm và bước đó sẽ lặp lại qua mỗi hàng.
Bây giờ bạn đã có các phản hồi thực tế để phát triển và một bảng đầu vào có thể lặp lại để thử nghiệm, cả hai đều từ cùng một nơi bạn viết và chạy các thử nghiệm.
Cách chọn trình tạo dữ liệu thử nghiệm
| Nếu bạn cần… | Sử dụng | Lý do |
|---|---|---|
| Kiểm soát lập trình hoàn toàn trong JS/Python | Thư viện Faker | Linh hoạt, có thể viết script, có thể tái tạo với hạt giống |
| Một tệp hạt giống tĩnh nhanh chóng | Mockaroo hoặc tương tự | Không cần mã, xuất và sử dụng |
| Dữ liệu khớp với hợp đồng API của bạn | Dựa trên lược đồ (OpenAPI/JSON Schema) | Đồng bộ với đặc tả |
| Các bản ghi có nhận biết ngữ cảnh, "hợp lý" | Trình tạo AI | Dữ liệu đa trường mạch lạc |
| Dữ liệu được tạo được kết nối vào mocks và thử nghiệm | Apidog | Một công cụ để mock, tạo và chạy |
Không có công cụ nào là "người chiến thắng" duy nhất. Một nhóm thiên về viết script sẽ dựa vào Faker; một nhóm đã thiết kế API trong Apidog sẽ có được khả năng tạo, mock và chạy dựa trên dữ liệu mà không cần rời khỏi không gian làm việc.
Các phương pháp hay nhất cho dữ liệu thử nghiệm API
- Gieo hạt để tái tạo. Một thử nghiệm thất bại chỉ hữu ích nếu bạn có thể tái tạo chính xác dữ liệu đã gây ra lỗi đó. Sử dụng một hạt giống cố định cho các lần chạy bạn cần lặp lại.
- Tạo cả dữ liệu xấu. Các trường trống, loại sai, tải trọng quá lớn và mã thông báo hết hạn đều thuộc về bộ dữ liệu của bạn, không chỉ các hàng hợp lệ.
- Giữ dữ liệu và lược đồ đồng bộ. Khi hợp đồng thay đổi, hãy tạo lại. Việc tạo dựa trên lược đồ sẽ tự động hóa điều này.
- Không bao giờ sử dụng PII thực. Dữ liệu tổng hợp giúp tránh các quy tắc bảo mật và rủi ro rò rỉ hồ sơ khách hàng vào kho lưu trữ.
- Khớp khối lượng với thử nghiệm. Thử nghiệm phân trang và hiệu suất cần hàng nghìn hàng; một kiểm tra xác thực đơn lẻ chỉ cần một vài hàng.
Câu hỏi thường gặp
Sự khác biệt giữa trình tạo dữ liệu thử nghiệm và máy chủ mock là gì? Trình tạo tạo ra dữ liệu; máy chủ mock cung cấp dữ liệu đó qua HTTP dưới dạng phản hồi API giả. Bạn thường muốn cả hai, đó là lý do tại sao Apidog kết hợp chúng: mock trả về dữ liệu mà trình tạo đã tạo. Một trình tạo độc lập chỉ cung cấp cho bạn một tệp.
Tôi có thể tạo dữ liệu thử nghiệm từ thông số kỹ thuật OpenAPI của mình không? Có. Các công cụ dựa trên lược đồ đọc các loại và ràng buộc của thông số kỹ thuật để tạo ra các bản ghi phù hợp. Xem tạo dữ liệu mock từ lược đồ OpenAPI.
Dữ liệu thử nghiệm được tạo có an toàn để commit vào repo không? Dữ liệu tổng hợp thì có, vì nó không chứa thông tin cá nhân thực. Không bao giờ commit các bản xuất dữ liệu sản xuất.
Làm cách nào để chạy một thử nghiệm với nhiều đầu vào được tạo? Sử dụng thử nghiệm dựa trên dữ liệu: đính kèm một tập dữ liệu CSV hoặc JSON và thử nghiệm sẽ lặp lại theo từng hàng. Hướng dẫn thử nghiệm tham số chỉ ra cách thiết lập.
Tôi có cần khởi động một máy chủ giả để sử dụng dữ liệu thử nghiệm không? Không nhất thiết. Nếu bạn muốn một REST API dùng một lần được hỗ trợ bởi một tệp phẳng, hãy xem hướng dẫn của chúng tôi về json-server và JSONPlaceholder. Đối với các mock nhận biết lược đồ, có thể chia sẻ trong nhóm, hãy sử dụng mock tích hợp của Apidog.
Tóm tắt
Một trình tạo dữ liệu thử nghiệm biến công việc chậm chạp, dễ mắc lỗi là tạo ra các bản ghi thành một mô tả một dòng về hình dạng bạn muốn. Chọn một thư viện mã để kiểm soát script, một công cụ dựa trên lược đồ để duy trì sự phù hợp với hợp đồng của bạn hoặc một trình tạo AI để tạo ra các bản ghi mạch lạc. Nếu bạn đã kiểm thử API trong Apidog, bạn sẽ có khả năng tạo, mock thông minh và chạy dựa trên dữ liệu ở một nơi, vì vậy dữ liệu bạn tạo sẽ trực tiếp đưa vào các thử nghiệm sử dụng nó. Tải xuống Apidog và trỏ nó đến một endpoint để xem dữ liệu thử nghiệm thực tế ngay trong yêu cầu đầu tiên.
