chore: synchronize project dependencies and update vendor directory files
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
# Kế hoạch Triển khai Test Suite Toàn Diện (V3)
|
||||
|
||||
Dựa vào việc phân tích kiến trúc Controller và logic của hệ thống (Frontend và Backend), dưới đây là kế hoạch bổ sung các kịch bản kiểm thử nhằm đạt được độ bao phủ (coverage) cao nhất cho hệ thống quay số.
|
||||
|
||||
## Mục tiêu
|
||||
Đảm bảo mọi API Endpoint, Middleware và các luồng xử lý ngoại lệ (Exception cases) đều được cover. Tránh tình trạng hệ thống văng lỗi 500 khi người dùng gửi request không hợp lệ.
|
||||
|
||||
## Chi tiết các Kịch bản Bổ sung (V3)
|
||||
|
||||
### 1. Frontend Security & APIs (Test Frontend)
|
||||
- **TC_F15: Xác minh Đăng xuất (Logout)**
|
||||
- Đăng nhập thành công, nhấn "Đăng xuất".
|
||||
- Xác nhận session bị xóa và người dùng không thể truy cập lại trang cập nhật thông tin.
|
||||
- **TC_F16: API Security - Gọi trực tiếp `/updateprizeuser`**
|
||||
- Gửi POST request bằng Playwright API context thẳng tới `/updateprizeuser` khi **chưa đăng nhập**.
|
||||
- Kiểm tra xem Server có crash do `Auth::user()` null hay không (dự kiến sẽ trả về lỗi HTTP 500 do code hiện tại không check Auth ở route này, hoặc Laravel tự throw error). Kịch bản này nhằm phát hiện lỗ hổng logic.
|
||||
- **TC_F17: API Check Spined (`/checkspined`)**
|
||||
- Gọi request lấy trạng thái quay của user (đã quay hay chưa).
|
||||
- Test cả khi có Auth và khi không có Auth để đảm bảo nhận được đúng JSON (bắt lỗi "Chưa đăng nhập").
|
||||
|
||||
### 2. Backend Admin Panel (Test Backend)
|
||||
- **TC_B13: Quản lý Người chơi - Thêm mới User**
|
||||
- Đăng nhập Admin -> Mục "Người dùng" -> "Thêm mới".
|
||||
- Điền đầy đủ form tạo User mới (cấp quyền admin_account).
|
||||
- Xác nhận lưu thành công.
|
||||
- **TC_B14: Quản lý Người chơi - Cập nhật User**
|
||||
- Sửa thông tin một User có sẵn (cập nhật trạng thái hoặc reset mật khẩu).
|
||||
- Xác nhận lưu thành công.
|
||||
- **TC_B15: Cấu hình Hệ thống - Đổi Logo/Banner**
|
||||
- Upload file hình ảnh (logo.png) vào cấu hình thay vì chỉ dùng text (như `game_rule`).
|
||||
- Kiểm tra hệ thống chấp nhận file và load preview.
|
||||
- **TC_B16: Chức năng Reset Lượt Quay (Clear Spined)**
|
||||
- Nút "Thao tác" (reset lượt quay) trong danh sách người trúng giải.
|
||||
- Mô phỏng quá trình Admin gọi hàm `update_spined(user_id)` qua AJAX, kiểm tra response `success`.
|
||||
- **TC_B17: Đăng xuất Admin và Quyền (Middleware)**
|
||||
- Nhấn Đăng xuất ở Admin Panel -> Bị đẩy về `wp-admin` (theo code).
|
||||
- Thử dùng tài khoản User bình thường truy cập `/admin/account` -> Xác minh Middleware `UserRole` chặn và đẩy ra ngoài.
|
||||
|
||||
## User Review Required
|
||||
> [!IMPORTANT]
|
||||
> - Ở **TC_F16**, route `/updateprizeuser` hiện tại trong code `IndexController` gọi trực tiếp `Auth::user()->id` mà không có lớp bảo vệ (Middleware) hay `Auth::check()`. Nếu request này được gửi từ khách vãng lai, hệ thống sẽ gặp lỗi **500 Server Error**. Bạn có muốn tôi viết test để mô phỏng lỗi này nhằm ghi nhận bug, hay bạn muốn tôi sửa luôn code Laravel bảo mật route này trước rồi mới test?
|
||||
|
||||
Xin bạn xem qua các kịch bản V3 này và bấm **Proceed** (Phê duyệt) để tôi tiến hành triển khai.
|
||||
Reference in New Issue
Block a user