API testing giúp QC nhìn thấy dữ liệu đi như thế nào, hệ thống phản hồi ra sao, và lỗi đang nằm ở lớp nào. Không cần là dev mới test được API, nhưng QC tốt bắt buộc phải hiểu API để kiểm đúng dữ liệu và đúng hành vi hệ thống.
Snapshot
| Hạng mục | Thông tin |
|---|---|
| Level | Core Skill |
| Estimated effort | 12-14 giờ |
| Deliverables | 7 đầu ra bắt buộc, gồm 6 file chính và 1 package tổng hợp |
| Tools needed | Postman, browser DevTools, API docs hoặc Swagger nếu có, Google Docs/Sheets |
| Pass condition | Hoàn thành đủ deliverable bắt buộc, test tối thiểu 10 API request, verify được request + response + status code, có bài auth/permission cơ bản, và tạo được UI/API mapping đủ rõ để mentor nhìn ra data flow |
| Mentor focus | Học viên có hiểu API đang test gì không, có đọc request/response có chủ đích không, có phân biệt được 401 và 403 không, có verify data chứ không chỉ verify code không, và có nối được thao tác UI với API tương ứng không |
Mục Tiêu Tuần
1. Kiến thức cần hiểu
Học viên cần hiểu API không phải một “đầu nối kỹ thuật khó hiểu”, mà là nơi hệ thống nhận dữ liệu, xử lý logic và trả phản hồi lại cho UI. Tuần này giúp học viên nắm được những thành phần cơ bản nhưng rất quan trọng của một API request và response:- Method:
GET,POST,PUT,PATCH,DELETE - Headers, query params, path params
- Request body, response body
- Status code và ý nghĩa của từng nhóm lỗi/thành công
- Auth, token và permission ở mức API
- Status code đúng chưa đồng nghĩa với dữ liệu đúng.
- Response hợp lệ không chỉ là JSON đẹp, mà phải đúng field, đúng value, đúng business meaning.
- UI action luôn có khả năng tương ứng với một hoặc nhiều API call phía dưới.
2. Kỹ năng cần làm được
Tuần 4 không dừng ở việc “gửi được request”, mà đòi hỏi học viên làm được các tác vụ có thể dùng ngay trong team:- Gửi request bằng Postman với method, params, headers và body đúng ngữ cảnh.
- Đọc response và xác minh đúng status code, message, schema cơ bản, field chính và business data.
- Test được CRUD API ở mức cơ bản.
- Test được auth và permission ở mức API với các tình huống token thiếu, token sai hoặc đúng token nhưng sai quyền.
- Nối được form input trên UI với payload API và hiểu response đang tác động lại UI như thế nào.
3. Tư duy cần hình thành
Tuần 4 xây một tư duy rất quan trọng: đừng chỉ nhìn UI, hãy nhìn cả data flow. QC tốt không chỉ hỏi “bấm Save có thành công không”, mà còn hỏi:- UI đang gửi request nào?
- Payload có map đúng từ input người dùng không?
- Response có thật sự đúng về mặt dữ liệu hay chỉ đúng về status code?
- Lỗi này là do UI gửi sai, API xử lý sai, hay UI hiển thị sai dữ liệu đúng?
Vì Sao Tuần Này Cực Kỳ Quan Trọng
Tuần 4 là bước ngoặt vì đây là lần đầu tiên học viên nhìn thấy dữ liệu không “tự nhiên xuất hiện” trên UI. Phía sau mỗi form, list page, nút Save hay nút Search đều có request, payload, response và trạng thái backend tương ứng.Đây là tuần học viên bắt đầu hiểu dữ liệu đi như thế nào
Trước tuần 4, học viên đã biết:- đọc requirement,
- thiết kế test case,
- quan sát UI,
- log bug.
- UI đã gửi request chưa?
- Request body có đủ field chưa?
- API trả về lỗi thật hay UI hiểu sai response?
- Response trả về có sai business data không?
API testing giúp tách lỗi frontend và backend
Đây là một trong những giá trị thực chiến nhất của tuần 4. Khi một chức năng hiển thị sai dữ liệu, QC cần đủ bình tĩnh để không kết luận ngay theo cảm tính. API testing giúp bóc tách:- UI sai vì hiển thị response sai,
- hay API đã trả dữ liệu sai từ đầu,
- hay request payload bị map sai từ input người dùng,
- hay auth/permission đang chặn ở lớp backend nhưng UI không xử lý đúng.
Nếu bỏ qua tuần này, các tuần sau sẽ khó đi sâu
- Tuần DB verification: khó đối chiếu UI, API, DB vì chưa quen nhìn data flow.
- Tuần workflow/permission: khó hiểu vì chưa quen test auth, role và response hành vi ở backend.
- Tuần integration/final package: chỉ biết test bề mặt, không lý giải được lỗi ở tầng sâu hơn.
Những lỗi tuần 4 người mới rất hay mắc
- Gửi request nhưng không biết mình đang verify gì.
- Chỉ check status code
200rồi kết luận pass. - Không kiểm response body, field hoặc business data.
- Không đối chiếu payload với input UI.
- Không hiểu
401khác403ở đâu. - Gửi request đúng tool nhưng sai context nghiệp vụ.
- Không quản lý environment/token gọn gàng nên collection khó review.
- Collection lộn xộn, request naming yếu, mentor rất khó đọc.
API Testing Cho QC Để Làm Gì
QC không cần viết backend để test API có giá trị. API testing cho QC giúp:- nhìn được dữ liệu request gửi đi có đúng không,
- nhìn được hệ thống phản hồi bằng dữ liệu nào,
- xác định nhanh lỗi nằm ở UI hay backend,
- kiểm được auth/permission ở lớp không nhìn thấy hết trên UI,
- tăng độ chắc chắn khi verify bug, retest bug hoặc explain impact cho team.
Status Code Đúng Chưa Đủ, Còn Phải Kiểm Gì
| Chỉ nhìn status code | QC cần kiểm thêm |
|---|---|
200 OK nên kết luận pass | Response body có đủ field không, value đúng không, total count có đúng không, data có đúng context nghiệp vụ không |
201 Created nên kết luận create thành công | Record được tạo đúng dữ liệu chưa, field default có đúng không, UI có phản ánh record mới đúng không |
400 Bad Request là đủ | Message lỗi có đúng rule không, field báo lỗi có đúng không, API có chặn đúng input sai không |
401 hoặc 403 là “không cho dùng” | Phải phân biệt là thiếu/xấu token hay là có token nhưng không đủ quyền |
401 vs 403 Khác Nhau Thế Nào
| Tình huống | Ý nghĩa đúng |
|---|---|
| 401 Unauthorized | Request chưa được xác thực hợp lệ: thiếu token, token sai, token hết hạn hoặc auth header không hợp lệ |
| 403 Forbidden | Request đã được xác thực, nhưng user không có quyền thực hiện hành động đó |
- Không gửi token khi gọi API
GET /employeesvà nhận401: hợp lý. - Gửi token của role
Viewervào APIPOST /employeesvà nhận403: hợp lý.
Payload UI vs Payload API
Một trong những kỹ năng quan trọng nhất của tuần 4 là nhìn thấy mối nối giữa UI và backend:- Người dùng nhập
Tên nhân viên,Email,Phòng bantrên form. - UI map các input đó thành request payload.
- API nhận payload, xử lý và trả về response.
- UI dùng response đó để hiển thị toast, update list, chuyển trang hoặc báo lỗi.
| Lớp | Ví dụ cần nhìn |
|---|---|
| UI input | Email người dùng nhập trên form |
| Request payload | Trường email có được gửi đúng key, đúng format, đúng value không |
| Response body | API trả về record mới, message, id, status như thế nào |
| UI update | Toast có đúng không, list có xuất hiện record mới không, form có reset hay không |
Một API Note Tốt Trông Như Thế Nào
API note tốt không phải là ảnh chụp màn hình Postman rồi kết thúc. Nó phải giúp mentor hiểu học viên đang test gì và verify gì:- API này dùng để làm gì.
- Request gồm method, endpoint, params, headers, body nào.
- Response mong đợi gồm status code, field chính, message hoặc business data nào.
- Điều gì được xem là pass, điều gì đáng ngờ.
- API này liên quan tới thao tác UI nào hoặc dữ liệu nghiệp vụ nào.
Kế Hoạch Theo Ngày
Ngày 22 - API Basics
Chủ đề: Hiểu request/response như ngôn ngữ cơ bản của hệ thống Mục tiêu của ngày- Hiểu API là gì và vì sao QC cần test API.
- Nắm được method, headers, params, body, status code theo cách dùng được ngay.
- Vượt qua ngộ nhận “API là việc của dev, QC chỉ cần nhìn UI”.
GET,POST,PUT,PATCH,DELETE- Headers, query params, path params
- Request body, response JSON
- Status code thường gặp:
200,201,400,401,403,404,500 - API call đứng ở đâu trong luồng UI -> backend -> UI
- Viết note ngắn cho từng method với ví dụ nghiệp vụ thực tế.
- Chọn 1 tính năng như
Tạo nhân viênhoặcLoginvà chỉ ra:- UI action nào gọi API nào,
- API đó nhận gì,
- API đó trả gì.
- Tạo bảng phân biệt
request hợp lệvớirequest gửi được nhưng verify sai.
day22_api_basics.md
- Bạn giải thích được API bằng logic hệ thống, không chỉ bằng định nghĩa sách vở.
- Bạn biết method khác nhau kéo theo mục đích kiểm khác nhau.
- Bạn không còn nhìn API như một “hộp đen kỹ thuật”.
- Học tên method nhưng không hiểu nên dùng để verify điều gì.
- Chỉ mô tả
requestvàresponseở mức lý thuyết. - Không nói được API liên quan gì tới hành vi trên UI.
- Hỏi:
Nếu UI báo lưu thành công nhưng em chưa nhìn API, em còn thiếu lớp thông tin gì? - Kiểm tra xem học viên đã thật sự hiểu API như một phần của data flow hay chưa.
Ngày 23 - Làm Quen Postman
Chủ đề: Dùng Postman như công cụ kiểm chứng, không phải công cụ bấm thử Mục tiêu của ngày- Biết tạo request, collection, folder và environment theo cách dễ review.
- Hiểu variable giúp test API có tổ chức hơn như thế nào.
- Vượt qua ngộ nhận “save request là đủ”.
- Tạo request, send request, save request
- Collections và folder grouping
- Environment variables, token variable, base URL
- Naming request rõ ràng theo module và hành vi
- Cách tổ chức collection để mentor đọc là hiểu phạm vi test
- Tạo collection
QC Learning API. - Chia folder cơ bản:
AuthEmployeeProducthoặc một module demo tương tự
- Tạo environment với
base_url,token,invalid_tokennếu phù hợp. - Viết 1 note ngắn giải thích vì sao cách tổ chức collection này giúp review dễ hơn.
day23_postman_collection.json
- Collection của bạn có naming và grouping rõ.
- Bạn không hardcode mọi giá trị nếu có thể dùng variable.
- Mentor mở collection là hiểu được learner đang test nhóm API nào.
- Request đặt tên mơ hồ như
test1,api1,new request. - Không tách folder nên collection rất khó đọc.
- Không dùng environment/token variable, làm bài khó review và khó chạy lại.
- Hỏi:
Nếu đưa collection này cho một bạn khác, họ có biết request nào phục vụ auth và request nào phục vụ CRUD không? - Ưu tiên review tính rõ ràng và tái sử dụng của collection trước số lượng request.
Ngày 24 - Test GET API
Chủ đề: Đọc dữ liệu trả về, không dừng ở200 OK
Mục tiêu của ngày
- Test được list API và detail API ở mức QC thực dụng.
- Biết verify response data, pagination, empty response và field quan trọng.
- Vượt qua ngộ nhận “GET chỉ cần check code 200”.
- GET list vs GET detail
- Query params: page, limit, keyword, filter
- Empty response, no data, pagination metadata
- Field presence, data type cơ bản, count/total logic
- Test tối thiểu 5 GET API từ hệ thống demo hoặc public API phù hợp.
- Với mỗi API, ghi rõ:
- mục tiêu API,
- params dùng để test,
- status code,
- field chính cần verify,
- điều gì đáng ngờ nếu code đúng nhưng data sai.
- Tạo ít nhất 1 ví dụ kiểu:
- GET trả
200nhưngtotalsai, - GET trả
200nhưng thiếu field quan trọng, - GET trả
200nhưng danh sách không khớp filter.
- GET trả
day24_get_api_notes.md
- Bạn biết kiểm không chỉ code mà còn cả body response.
- Bạn biết GET list có thêm logic pagination/filter chứ không chỉ “lấy dữ liệu”.
- Bạn chỉ ra được ít nhất 1 tình huống
200nhưng vẫn fail về mặt dữ liệu.
- Chỉ ghi code 200/404 mà không nói data có đúng không.
- Không đối chiếu params với dữ liệu trả về.
- Không kiểm empty response hoặc total count.
- Hỏi:
Nếu GET trả 200 nhưng danh sách sai total count, em coi là pass hay fail? Vì sao? - Kiểm tra xem học viên có thật sự biết verify response data hay chưa.
Ngày 25 - Test POST / PUT / PATCH / DELETE
Chủ đề: Verify CRUD API theo góc nhìn dữ liệu và side effect Mục tiêu của ngày- Test được create, update, patch và delete ở mức cơ bản.
- Biết verify validation error và side effect dữ liệu.
- Vượt qua ngộ nhận “gửi request thành công là đủ”.
POSTđể tạo dữ liệuPUT/PATCHđể cập nhật dữ liệuDELETEđể xóa hoặc soft delete tùy context- Validation error ở mức API
- Side effect sau create/update/delete
- Gửi request tạo, sửa, xóa dữ liệu bằng Postman.
- Với mỗi nhóm CRUD, ghi rõ:
- payload gửi đi,
- status code mong đợi,
- field nào cần verify trong response,
- side effect nào cần kiểm thêm.
- Tạo ít nhất 2 ví dụ:
- POST trả
201nhưng record tạo sai dữ liệu, - DELETE trả
200nhưng record vẫn còn hiển thị hoặc trạng thái xóa không đúng.
- POST trả
day25_crud_api_notes.md
- Bạn verify được create/update/delete không chỉ bằng status code.
- Bạn nhìn thấy validation error như một phần bắt buộc của test API.
- Bạn biết side effect dữ liệu sau hành động CRUD là thứ cần kiểm.
- Không đối chiếu response với payload gửi đi.
- Không kiểm record sau update hoặc delete.
- Gửi request đúng tool nhưng sai context nghiệp vụ, ví dụ patch sai field hoặc bỏ quên uniqueness rule.
- Hỏi:
POST trả 201 nhưng một field business quan trọng bị lưu sai, em xử lý thế nào? - Xem học viên có hiểu CRUD API theo góc nhìn dữ liệu hay chỉ theo thao tác tool.
Ngày 26 - Auth Và Permission Trong API
Chủ đề: Xác minh user nào được làm gì ở lớp backend Mục tiêu của ngày- Hiểu auth và permission ở mức API cơ bản.
- Phân biệt đúng
401và403. - Vượt qua ngộ nhận “UI đã ẩn nút thì API chắc cũng an toàn”.
- Bearer token
- Token thiếu, token sai, token hết hạn
- Unauthorized vs Forbidden
- Role-based access ở mức API
- Tại sao permission phải được kiểm ở backend, không chỉ ở UI
- Chọn 1 API cần quyền như
POST /employeeshoặc tương tự. - Test 3 tình huống:
- không có token,
- token sai hoặc hết hạn,
- đúng token nhưng role không đủ quyền.
- Ghi rõ:
- status code nhận được,
- message/error body,
- vì sao đây là
401hay403, - nếu UI chỉ ẩn nút nhưng API không chặn thì rủi ro gì.
day26_auth_permission_api.md
- Bạn phân biệt được xác thực với phân quyền.
- Bạn không gọi chung mọi lỗi quyền là “không có quyền”.
- Bạn thấy được rủi ro nếu permission chỉ nằm ở UI.
- Nhầm
401và403. - Chỉ test “đúng token” mà không test token thiếu/sai.
- Không mô tả impact của lỗi permission ở backend.
- Hỏi:
Nếu Viewer không thấy nút Create trên UI nhưng vẫn gọi được API tạo record, đây là lỗi gì và nghiêm trọng ở đâu? - Kiểm tra xem learner có hiểu permission ở lớp API như một control thật hay không.
Ngày 27 - Mapping UI Với API
Chủ đề: Nối thao tác người dùng với payload và response backend Mục tiêu của ngày- Nối được input UI với request payload.
- Nối được response API với hành vi hiển thị của UI.
- Vượt qua ngộ nhận “UI và API là hai bài riêng”.
- Một form Create hoặc Update map field UI sang payload như thế nào.
- Response ảnh hưởng toast, redirect, list refresh hoặc error state ra sao.
- Dấu hiệu payload map sai, field bị thiếu, value bị chuyển sai type hoặc sai key.
- Chọn 1 form Create thực tế hoặc demo.
- Ghi lại:
- input trên UI,
- payload request,
- response body,
- UI update sau response.
- Tạo ít nhất 2 ví dụ:
- UI submit thành công nhưng payload thiếu field quan trọng,
- UI hiển thị success nhưng response trả về data chưa đúng.
day27_ui_api_mapping.md
- Bạn nối được input UI với key trong payload.
- Bạn nhìn ra response ảnh hưởng tới UI như thế nào.
- Bạn có thể mô tả bug nằm ở UI mapping hay API response.
- Chỉ chụp payload mà không đối chiếu với input trên UI.
- Không xem response tác động lại UI ra sao.
- Kết luận dữ liệu sai nhưng không chỉ ra sai ở đoạn nào của flow.
- Hỏi:
Trong flow này, nếu dữ liệu hiển thị sai trên UI, em sẽ kiểm ở những điểm nào trước để xác định lỗi nằm ở đâu? - Xem học viên có thật sự hiểu data flow hay chỉ chụp lại request/response.
Ngày 28 - Tổng Kết Tuần 4
Chủ đề: Gói API testing thành một package có thể review và dùng tiếp Mục tiêu của ngày- Kết nối collection, API notes, auth tests và UI/API mapping thành một package thống nhất.
- Tự đánh giá learner đã hiểu API ở mức nào.
- Chuẩn bị nền để sang giai đoạn verify database và integration sâu hơn.
- API testing package tốt phải thể hiện được:
- learner đang test API nào,
- đang verify điều gì,
- auth/permission được kiểm thế nào,
- UI được nối với backend ra sao.
- Collection chỉ là một phần; giá trị thật nằm ở logic verify đi kèm.
- Tạo 1 mini package API test gồm:
- collection,
- tối thiểu
10request mẫu, - notes verify cho GET/CRUD/auth,
- UI/API mapping cho ít nhất 1 form.
- Tự rà lại package trước khi nộp:
- request naming có rõ không,
- environment có gọn không,
- note có nói rõ đang verify gì không,
- auth/permission đã có chưa,
- data flow đã nhìn thấy chưa.
week04_api_testing/
- Package của bạn không chỉ là tập request được lưu lại, mà là một bộ API testing có logic.
- Bạn chứng minh được mình biết API nào đang phục vụ action UI nào.
- Bạn phân biệt được “gửi request được” với “đã verify đúng”.
- Nộp collection nhiều request nhưng không có giải thích verify.
- Collection lộn xộn, naming kém, khó review.
- Có request auth nhưng không giải thích được vì sao là
401hay403.
- Hỏi:
Nếu bỏ hết note verify và chỉ giữ collection, mentor còn đánh giá được bao nhiêu năng lực thật của em? - Đánh giá package ở góc độ team có thể dùng lại và hiểu được data flow hay không.
Deliverables Cần Nộp
| Tên deliverable | Mục đích | Format file | Bắt buộc/Khuyến nghị | Mentor sẽ review điểm gì | Common issue in submission |
|---|---|---|---|---|---|
day22_api_basics.md | Xác nhận học viên hiểu cấu trúc request/response và vai trò API với QC | .md | Bắt buộc | Có giải thích được method, params, body, status code trong ngữ cảnh test không | Chép định nghĩa lý thuyết, không gắn với hành vi hệ thống |
day23_postman_collection.json | Kiểm tra khả năng tổ chức collection và environment có thể review | .json | Bắt buộc | Naming, folder, variable, readability của collection | Request lộn xộn, hardcode token, khó chạy lại |
day24_get_api_notes.md | Kiểm tra năng lực verify GET API và đọc response data | .md | Bắt buộc | Có kiểm code + response body + pagination/empty response không | Chỉ check 200, không kiểm data |
day25_crud_api_notes.md | Kiểm tra khả năng test CRUD API và side effect dữ liệu | .md | Bắt buộc | Có đối chiếu payload, response và side effect sau create/update/delete không | POST/DELETE pass theo code nhưng không verify dữ liệu |
day26_auth_permission_api.md | Kiểm tra mức hiểu auth/permission ở lớp API | .md | Bắt buộc | Có test token thiếu/sai và role sai quyền, có phân biệt 401/403 không | Gọi chung mọi lỗi quyền là “forbidden” |
day27_ui_api_mapping.md | Kiểm tra khả năng nối UI action với payload/response backend | .md | Bắt buộc | Có map được input UI -> payload -> response -> UI update không | Chụp request/response nhưng không giải thích data flow |
week04_api_testing/ | Đóng gói API testing package để mentor review tổng thể | Thư mục | Bắt buộc | Package có logic verify rõ, có đủ GET/CRUD/auth/UI mapping không | Nộp collection nhiều request nhưng thiếu note và thiếu cấu trúc |
KPI & Focus
KPI tối thiểu để qua tuần 4
- Hoàn thành
100%deliverable bắt buộc. week04_api_testing/có tối thiểu10API request được tổ chức trong collection.- Bắt buộc có đủ các nhóm:
GETCRUD mutation(POST/PUT/PATCH/DELETEtùy ngữ cảnh)auth/permissionUI/API mapping
day24_get_api_notes.mdphải có ít nhất1ví dụstatus code đúng nhưng data fail.day26_auth_permission_api.mdphải thể hiện rõ:- không token,
- token sai hoặc hết hạn,
- đúng token nhưng sai quyền.
day27_ui_api_mapping.mdphải map được ít nhất1form với chuỗi:- input UI
- payload
- response
- UI update
Focus của tuần
- Verify meaning, not just mechanics: đừng dừng ở việc request gửi được.
- Data over code-only: status code đúng chưa đủ, cần kiểm dữ liệu và business meaning.
- Trace the flow: luôn cố nối UI action với backend behavior.
- Readable package: collection và note phải đủ rõ để mentor đọc là review được ngay.
Mini Rubric Cho Tuần 4
Strong = 3, Pass = 2, Need Improvement = 1
Khuyến nghị qua tuần khi điểm trung bình từ 2.0 trở lên và không có tiêu chí trọng yếu nào ở mức Need Improvement, đặc biệt là Đọc đúng status code, Verify response data, Auth/permission và UI/API mapping.
| Tiêu chí | Strong | Pass | Need Improvement |
|---|---|---|---|
| Hiểu đúng cấu trúc API request/response | Giải thích được request và response trong ngữ cảnh hành vi hệ thống thật | Hiểu cơ bản nhưng còn thiên lý thuyết | Chỉ nhớ thuật ngữ, không dùng được |
| Test đúng method và input | Chọn method, params, headers, body phù hợp với mục tiêu verify | Gửi được request đúng phần lớn nhưng còn thiếu ngữ cảnh | Gửi request máy móc, sai context nghiệp vụ |
| Đọc đúng status code | Phân biệt được 200/201/400/401/403/500 và ý nghĩa verify của từng mã | Đọc được phần lớn mã thông dụng nhưng còn chưa chắc | Gộp status code theo cảm tính, nhầm 401 và 403 |
| Verify được response data | Kiểm cả field, value, message, pagination hoặc business data quan trọng | Có kiểm response body nhưng còn nông | Gần như chỉ nhìn code, ít nhìn data |
| Test được auth/permission cơ bản | Có đủ case token thiếu/sai và role sai quyền, giải thích đúng bản chất | Có test nhưng chưa phân tích sâu | Bỏ qua hoặc làm sai auth/permission |
| Nối được UI action với API call | Map rõ input UI -> payload -> response -> UI update | Có nối được phần lớn nhưng còn thiếu một đoạn trong flow | Xem UI và API như hai bài tách biệt |
| Cải thiện sau feedback | Note/collection tiến bộ rõ, sửa đúng trọng tâm | Có sửa nhưng còn sót | Chỉnh hình thức nhiều hơn logic verify |
Common Mistakes
| Lỗi thường gặp | Vì sao nguy hiểm | Cách sửa |
|---|---|---|
| Chỉ check code 200 rồi kết luận pass | Có thể bỏ sót response sai field, sai data, sai business meaning | Luôn kiểm thêm body, field chính, message, pagination hoặc value quan trọng |
| Không kiểm body response | Không biết hệ thống trả đúng dữ liệu hay chưa | Với mỗi request, ghi rõ field nào cần verify và vì sao |
| Không so payload với input UI | Dễ bỏ sót lỗi map sai field hoặc sai value giữa UI và backend | Luôn đối chiếu input trên form với key/value trong payload |
| Không phân biệt 401 và 403 | Test auth/permission sai bản chất, bug log sai hướng | Nhớ rõ: 401 là auth fail, 403 là authenticated nhưng không đủ quyền |
| Gửi request đúng tool nhưng sai context nghiệp vụ | Request có thể chạy được nhưng không chứng minh được logic cần test | Trước khi send, tự trả lời: request này đang verify rule hoặc hành vi nào |
| Không lưu environment/token đúng cách | Collection khó review, khó chạy lại, dễ sai do hardcode | Dùng variable cho base_url, token, invalid_token và naming rõ ràng |
| Collection lộn xộn, khó review | Mentor khó nhìn ra phạm vi test và learner cũng khó quản lý | Tổ chức theo folder/module và naming theo hành vi |
Mentor Review Guide
Mentor review collection như thế nào
- Xem naming request có nói rõ module và mục tiêu kiểm không.
- Xem folder structure có logic review không.
- Xem learner có dùng environment/variable hợp lý không.
- Xem collection có thật sự phản ánh nhóm test GET/CRUD/auth hay chỉ là tập request lưu tạm.
Mentor review API note như thế nào
- Learner có giải thích API này dùng để làm gì không.
- Có ghi rõ đang verify request nào, response nào, business data nào không.
- Có ví dụ code đúng nhưng data sai không.
- Có nối API note với UI action hoặc business context không.
Nên hỏi gì để biết learner hiểu API hay chỉ bấm tool
Request này đang verify điều gì ngoài status code?Nếu response trả 200 nhưng field business chính sai, em coi là bug ở đâu?Ở flow này, UI input nào map vào payload nào?Vì sao case này là 401 chứ không phải 403?Nếu bỏ Postman đi, em còn giải thích được data flow của action này không?
Dấu hiệu learner hiểu data flow vs chỉ thao tác máy móc
| Chỉ thao tác máy móc | Hiểu data flow |
|---|---|
| Gửi được request nhưng không nói được đang verify gì | Nói rõ request này bảo vệ hành vi hoặc rule nào |
| Chỉ nhớ status code | Đọc cả response body và business data |
| Chụp Postman đẹp nhưng note rỗng | Collection và note giải thích rõ luồng dữ liệu |
| Gộp auth với permission thành một | Phân biệt được token fail và role fail |
| Không nối UI với API | Map rõ UI action, payload, response, UI update |
Nên ưu tiên sửa lỗi gì trước
- Sửa tư duy “check code là đủ” trước.
- Sửa nhầm
401/403trước khi tối ưu format note. - Sửa collection lộn xộn và naming yếu trước khi tăng số lượng request.
- Nếu learner chưa nối được UI với API, kéo lại phần data flow trước khi đi tiếp tuần sau.
Self-Check Cuối Tuần
Trước khi nộp bài, học viên nên tự tick:- Tôi hiểu
GET,POST,PUT,PATCH,DELETEkhác nhau ở mục tiêu sử dụng và cách verify. - Tôi đọc được request body và response body chứ không chỉ bấm send.
- Tôi biết status code nào đang phản ánh điều gì ở mức cơ bản.
- Tôi phân biệt được
401và403. - Tôi test được auth/permission cơ bản với token thiếu, token sai hoặc sai quyền.
- Tôi nối được ít nhất một thao tác UI với API tương ứng.
- Tôi biết response đúng về code chưa đủ, còn phải đúng về dữ liệu.
- Collection của tôi đủ rõ để mentor hoặc người khác mở ra là hiểu phạm vi test.
- Tôi biết output nào của mình còn yếu nhất và cần mentor review sâu hơn.
Mapping Review
- Weekly score: /templates/weekly-assessment-template
- Tự đánh giá cuối tuần: /templates/self-assessment-template
- API review chung: /mentor-guide/review-checklist
- Quy tắc feedback của mentor: /mentor-guide/feedback-rules
- Scoring framework chung: /evaluation/scoring-framework
Kết Thúc Tuần
Sau tuần 4, học viên đã đi thêm một bước rất quan trọng: từ chỗ test giao diện và ghi nhận lỗi bề mặt, sang chỗ đọc được request, response và data flow của hệ thống. Đây là lúc learner bắt đầu kiểm chất lượng không chỉ ở lớp hiển thị, mà ở lớp dữ liệu và hành vi backend đằng sau UI. Khi bước sang giai đoạn verify database và các lớp sâu hơn, hãy mang theo ba mindset này:- đừng chỉ hỏi “UI có đúng không”, hãy hỏi “data đi đúng chưa”;
- đừng chỉ nhìn status code, hãy nhìn cả response meaning;
- đừng coi Postman là công cụ bấm thử, hãy dùng nó như công cụ kiểm chứng hệ thống.