Hồi trước mình làm ở một công ty ví điện tử màu hồng ở Việt Nam. Ở đó anh leader giới thiệu cho mình một tool viết automation test khá hay tên là Maestro. Ảnh chỉ mình cách xài, và đó là lần đầu mình biết code automation test cho mobile app, rồi test e2e trông như thế nào. Phải nói là Maestro làm quá tốt. Cài đặt dễ, inspect element dễ, viết flow cũng đơn giản hơn hẳn mấy công cụ team QC đang dùng lúc đó. Mình thật sự ấn tượng.
Nhưng môi trường product thì việc ai nấy làm. Mình gần như không có cơ hội đụng tới phần test, chủ yếu làm feature xong là đưa thẳng cho QC, vì việc cũng nhiều. Thêm nữa là giờ có Claude, có agent các thứ, việc sếp giao xuống tăng gấp 3, thế là ôi dồi, cứ AI mà phang tứ tung. Thời đầu AI code chưa tốt như bây giờ, code sinh ra rất nhiều, tới một lúc mình còn không biết nó đã viết gì trong source của mình nữa. Thôi thì code xong chạy được là quăng QC test, có bug thì fix.
Sang outsource, vibe code toàn tập
Sau khoảng một năm AI bùng nổ, mình chuyển sang một công ty outsource, và ôi quao. Ở đây đúng là một kỷ nguyên vibe code mới. Quy trình nào cũng dùng AI, từ lên requirement, break task, lên schedule cho tới implement, tất cả đều vibe. Mình cũng không thoát khỏi cuộc đua đó. Mình bắt đầu sự nghiệp với React Native, giờ nhảy sang một dự án Flutter, mà ngôn ngữ cũng chẳng còn quan trọng. Thứ mình cần biết là prompt sao cho đúng, cho tốt để xong task.
Có điều vẫn còn một khâu trong quy trình không theo kịp tốc độ vibe code: test đống hỗn độn mà team vừa vibe ra. Gánh nặng dồn hết lên team QC. Mỗi lần vibe xong một tính năng hay một phase mới chuẩn bị release là boom, QC phải regression lại toàn bộ để chắc đống vibe code đó không làm vỡ app.
Ý tưởng: vibe luôn cả automation test
Thấy QC cực quá, mình nhen nhóm ý định dựng một bộ automation test (cũng vibe luôn) để chạy regression thay QC. Vậy là QC chỉ cần test đúng mấy tính năng mới thêm vào.
Mình đã làm gì? Đơn giản vẫn là vibe :v. Tìm hiểu thêm thì mình biết Maestro có sẵn MCP và CLI cho agent dùng, quá tiện. Với một câu prompt, mình ra lệnh cho mấy thằng đệ miệt mài loop qua đống test case QC đã viết. Với từng case, tụi nó đi explore code trong app rồi setup flow Maestro cho đúng case đó, chỗ nào thiếu testID thì tự gắn vào cho đủ flow. Goal đặt ra là chạy hết toàn bộ test case trong file thì mới dừng.
Nói thật là nó không nhanh như mình kỳ vọng. Mình mất nguyên một tháng, tận dụng hết token dư vào cuối tuần để cho mấy con agent explore và test, dựng một bộ UI_MAP cho từng tính năng. Cuối cùng cũng xong. Giờ anh em trong team vibe code xong thì quăng vào bộ skill để chạy lại regression, sai đâu fix đó. Không cần quan tâm chất lượng code nữa, miễn đúng tính năng và performance ổn là được. À, trong lúc chạy test mình cũng kêu agent đo performance qua log và monitor luôn. Code ra sao kệ nó, chạy ổn là được.
Lời kết
Ý tưởng này không mới, chắc cũng có người làm rồi. Mình chỉ muốn chia sẻ để anh em làm app, làm web thử trải nghiệm, để khỏi phải ngồi review đống vibe code của mình nữa. Dĩ nhiên phần security, env các thứ thì vẫn phải review, cái đó thì khó mà để máy đảm bảo được.
Top comments (0)