Bỏ qua

Bài Tập 3: Tư Duy Về Framework 4 Giai Đoạn

⏱️ Thời gian: ~25 phút
🎯 Mục tiêu: Hiểu sâu lý do thiết kế framework — không chỉ học thuộc lòng


Câu 1: Tại Sao Tách "Tạo Code" và "Chạy Regression" Thành 2 Giai Đoạn?

💡 Gợi ý để suy nghĩ: - Khi AI "đọc yêu cầu và sinh code" → AI phải "nghĩ" → tốn token (tiền). - Khi "chạy code đã có sẵn" → máy tính đọc file và thực thi → không tốn token. - Vậy nếu bạn phải chạy regression 10 lần/ngày, điều gì xảy ra nếu AI tham gia vào lần chạy nào?

Trả lời của bạn:

[Viết câu trả lời ở đây — 2-3 câu là đủ]

Gợi ý đáp án (mở ra sau khi đã trả lời):

👉 Xem gợi ý đáp án Nếu AI tham gia vào mỗi lần chạy regression: - Mỗi lần chạy = tốn token = tốn tiền - Với 10 lần/ngày × 30 ngày = 300 lần AI phải "nghĩ lại" điều tương tự Bằng cách tách ra: AI chỉ cần tạo code 1 lần (Giai đoạn 2), sau đó code đó có thể chạy đi chạy lại **vô hạn lần miễn phí** (Giai đoạn 4). Đây là tư duy tối ưu chi phí AI rất quan trọng trong thực tế.

Câu 2: Vai Trò QC Manual Thay Đổi Như Thế Nào?

So sánh đầy đủ:

Hoạt động QC truyền thống QC với AI IDE
Viết test case Bằng tay, từng bước Mô tả bằng ngôn ngữ tự nhiên (Prompt)
Chạy test Click thủ công Lệnh Terminal chạy tự động
Báo cáo kết quả Bằng tay, dễ sai sót HTML Report, Video, Screenshot tự động
Khi có lỗi Phán đoán và fix tay Phân tích report → quyết định AI sửa hay báo bug
Kỹ năng chính Chú ý, kiên nhẫn Tư duy, khả năng mô tả rõ ràng, đọc hiểu

Câu hỏi suy nghĩ:

  1. Kỹ năng nào của QC Manual vẫn cần thiết dù có AI hỗ trợ?

[Trả lời ở đây]

  1. Kỹ năng nào bạn cần học thêm để làm việc tốt với AI?

[Trả lời ở đây]


Câu 3: Khi Test Gãy — Bạn Xử Lý Theo Flow Nào?

Nhìn vào flowchart sau và trả lời câu hỏi phía dưới:

Test fail (❌)
Kiểm tra error message + screenshot trong Report
      ├── Selector không tìm thấy element?
      │         → Có thể UI đã thay đổi
      │         → Chạy lại Giai đoạn 2: Nhờ AI sinh code mới
      ├── Logic sai (sai URL, sai dữ liệu test)?
      │         → Test case viết sai
      │         → Sửa Prompt và nhờ AI sinh lại
      └── Element có, logic đúng, nhưng kết quả sai?
                → Đây là bug thật
                → Tạo bug report cho Dev

Câu hỏi:

  1. Làm sao phân biệt "UI thay đổi" và "bug thật"? Mô tả bằng lời của bạn.

[Trả lời ở đây]

  1. Bạn có thêm nhánh xử lý nào vào flowchart trên không?

[Gợi ý: Nghĩ về trường hợp website đang bảo trì, hoặc mạng chậm]

[Trả lời ở đây]


Câu 4 (Bonus): Thiết Kế Lại Một Flow

Hãy tưởng tượng bạn là người thiết kế framework này. Bạn sẽ thêm Giai đoạn 5 vào sau Giai đoạn 4 không? Nếu có, Giai đoạn 5 đó sẽ là gì?

[Viết ý tưởng — không có đáp án đúng sai, đây là câu hỏi tư duy mở]


Kết Quả Mong Đợi Khi Hoàn Thành

  • [ ] Đã trả lời Câu 1 bằng lời của mình (không nhìn đáp án trước)
  • [ ] Đã điền ít nhất 2 ô còn trống trong bảng so sánh Câu 2
  • [ ] Đã trả lời được Câu 3 (phân biệt UI thay đổi vs bug thật)
  • [ ] (Bonus) Đã nghĩ về Câu 4

Thảo Luận Nhóm

Sau khi hoàn thành, trao đổi với đồng nghiệp hoặc mentor:

  • Câu 3 ai có cách phân biệt hay nhất?
  • Câu 4 ai nghĩ ra Giai đoạn 5 thú vị nhất?