Le Duy Khuong

Chuỗi: claude-code-20-p3 · Phần 3

Năng suất & công cụ dev

TDD với Claude Code

RED-GREEN-REFACTOR, coverage; tích hợp TDD vào workflow.

2026-03-146 phút đọcVI

Phần 3 của 560% hoàn thành

TDD với Claude Code

English title: TDD with Claude Code

Bài 13 trong chuỗi 20 bài về Claude Code. TDD = viết test trước, code sau — RED (test fail) → GREEN (code tối thiểu pass) → REFACTOR. Bài này nhắc lại chu kỳ, coverage và chất lượng test, và cách tích hợp TDD vào workflow Claude Code (command, skill, rule).


Mở đầu: Viết test trước, code sau — trong workflow Claude Code

Agent thường "muốn" implement trước. Instruction rõ: "viết test trước; không implement cho đến khi test đã viết và đang fail." Command /tdd "Add login validation" (hoặc tương đương) load skill TDD → agent viết test → run (red) → implement → run (green) → refactor. Một lệnh, cả quy trình chạy đúng thứ tự.


1. Đi sâu: RED-GREEN-REFACTOR và coverage

RED-GREEN-REFACTOR: (1) Viết test fail. (2) Implement tối thiểu để test pass. (3) Refactor giữ pass. Chu kỳ ngắn; vài test case → implement → refactor; lặp. Agent cần instruction rõ để không nhảy cóc sang implement.

Coverage: Chỉ báo; coverage cao chưa đủ (test có thể trivial). Kết hợp review test (boundary, error path). Rule/skill: "test phải có assertion rõ, không chỉ pass." Sau phase TDD chạy coverage; dưới ngưỡng thì không compact (hoặc không merge).


2. Khái niệm

  • TDD skill: Steps = viết test → red → implement → green → refactor. Command /tdd gọi skill và truyền scope (vd. tên module).
  • Rule: "Khi implement feature mới, bắt đầu bằng test." Default TDD cho code mới; exception: fix bug có thể test-after rồi bổ sung test.
  • Legacy: Code cũ không có test — chấp nhận implement trước khi có thể, sau đó bổ sung test; không bắt TDD cứng cho mọi dòng legacy.

3. Workflow

  1. /tdd "UserService" (hoặc tương đương). Agent load skill TDD, viết test cho scope đó, chạy (red), implement, chạy (green), refactor.
  2. Chạy coverage; đảm bảo trên ngưỡng. Review test list (edge case, error path).
  3. Verify (bài 12) trước khi compact/commit. Bài 14 nói bảo mật config và secret.

Bài tiếp: Bảo mật config và secret (bài 14).

LDK

Le Duy Khuong

AI Transformation & Digital Strategy. Writing about agentic systems, engineering leadership, and building in public.