Boundary Value Testing
POST · /api/practice/level4/boundary/order · Nâng cao
Mô tả bài tập
Endpoint đặt hàng nhận { quantity }, chỉ chấp nhận số nguyên trong khoảng 1-100. Đây là bài luyện kỹ thuật thiết kế test case kinh điển: 'Boundary Value Analysis' (test ở đúng biên và ngay sát biên) kết hợp 'Equivalence Partitioning' (chia input thành các nhóm tương đương: hợp lệ, quá nhỏ, quá lớn, sai kiểu). Hãy thử ít nhất 4 trường hợp khác nhau trong số: quantity=1 (biên dưới hợp lệ), quantity=100 (biên trên hợp lệ), quantity=0, quantity=-5, quantity=101 (vượt biên trên), quantity=1.5 (số thập phân), quantity='abc' (sai kiểu dữ liệu).
Mục tiêu học được
- Thực hành Boundary Value Analysis: test đúng tại biên và ngay sát hai bên biên, không chỉ test giá trị 'ở giữa'
- Thực hành Equivalence Partitioning: chia input thành các nhóm giá trị tương đương để không cần test mọi con số
- Nhận ra các lỗi thường gặp: nhầm '<=' với '<', quên kiểm tra kiểu dữ liệu, quên kiểm tra số thập phân trên field chỉ nhận số nguyên
💡 Bài này hoàn thành khi bạn đã thử ít nhất 4 trường hợp khác nhau (kết hợp cả giá trị hợp lệ lẫn không hợp lệ).
Lệnh curl
curl -i -X POST "http://testing-api.systemhub.uk/api/practice/level4/boundary/order" \
-H "X-Practice-Token: YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"quantity": 0}'
Các bước làm trên Postman
- POST http://testing-api.systemhub.uk/api/practice/level4/boundary/order với { "quantity": 1 }, kiểm tra 201 (biên dưới hợp lệ)
- Thử lại với { "quantity": 100 }, kiểm tra 201 (biên trên hợp lệ)
- Thử { "quantity": 0 } và { "quantity": -5 }, kiểm tra đều trả 400
- Thử { "quantity": 101 } (vượt biên trên) và { "quantity": 1.5 } (thập phân), kiểm tra đều trả 400 kèm thông báo lỗi khác nhau
Đăng nhập để lệnh curl ở trên tự động điền sẵn Practice Token thật của bạn.
🧪 Thử nghiệm trực tiếp
Gọi API ngay tại đây. Nếu bạn đã đăng nhập, tiến độ sẽ được ghi nhận tự động khi gọi đúng như kỳ vọng của bài.
Kết quả
Status: