Appearance
Skill / /znf:qa
/znf:qa scenario ZEN-<n> | journey ZEN-<n> | bind ZEN-<n>
Run QA viết kịch bản nghiệm thu đóng băng trước khi có code dev, viết journey phải đỏ trên code gốc, rồi gắn journey vào code đã xong mà không sửa kết quả mong đợi.
Cách gọi
text
/znf:qa scenario ZEN-<n> | journey ZEN-<n> | bind ZEN-<n>Khi nào dùng
Khi zenie chạy worker QA cho một item. Skill có ba chế độ: scenario viết kịch bản nghiệm thu, journey viết journey cho bug hoặc tweak trước khi có bản sửa, bind gắn journey của feature vào code dev vừa viết xong. Bạn không gọi tay skill này khi làm việc thường ngày; với journey tự viết trong /znf:cook, dùng /znf:e2e.
Cách hoạt động
- Run QA không đọc nhánh, plan, diff hay commit của run dev. Nó chỉ đọc code gốc và app đang chạy trong sandbox, nên test không bị nắn theo code.
- Chế độ
scenarioviết.znf/e2e/scenarios/ZEN-<n>.md: mỗi dòng nghiệm thu là một@ac, câu chép nguyên văn, các bước và điều nhìn thấy dùng đúng chữ trên màn hình. Dòng cần hỏi người đặt item đi quazenify await needs-human, tối đa 2 vòng; quá 2 vòng thì dòng đó chuyển sangngoài-e2ekèm lý do. - Chế độ
journey(bug, tweak chỉ có một run QA) viết kịch bản trước, rồi viết.znf/e2e/zen-<n>.spec.tstheo/znf:e2e, chạyzenify e2e lintrồizenify e2e run --local --role <role>trên code gốc, với<role>là role broker ứng vớiVai:của kịch bản. Journey phải đỏ ở đúngexpectcủa một@ac. Thử 2 lần không đạt thì xóa journey, chỉ commit kịch bản. - Chế độ
bindviết journey nếu feature chưa có (mỗi@acloạie2emột test, chuỗi trongexpectchép nguyên văn từ dòngThấy), sau đó chỉ được thêm locator, điều hướng và dữ liệu seed. Không sửa file kịch bản (zenie so với commit của runqa), không đổi chuỗi trongexpect. Đỏ ở locator, điều hướng hay seed thì run QA tự sửa journey; đỏ ởexpectcủa một@acthì vẫn commit journey, ghifailurescho từng@acvà báo cho run dev, không sửaexpect. - Kịch bản và journey nằm ở
.znf/e2e/của repo chính: repo nơi thấy lỗi khi tái hiện (bug), hoặc repo có màn được đổi (tweak, feature; màn web thì làcontact-center-web). Repo chưa có.znf/e2e/e2e.config.jsonthì run QA tạo luôn trong cùng commit. - Run QA không
git push, chỉ commit quaapi-commit.mjscủa sandbox, và luôn ghi kết quả vào/out/qa-result.json.
Ví dụ
text
/znf:qa scenario ZEN-123
/znf:qa journey ZEN-123
/znf:qa bind ZEN-123Lưu ý
Kịch bản dùng từ khóa tiếng Việt cố định (Vai:, Bước:, Thấy:, Dữ liệu sau:, ## Câu hỏi mở) vì zenify e2e lint đọc đúng các chữ này. Câu hỏi gửi người đặt item viết bằng lời thường, không chứa @ac, locator, đường dẫn API hay tên field.