Module 11: Dự Án Cuối Khóa — Build Flow Hoàn Chỉnh A-Z¶
🎯 Mục Tiêu Module¶
- Áp dụng tất cả kiến thức đã học
- Xây dựng test suite hoàn chỉnh
- Thực hành full flow: Prompt → IDE → Review → Regression
- Demo và đánh giá
11.1. Yêu Cầu Dự Án¶
Mục tiêu¶
Xây dựng test suite hoàn chỉnh cho Practice Website:
- URL: https://practice.automationtesting.in/
- Bao gồm: Login, Shop, Cart, Checkout
- Sử dụng: Antigravity IDE + Playwright + POM
Scope¶
┌─────────────────────────────────────────────────────┐
│ │
│ Test Suite bao gồm: │
│ │
│ 1. Login Test (2-3 test case) │
│ - Đăng nhập thành công │
│ - Đăng nhập thất bại │
│ - Đăng ký tài khoản │
│ │
│ 2. Shop Test (2-3 test case) │
│ - Tìm kiếm sản phẩm │
│ - Xem chi tiết sản phẩm │
│ - Lọc sản phẩm │
│ │
│ 3. Cart Test (2-3 test case) │
│ - Thêm sản phẩm vào giỏ │
│ - Xóa sản phẩm khỏi giỏ │
│ - Cập nhật số lượng │
│ │
│ 4. Checkout Test (1-2 test case) │
│ - Thanh toán thành công │
│ - Kiểm tra đơn hàng │
│ │
│ Tổng: 8-12 test case │
│ │
└─────────────────────────────────────────────────────┘
11.2. Quy Trình Thực Hiện¶
Bước 1: Viết Prompt Template¶
Bước 2: Dùng Antigravity IDE¶
Bước 3: Code Review¶
Bước 4: Tạo Page Object¶
Bước 5: Chạy Test¶
Bước 6: Regression¶
11.3. Cấu Trúc Dự Án¶
practice-automation-tests/
├── pages/
│ ├── LoginPage.ts
│ ├── ShopPage.ts
│ ├── CartPage.ts
│ └── CheckoutPage.ts
├── tests/
│ ├── login.spec.ts
│ ├── shop.spec.ts
│ ├── cart.spec.ts
│ └── checkout.spec.ts
├── test-data/
│ └── users.json
├── playwright.config.ts
├── package.json
└── README.md
11.4. Demo Template¶
README.md cho dự án¶
# Practice Automation Tests
## Tổng quan
Test suite cho website https://practice.automationtesting.in/
## Cấu trúc
- `pages/` — Page Object Model
- `tests/` — Test cases
- `test-data/` — Test data
## Cách chạy
```bash
# Chạy tất cả test
npx playwright test
# Chạy 1 file
npx playwright test tests/login.spec.ts
# Xem report
npx playwright show-report
Test Cases¶
- Login: 3 test cases
- Shop: 3 test cases
- Cart: 3 test cases
- Checkout: 2 test cases
Kết quả¶
- Total: 11 test cases
- Passed: ?
- Failed: ?
□ Prompt Template rõ ràng □ Code không dùng waitForTimeout □ Code không dùng locator index □ Có assertion đầy đủ □ Sử dụng POM □ Test data tách riêng □ Có README □ Có comment □ Test chạy được □ Report đẹp □ Chọn flow cần test □ Viết Prompt Template □ Review Prompt □ Dùng Antigravity IDE □ Yêu cầu AI sinh code bằng Prompt □ Xem code sinh ra □ Code review □ Tạo Page Object □ Tối ưu code □ Chạy test trên local □ Fix test fail □ Xem report □ Demo dự án □ Đánh giá □ Feedback ```
--- ## 11.5. Đánh Giá Dự Án ### Tiêu chí đánh giá | Tiêu chí | Điểm | Mô tả | |----------|------|-------| | Prompt Template | /10 | Rõ ràng, đầy đủ | | Code Quality | /10 | Không anti-pattern, clean code | | Locator Strategy | /10 | Ưu tiên locator ổn định | | POM Usage | /10 | Sử dụng POM đúng cách | | Assertion | /10 | Assertion đầy đủ | | Test Coverage | /10 | Đủ flow chính | | Documentation | /10 | README, comment rõ ràng | | **Tổng** | **/70** | | ### Checklist đánh giá
📝 Bài Tập¶
Dự Án Cuối Khóa¶
- Chọn 3-4 flow chính trên Practice Website
- Viết Prompt Template cho mỗi flow
- Dùng Prompt trong Antigravity IDE để AI tự sinh code Playwright
- Review code AI sinh ra
- Tạo Page Object
- Viết test case
- Chạy test
- Tạo report
- Demo dự án
✅ Checklist Hoàn Thành Module¶
- [ ] Chọn flow cần test
- [ ] Viết Prompt Template
- [ ] Dùng Antigravity IDE
- [ ] Code review
- [ ] Tạo Page Object
- [ ] Viết test case
- [ ] Chạy test
- [ ] Tạo report
- [ ] Demo dự án