commit
This commit is contained in:
708
plans/uat-test.md
Normal file
708
plans/uat-test.md
Normal file
@@ -0,0 +1,708 @@
|
||||
# Prompt: Generate User Acceptance Test (UAT) Test Scenarios & Test Cases
|
||||
|
||||
## Objective
|
||||
|
||||
วิเคราะห์ระบบทั้งหมดและสร้างเอกสารสำหรับการทดสอบระบบ (User Acceptance Testing : UAT)
|
||||
|
||||
เอกสารต้องสามารถนำไปใช้ทดสอบจริงโดยผู้ใช้งาน (Business User) ได้ทันที
|
||||
|
||||
ห้ามแก้ไข Source Code
|
||||
|
||||
ห้ามเปลี่ยน Business Logic
|
||||
|
||||
ให้สร้างเฉพาะเอกสารการทดสอบเท่านั้น
|
||||
|
||||
---
|
||||
|
||||
# Background
|
||||
|
||||
ระบบนี้เป็น Training Management System (TMS)
|
||||
|
||||
Architecture ปัจจุบัน
|
||||
|
||||
- Next.js
|
||||
- TypeScript
|
||||
- Prisma
|
||||
- TanStack Query
|
||||
- TanStack Form
|
||||
- shadcn/ui
|
||||
- Permission Template First
|
||||
- Approval Workflow
|
||||
- RBAC
|
||||
- Audit Log
|
||||
|
||||
---
|
||||
|
||||
# Objective
|
||||
|
||||
AI ต้องทำการ
|
||||
|
||||
1. Audit ระบบทั้งหมด
|
||||
2. วิเคราะห์ Feature ทั้งหมด
|
||||
3. วิเคราะห์ Workflow
|
||||
4. วิเคราะห์ Business Flow
|
||||
5. สร้างรายการ Test Scenario
|
||||
6. สร้าง Test Case
|
||||
7. สร้าง UAT Checklist
|
||||
8. สร้าง Expected Result
|
||||
9. สร้าง Test Data Recommendation
|
||||
10. สร้างเอกสารไว้ใน docs/
|
||||
|
||||
---
|
||||
|
||||
# Scope
|
||||
|
||||
ตรวจสอบทุก Feature
|
||||
|
||||
เช่น
|
||||
|
||||
- Authentication
|
||||
- Login
|
||||
- Dashboard
|
||||
- Employee
|
||||
- Training Records
|
||||
- Course Master
|
||||
- Online Lessons
|
||||
- Announcements
|
||||
- Permission Templates
|
||||
- Users
|
||||
- Approval Workflow
|
||||
- Notifications
|
||||
- Reports
|
||||
- Import
|
||||
- Export
|
||||
- Attachments
|
||||
- Audit Logs
|
||||
- Settings
|
||||
|
||||
รวมทั้ง Feature ใหม่ทั้งหมด
|
||||
|
||||
---
|
||||
|
||||
# Phase 1 — System Audit
|
||||
|
||||
ก่อนสร้าง Test Case
|
||||
|
||||
ให้อ่านโครงสร้างระบบทั้งหมด
|
||||
|
||||
วิเคราะห์
|
||||
|
||||
- Feature
|
||||
- Module
|
||||
- Menu
|
||||
- Workflow
|
||||
- CRUD
|
||||
- Permission
|
||||
- Validation
|
||||
- Business Rules
|
||||
|
||||
ห้ามเดา
|
||||
|
||||
อ้างอิงจากโค้ดจริง
|
||||
|
||||
---
|
||||
|
||||
# Phase 2 — Module Identification
|
||||
|
||||
จัดกลุ่ม Module เช่น
|
||||
|
||||
Authentication
|
||||
|
||||
Dashboard
|
||||
|
||||
Training
|
||||
|
||||
Announcement
|
||||
|
||||
Online Lesson
|
||||
|
||||
Users
|
||||
|
||||
Permission Template
|
||||
|
||||
Approval
|
||||
|
||||
Reports
|
||||
|
||||
Settings
|
||||
|
||||
Notification
|
||||
|
||||
Audit
|
||||
|
||||
Import
|
||||
|
||||
Export
|
||||
|
||||
File Upload
|
||||
|
||||
Master Data
|
||||
|
||||
---
|
||||
|
||||
# Phase 3 — Workflow Analysis
|
||||
|
||||
วิเคราะห์ Workflow ของแต่ละ Module
|
||||
|
||||
ตัวอย่าง
|
||||
|
||||
Training Record
|
||||
|
||||
Create
|
||||
|
||||
↓
|
||||
|
||||
Draft
|
||||
|
||||
↓
|
||||
|
||||
Submit
|
||||
|
||||
↓
|
||||
|
||||
Waiting Approval
|
||||
|
||||
↓
|
||||
|
||||
Approve
|
||||
|
||||
↓
|
||||
|
||||
Publish
|
||||
|
||||
↓
|
||||
|
||||
History
|
||||
|
||||
---
|
||||
|
||||
Announcement
|
||||
|
||||
Create
|
||||
|
||||
↓
|
||||
|
||||
Draft
|
||||
|
||||
↓
|
||||
|
||||
Submit
|
||||
|
||||
↓
|
||||
|
||||
Approve
|
||||
|
||||
↓
|
||||
|
||||
Publish
|
||||
|
||||
↓
|
||||
|
||||
Archive
|
||||
|
||||
---
|
||||
|
||||
Online Lesson
|
||||
|
||||
Create
|
||||
|
||||
↓
|
||||
|
||||
Draft
|
||||
|
||||
↓
|
||||
|
||||
Review
|
||||
|
||||
↓
|
||||
|
||||
Approve
|
||||
|
||||
↓
|
||||
|
||||
Publish
|
||||
|
||||
↓
|
||||
|
||||
Expire
|
||||
|
||||
---
|
||||
|
||||
Permission Template
|
||||
|
||||
Create
|
||||
|
||||
↓
|
||||
|
||||
Assign Permission
|
||||
|
||||
↓
|
||||
|
||||
Assign User
|
||||
|
||||
↓
|
||||
|
||||
Edit
|
||||
|
||||
↓
|
||||
|
||||
Clone
|
||||
|
||||
↓
|
||||
|
||||
Disable
|
||||
|
||||
↓
|
||||
|
||||
Delete
|
||||
|
||||
---
|
||||
|
||||
# Phase 4 — Generate Test Scenario
|
||||
|
||||
สำหรับทุก Feature
|
||||
|
||||
สร้าง
|
||||
|
||||
## Test Scenario
|
||||
|
||||
ตัวอย่าง
|
||||
|
||||
Training Record
|
||||
|
||||
TS-001
|
||||
|
||||
Create Training Record
|
||||
|
||||
TS-002
|
||||
|
||||
Edit Draft
|
||||
|
||||
TS-003
|
||||
|
||||
Submit Draft
|
||||
|
||||
TS-004
|
||||
|
||||
Upload Attachment
|
||||
|
||||
TS-005
|
||||
|
||||
Validation
|
||||
|
||||
TS-006
|
||||
|
||||
Permission
|
||||
|
||||
TS-007
|
||||
|
||||
Search
|
||||
|
||||
TS-008
|
||||
|
||||
Filter
|
||||
|
||||
TS-009
|
||||
|
||||
Delete
|
||||
|
||||
TS-010
|
||||
|
||||
History
|
||||
|
||||
---
|
||||
|
||||
# Phase 5 — Generate Detailed Test Cases
|
||||
|
||||
สำหรับทุก Scenario
|
||||
|
||||
สร้าง
|
||||
|
||||
Test ID
|
||||
|
||||
Module
|
||||
|
||||
Feature
|
||||
|
||||
Role
|
||||
|
||||
Pre-condition
|
||||
|
||||
Test Data
|
||||
|
||||
Steps
|
||||
|
||||
Expected Result
|
||||
|
||||
Priority
|
||||
|
||||
Severity
|
||||
|
||||
Status
|
||||
|
||||
Remark
|
||||
|
||||
ตัวอย่าง
|
||||
|
||||
---
|
||||
|
||||
Test ID
|
||||
|
||||
TR-001
|
||||
|
||||
Module
|
||||
|
||||
Training Record
|
||||
|
||||
Role
|
||||
|
||||
Employee
|
||||
|
||||
Scenario
|
||||
|
||||
Create Training Record
|
||||
|
||||
Steps
|
||||
|
||||
1 เปิดเมนู Training Record
|
||||
|
||||
2 กด Create
|
||||
|
||||
3 กรอกข้อมูล
|
||||
|
||||
4 แนบไฟล์
|
||||
|
||||
5 Save Draft
|
||||
|
||||
Expected
|
||||
|
||||
สร้าง Draft สำเร็จ
|
||||
|
||||
---
|
||||
|
||||
# Phase 6 — Permission Testing
|
||||
|
||||
สร้าง Test Case สำหรับทุก Role
|
||||
|
||||
เช่น
|
||||
|
||||
Employee
|
||||
|
||||
Staff
|
||||
|
||||
Manager
|
||||
|
||||
HRD
|
||||
|
||||
HRD Manager
|
||||
|
||||
IT Admin
|
||||
|
||||
Super Admin
|
||||
|
||||
ตรวจสอบ
|
||||
|
||||
View
|
||||
|
||||
Create
|
||||
|
||||
Update
|
||||
|
||||
Delete
|
||||
|
||||
Approve
|
||||
|
||||
Publish
|
||||
|
||||
Export
|
||||
|
||||
Import
|
||||
|
||||
Assign
|
||||
|
||||
Clone
|
||||
|
||||
Manage
|
||||
|
||||
Admin
|
||||
|
||||
---
|
||||
|
||||
# Phase 7 — Validation Testing
|
||||
|
||||
สร้าง Test Case
|
||||
|
||||
เช่น
|
||||
|
||||
Required
|
||||
|
||||
Maximum Length
|
||||
|
||||
Duplicate
|
||||
|
||||
Date Validation
|
||||
|
||||
Upload File
|
||||
|
||||
Invalid Type
|
||||
|
||||
Invalid Permission
|
||||
|
||||
Invalid Workflow
|
||||
|
||||
Business Rule
|
||||
|
||||
---
|
||||
|
||||
# Phase 8 — Negative Testing
|
||||
|
||||
สร้าง Test
|
||||
|
||||
เช่น
|
||||
|
||||
ไม่มี Permission
|
||||
|
||||
ไม่มีข้อมูล
|
||||
|
||||
Upload ไฟล์ผิดประเภท
|
||||
|
||||
ข้อมูลซ้ำ
|
||||
|
||||
Session หมดอายุ
|
||||
|
||||
Permission ไม่ถูกต้อง
|
||||
|
||||
Approval ไม่ครบ
|
||||
|
||||
Publish โดยไม่ได้ Approve
|
||||
|
||||
Delete Published Record
|
||||
|
||||
ฯลฯ
|
||||
|
||||
---
|
||||
|
||||
# Phase 9 — UI / UX Testing
|
||||
|
||||
ตรวจสอบ
|
||||
|
||||
Responsive
|
||||
|
||||
Loading
|
||||
|
||||
Empty State
|
||||
|
||||
Error Message
|
||||
|
||||
Success Message
|
||||
|
||||
Pagination
|
||||
|
||||
Sorting
|
||||
|
||||
Search
|
||||
|
||||
Filter
|
||||
|
||||
Accessibility
|
||||
|
||||
Dark Mode (ถ้ามี)
|
||||
|
||||
---
|
||||
|
||||
# Phase 10 — Regression Testing
|
||||
|
||||
สร้าง Checklist
|
||||
|
||||
หลังแก้ไขระบบ
|
||||
|
||||
สามารถตรวจสอบได้ทันที
|
||||
|
||||
เช่น
|
||||
|
||||
Login
|
||||
|
||||
Dashboard
|
||||
|
||||
Permission
|
||||
|
||||
Approval
|
||||
|
||||
Training
|
||||
|
||||
Announcement
|
||||
|
||||
Online Lesson
|
||||
|
||||
Reports
|
||||
|
||||
Notification
|
||||
|
||||
Export
|
||||
|
||||
Import
|
||||
|
||||
---
|
||||
|
||||
# Phase 11 — Test Data Recommendation
|
||||
|
||||
แนะนำข้อมูลสำหรับทดสอบ
|
||||
|
||||
เช่น
|
||||
|
||||
Employee
|
||||
|
||||
Manager
|
||||
|
||||
HRD
|
||||
|
||||
IT
|
||||
|
||||
Company
|
||||
|
||||
Department
|
||||
|
||||
Course
|
||||
|
||||
Permission Template
|
||||
|
||||
Announcement
|
||||
|
||||
Lesson
|
||||
|
||||
Approval
|
||||
|
||||
Attachment
|
||||
|
||||
---
|
||||
|
||||
# Phase 12 — Deliverables
|
||||
|
||||
สร้างเอกสาร
|
||||
|
||||
```
|
||||
docs/
|
||||
```
|
||||
|
||||
ดังนี้
|
||||
|
||||
```
|
||||
docs/
|
||||
|
||||
uat-test-plan.md
|
||||
|
||||
uat-test-scenarios.md
|
||||
|
||||
uat-test-cases.md
|
||||
|
||||
permission-test-matrix.md
|
||||
|
||||
regression-test-checklist.md
|
||||
|
||||
test-data-guide.md
|
||||
|
||||
uat-generation-report.md
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
# รูปแบบ Test Case
|
||||
|
||||
ใช้ตาราง
|
||||
|
||||
| Test ID | Module | Feature | Role | Priority | Preconditions | Test Steps | Expected Result | Actual Result | Status |
|
||||
|
||||
---
|
||||
|
||||
# Requirement
|
||||
|
||||
Test Case ต้องครอบคลุม
|
||||
|
||||
✅ Happy Path
|
||||
|
||||
✅ Validation
|
||||
|
||||
✅ Permission
|
||||
|
||||
✅ Negative Case
|
||||
|
||||
✅ Edge Case
|
||||
|
||||
✅ Workflow
|
||||
|
||||
✅ Approval
|
||||
|
||||
✅ CRUD
|
||||
|
||||
✅ Search
|
||||
|
||||
✅ Filter
|
||||
|
||||
✅ Export
|
||||
|
||||
✅ Import
|
||||
|
||||
✅ Upload
|
||||
|
||||
✅ Notification
|
||||
|
||||
✅ Audit Log
|
||||
|
||||
---
|
||||
|
||||
# Constraints
|
||||
|
||||
ห้ามแก้ไข Source Code
|
||||
|
||||
ห้ามสร้าง Feature ใหม่
|
||||
|
||||
ห้ามเปลี่ยน Business Logic
|
||||
|
||||
ห้ามเดา Workflow
|
||||
|
||||
อ้างอิงจากโค้ดจริง
|
||||
|
||||
หากพบ Feature ที่ยังไม่สมบูรณ์
|
||||
|
||||
ให้ระบุไว้ในรายงาน
|
||||
|
||||
---
|
||||
|
||||
# Final Report
|
||||
|
||||
สร้างไฟล์
|
||||
|
||||
```
|
||||
docs/uat-generation-report.md
|
||||
```
|
||||
|
||||
ประกอบด้วย
|
||||
|
||||
- Executive Summary
|
||||
- Modules Reviewed
|
||||
- Features Covered
|
||||
- Workflow Summary
|
||||
- จำนวน Test Scenario
|
||||
- จำนวน Test Cases
|
||||
- จำนวน Permission Tests
|
||||
- จำนวน Validation Tests
|
||||
- จำนวน Regression Tests
|
||||
- Missing Features
|
||||
- Risks
|
||||
- Recommendations
|
||||
|
||||
---
|
||||
|
||||
# Final Response
|
||||
|
||||
เมื่อดำเนินการเสร็จ
|
||||
|
||||
สรุปเป็นภาษาไทย
|
||||
|
||||
1. Module ที่ตรวจสอบ
|
||||
2. จำนวน Test Scenario
|
||||
3. จำนวน Test Case
|
||||
4. จำนวน Permission Test
|
||||
5. จำนวน Regression Test
|
||||
6. รายชื่อเอกสารที่สร้าง
|
||||
7. ข้อเสนอแนะเพิ่มเติม
|
||||
Reference in New Issue
Block a user