Nhảy đến nội dung chính

Shameless Green là gì

Trong quá trình phát triển phần mềm theo TDD,  Shameless Green là giai đoạn mà lập trình viên viết mã chỉ đủ để làm cho các bài kiểm thử vượt qua. Điều này có nghĩa là:

  • Mã được viết một cách trực tiếp và đơn giản nhất.

  • Không quan tâm đến việc mã có cấu trúc tốt hay không.

  • Mục tiêu duy nhất là làm cho bài kiểm thử chuyển từ trạng thái thất bại (red) sang thành công (green)

Sau khi đạt được Shameless Green, lập trình viên có thể tiến hành refactor (tái cấu trúc) mã để cải thiện chất lượng và cấu trúc mà vẫn đảm bảo các bài kiểm thử vẫn vượt qua.

Ví dụ

def add(a, b):
    return 3  # Mã "Shameless Green" chỉ để vượt qua bài kiểm thử cụ thể

Nếu bài kiểm thử chỉ kiểm tra add(1, 2) == 3, thì mã trên sẽ vượt qua. Tuy nhiên, nó không đúng cho các trường hợp khác. Sau khi bài kiểm thử vượt qua, bạn sẽ refactor hàm để xử lý đúng cho mọi trường hợp:

def add(a, b):
    return a + b  # Mã sau khi refactor để xử lý đúng cho mọi trường hợp

Lợi ích của Shameless Green

  • Giúp tiến nhanh trong việc phát triển phần mềm.

  • Tập trung vào việc đảm bảo các chức năng hoạt động đúng trước khi tối ưu hóa mã.

  • Giảm thiểu thời gian dành cho việc viết mã phức tạp mà chưa chắc đã cần thiết.

Đỗ Ngọc Tú
Công Ty Phần Mềm VHTSoft