Skip to content

Test Cases: Quản lý Người dùng

ModuleCORE-01URDUser Management URD

1. Tóm tắt Độ phủ

VùngURD reqsTest caseĐã phủ
Xác thực (AUTH)1413⚠️
Tài khoản Người dùng (USR)1112
Vai trò & Phân phạm vi (ROLE)88
Quản lý Nhân viên (EMP)88
Quản lý Khách hàng (CUS)66
Cấu hình Người dùng (CFG)33

Mức ưu tiên = P1 (nghiêm trọng) / P2 (lớn) / P3 (nhỏ). Các bước dùng Cho / Khi / Thì.

2. Test Cases

2.1 Xác thực

TC IDURD refTình huốngCác bướcKỳ vọngP
TC-AUTH-001URD-AUTH-001Đăng ký với username + mật khẩu hợp lệCho một người dùng mới; Khi họ đăng kýTài khoản được tạo; vai trò Owner được gánP1
TC-AUTH-002URD-AUTH-001Đăng ký với username đã dùngCho một username đã đăng ký; Khi người dùng mới đăng ký với nóBị từ chối; định danh đã được sử dụngP1
TC-AUTH-003URD-AUTH-002, URD-CFG-001Đăng ký tạo mọi thứ cùng lúcCho một đăng ký hợp lệ; Khi nó hoàn tấtTài khoản, hồ sơ, định danh và cài đặt mặc định đều tồn tạiP1
TC-AUTH-004URD-AUTH-003Roll back đăng ký nguyên tửCho một đăng ký mà một bước thất bại; Khi transaction chạyKhông có gì được tạo — roll back toàn bộP1
TC-AUTH-005URD-AUTH-004Đăng nhập với thông tin hợp lệCho một người dùng đã xác minh; Khi họ đăng nhập với định danh + mật khẩuXác thực thành côngP1
TC-AUTH-006URD-AUTH-004Đăng nhập với mật khẩu saiCho một người dùng đã đăng ký; Khi họ đăng nhập với mật khẩu saiBị từ chối; lỗi không tiết lộ tài khoản có tồn tại hay khôngP1
TC-AUTH-007URD-AUTH-005Token mang phạm viCho một đăng nhập thành công; Khi token được kiểm traToken chứa user ID, vai trò, ID tổ chức, ID merchantP1
TC-AUTH-008URD-AUTH-006Mật khẩu được bămCho một tài khoản đã tạo; Khi lưu trữ credential được kiểm traMật khẩu được lưu băm, không bao giờ dạng văn bản thuầnP1
TC-AUTH-009URD-AUTH-007Đổi mật khẩu — hiện tại đúngCho một người dùng đã xác thực; Khi họ đổi mật khẩu với mật khẩu hiện tại đúngĐược cập nhật; người dùng đăng nhập với mật khẩu mớiP1
TC-AUTH-010URD-AUTH-007Đổi mật khẩu — hiện tại saiCho một người dùng đã xác thực; Khi họ cung cấp mật khẩu hiện tại saiBị từ chối; mật khẩu hiện tại không đúngP1
TC-AUTH-011URD-AUTH-008, URD-USR-005Xác minh email qua OTPCho một email chưa xác minh; Khi người dùng yêu cầu và gửi OTP đúngĐịnh danh email được đánh dấu đã xác minhP1
TC-AUTH-012URD-AUTH-010Đặt lại mật khẩu đã quênCho một người dùng quên mật khẩu; Khi họ yêu cầu, xác minh mã và đặt mật khẩu mớiMật khẩu được đặt lại; người dùng đăng nhập với mật khẩu mớiP1
TC-AUTH-013URD-AUTH-012Ghi lại đăng nhập gần nhấtCho một đăng nhập thành công; Khi xem chi tiết người dùngDấu thời gian đăng nhập gần nhất được cập nhật và hiển thịP2

Khoảng trống đã biết — xác minh email khi đăng ký

Xác minh email hiện đang bị tắt khi đăng ký trong mã, trong khi đăng nhập yêu cầu một định danh đã xác minh. Một người dùng đăng ký rồi cố đăng nhập bằng email có thể bị chặn cho đến khi email được xác minh qua một luồng riêng. TC-AUTH-011 phủ luồng xác minh; đường đăng-ký→đăng-nhập-bằng-email là một lỗi đã biết, không phải case đạt. Xem tài liệu developer.

2.2 Tài khoản Người dùng

TC IDURD refTình huốngCác bướcKỳ vọngP
TC-USR-001URD-USR-001ID hệ thống duy nhấtCho một tài khoản được tạo; Khi nó được kiểm traMột ID duy nhất, bất biến, không bao giờ tái dùng được gánP1
TC-USR-002URD-USR-002Nhiều định danhCho một người dùng có email; Khi thêm một điện thoạiCả hai định danh được lưu; người dùng tra cứu được bằng một trong haiP1
TC-USR-003URD-USR-003Tính duy nhất emailCho người dùng A sở hữu một email; Khi người dùng B đăng ký với email đóBị từ chối; email đã được sử dụngP1
TC-USR-004URD-USR-003Tính duy nhất điện thoạiCho người dùng A sở hữu một điện thoại; Khi người dùng B thêm điện thoại đóBị từ chối; định danh duy nhất theo loạiP2
TC-USR-005URD-USR-004Username tự xác minhCho một tài khoản mới; Khi định danh username được kiểm traUsername được xác minh ngay lập tứcP1
TC-USR-006URD-USR-005Email bắt đầu chưa xác minhCho một email mới thêm; Khi kiểm tra trước khi xác minhTrạng thái là chưa xác minh cho tới khi OTP hoàn tấtP1
TC-USR-007URD-USR-006Xem / cập nhật hồ sơCho một người dùng đã xác thực; Khi họ cập nhật tên và localeHồ sơ được cập nhật; thay đổi phản ánh ở lần đọc kế tiếpP1
TC-USR-008URD-USR-007Vô hiệu hóa rồi kích hoạt lạiCho một tài khoản ACTIVATED; Khi admin vô hiệu hóa rồi kích hoạt lạiTrạng thái chuyển ACTIVATED → DEACTIVATED → ACTIVATED; khôi phục đăng nhậpP1
TC-USR-009URD-USR-007Chặn vì bảo mậtCho một tài khoản ACTIVATED; Khi admin chặn nóTrạng thái thành BLOCKED; người dùng không thể đăng nhậpP1
TC-USR-010URD-USR-008Đã vô hiệu hóa không đăng nhập đượcCho một tài khoản DEACTIVATED; Khi người dùng đăng nhậpBị từ chối; tài khoản đã vô hiệu hóaP1
TC-USR-011URD-USR-009Soft-delete bảo toàn dữ liệuCho một người dùng có dữ liệu bị gỡ; Khi kiểm tra bản ghiDữ liệu được bảo toàn; không xóa vật lýP1
TC-USR-012URD-USR-011Archived là cuốiCho một tài khoản ARCHIVED; Khi admin cố kích hoạt lạiBị từ chối; ARCHIVED không thể kích hoạt lạiP2

Phát hiện QE — tính duy nhất định danh khi cập nhật

Kiểm tra tính duy nhất định danh khi cập nhật có logic bị đảo — nó có thể cho phép một email / điện thoại trùng giữa các người dùng trong khi cập nhật. TC-USR-003 / TC-USR-004 phủ đường tạo; đường cập nhật là một lỗi đã biết.

2.3 Vai trò & Phân phạm vi

TC IDURD refTình huốngCác bướcKỳ vọngP
TC-ROLE-001URD-ROLE-001Tám vai trò cố định tồn tạiCho một hệ thống đã khởi tạo; Khi liệt kê vai tròSuper Admin, Admin, Operator, Owner, Cashier, Employee, Customer, Guest tồn tạiP1
TC-ROLE-002URD-ROLE-002Tạo tài khoản nội bộ tôn trọng phân cấpCho một Admin; Khi họ tạo một OperatorOperator được tạo; một Operator không thể tạo Operator khácP1
TC-ROLE-003URD-ROLE-003Người dùng nội bộ bỏ qua bộ lọcCho một Super Admin; Khi họ truy vấn dữ liệuTrả mọi dữ liệu toàn hệ thống; không áp dụng lọc phạm viP1
TC-ROLE-004URD-ROLE-004Owner giới hạn theo org của mìnhCho Owner của Org X; Khi họ truy vấn dữ liệu Org YTừ chối truy cập; Owner giới hạn theo org của mình và merchant của nóP1
TC-ROLE-005URD-ROLE-005Employee giới hạn theo merchantCho một nhân viên được gán Merchant A; Khi họ liệt kê đơn hàng trên A và BChỉ trả đơn hàng Merchant AP1
TC-ROLE-006URD-ROLE-006Count được lọc theo phạm viCho một nhân viên chỉ trên Merchant A; Khi họ yêu cầu count sản phẩmCount chỉ gồm sản phẩm Merchant AP1
TC-ROLE-007URD-ROLE-007Không tự nâng quyềnCho một Employee; Khi họ cố tự cấp OwnerBị từ chối; không thể quản lý vai trò ở mức hoặc cao hơn ưu tiên của mìnhP1
TC-ROLE-008URD-ROLE-008Owner tự gán khi đăng kýCho một đăng ký hoàn tất; Khi vai trò người dùng được kiểm traVai trò Owner được gán tự độngP1

2.4 Quản lý Nhân viên

TC IDURD refTình huốngCác bướcKỳ vọngP
TC-EMP-001URD-EMP-001Owner tạo nhân viênCho một Owner; Khi họ tạo một nhân viênTài khoản được tạo với vai trò Employee, liên kết tới tổ chứcP1
TC-EMP-002URD-EMP-002Nhân viên liên kết với merchantCho một nhân viên được gán A và B; Khi ánh xạ được kiểm traNhân viên ánh xạ tới org và tới Merchant A và BP1
TC-EMP-003URD-EMP-003Truy cập liên-merchant bị từ chốiCho một nhân viên chỉ trên Merchant A; Khi họ truy cập dữ liệu Merchant BTừ chối truy cậpP1
TC-EMP-004URD-EMP-004Đăng nhập nhân viênCho một nhân viên với thông tin xác thực hợp lệ; Khi họ đăng nhậpĐược xác thực với truy cập giới hạn theo merchant được gánP1
TC-EMP-005URD-EMP-005Truy vấn lọc theo gánCho một nhân viên trên Merchant A; Khi họ truy vấn đơn hàngChỉ trả đơn hàng Merchant A; B không hiển thịP1
TC-EMP-006URD-EMP-006Gán lại merchantCho một nhân viên trên Merchant A; Khi Owner cập nhật thành A + BGán trước được thay; nhân viên giờ thấy A và B; không có tài khoản mớiP2
TC-EMP-007URD-EMP-007Vô hiệu hóa / gỡ nhân viênCho một nhân viên đang hoạt động; Khi Owner vô hiệu hóa rồi gỡ họNhân viên không thể đăng nhập nữa; bản ghi soft-deleted; dữ liệu được bảo toànP1
TC-EMP-008URD-EMP-008Xác thực quyền sở hữuCho một Owner; Khi họ tạo nhân viên cho một merchant họ không sở hữuBị từ chối; quyền sở hữu org / merchant được xác thựcP1

2.5 Quản lý Khách hàng

TC IDURD refTình huốngCác bướcKỳ vọngP
TC-CUS-001URD-CUS-001Owner tạo khách hàngCho một Owner; Khi họ tạo một khách hàngTài khoản khách hàng được tạo và liên kết tới tổ chứcP1
TC-CUS-002URD-CUS-002Vai trò Customer tự gánCho một khách hàng đã tạo; Khi tài khoản được kiểm traVai trò Customer được gán; liên kết tới tổ chứcP1
TC-CUS-003URD-CUS-003Hồ sơ khách hàngCho một khách hàng; Khi hồ sơ được kiểm traHồ sơ gồm tên và thông tin liên hệP2
TC-CUS-004URD-CUS-004Cập nhật / soft-delete khách hàngCho một khách hàng; Khi Owner cập nhật thông tin liên hệ rồi gỡ họThay đổi được lưu; khách hàng soft-deleted, dữ liệu được bảo toànP1
TC-CUS-005URD-CUS-005Nâng cấp khách hàng bán hàngCho một khách hàng cấp bán hàng; Khi kích hoạt nâng cấpNgười dùng đầy đủ được tạo với vai trò CustomerP2
TC-CUS-006URD-CUS-006Kiểm tra xung đột khi nâng cấpCho một khách hàng bán hàng có email đã bị chiếm; Khi nâng cấp chạyBị chặn với lỗi xung độtP2

Khoảng trống đã biết — khách hàng không đăng nhập được

Tài khoản khách hàng được tạo không có thông tin xác thực hoặc định danh đăng nhập, nên hiện chưa thể xác thực. TC-CUS-001..004 xác minh việc quản lý bản ghi khách hàng bởi Owner; tự phục vụ đăng nhập cho khách hàng chưa được hỗ trợ. Xem tài liệu developer.

2.6 Cấu hình Người dùng

TC IDURD refTình huốngCác bướcKỳ vọngP
TC-CFG-001URD-CFG-001Mặc định tạo khi đăng kýCho một đăng ký mới; Khi tài khoản được tạoMột bộ cấu hình người dùng mặc định tồn tạiP1
TC-CFG-002URD-CFG-002Tính duy nhất config theo người dùngCho một người dùng có config; Khi thêm một code trùngBị từ chối; code duy nhất theo người dùngP2
TC-CFG-003URD-CFG-003Xem / cập nhật configCho một người dùng đã xác thực; Khi họ đọc và cập nhật một cài đặtCài đặt được trả về và cập nhật được lưuP2

3. Truy vết

Mọi yêu cầu Must phải ánh xạ tới ≥1 test case. Khoảng trống được nêu rõ.

Yêu cầu URDTest caseTrạng thái
URD-AUTH-001TC-AUTH-001, TC-AUTH-002✅ Đã phủ
URD-AUTH-002TC-AUTH-003✅ Đã phủ
URD-AUTH-003TC-AUTH-004✅ Đã phủ
URD-AUTH-004TC-AUTH-005, TC-AUTH-006✅ Đã phủ
URD-AUTH-005TC-AUTH-007✅ Đã phủ
URD-AUTH-006TC-AUTH-008✅ Đã phủ
URD-AUTH-007TC-AUTH-009, TC-AUTH-010✅ Đã phủ
URD-AUTH-008TC-AUTH-011✅ Đã phủ
URD-AUTH-009⚠️ Chưa phủ — xác minh OTP điện thoại (bản sao của TC-AUTH-011)
URD-AUTH-010TC-AUTH-012✅ Đã phủ
URD-AUTH-011⚠️ Chưa phủ (Should) — liên kết tài khoản
URD-AUTH-012TC-AUTH-013✅ Đã phủ
URD-AUTH-013⚠️ Planned — chưa xây bắt buộc 2FA
URD-AUTH-014⚠️ Planned — chưa xây đăng nhập OAuth
URD-USR-001TC-USR-001✅ Đã phủ
URD-USR-002TC-USR-002✅ Đã phủ
URD-USR-003TC-USR-003, TC-USR-004✅ Đã phủ
URD-USR-004TC-USR-005✅ Đã phủ
URD-USR-005TC-USR-006, TC-AUTH-011✅ Đã phủ
URD-USR-006TC-USR-007✅ Đã phủ
URD-USR-007TC-USR-008, TC-USR-009, TC-USR-012✅ Đã phủ
URD-USR-008TC-USR-010✅ Đã phủ
URD-USR-009TC-USR-011✅ Đã phủ
URD-USR-010TC-USR-007✅ Đã phủ
URD-USR-011TC-USR-012✅ Đã phủ
URD-ROLE-001TC-ROLE-001✅ Đã phủ
URD-ROLE-002TC-ROLE-002✅ Đã phủ
URD-ROLE-003TC-ROLE-003✅ Đã phủ
URD-ROLE-004TC-ROLE-004✅ Đã phủ
URD-ROLE-005TC-ROLE-005✅ Đã phủ
URD-ROLE-006TC-ROLE-006✅ Đã phủ
URD-ROLE-007TC-ROLE-007✅ Đã phủ
URD-ROLE-008TC-ROLE-008✅ Đã phủ
URD-EMP-001TC-EMP-001✅ Đã phủ
URD-EMP-002TC-EMP-002✅ Đã phủ
URD-EMP-003TC-EMP-003✅ Đã phủ
URD-EMP-004TC-EMP-004✅ Đã phủ
URD-EMP-005TC-EMP-005✅ Đã phủ
URD-EMP-006TC-EMP-006✅ Đã phủ
URD-EMP-007TC-EMP-007✅ Đã phủ
URD-EMP-008TC-EMP-008✅ Đã phủ
URD-CUS-001TC-CUS-001✅ Đã phủ
URD-CUS-002TC-CUS-002✅ Đã phủ
URD-CUS-003TC-CUS-003✅ Đã phủ
URD-CUS-004TC-CUS-004✅ Đã phủ
URD-CUS-005TC-CUS-005✅ Đã phủ
URD-CUS-006TC-CUS-006✅ Đã phủ
URD-CFG-001TC-CFG-001✅ Đã phủ
URD-CFG-002TC-CFG-002✅ Đã phủ
URD-CFG-003TC-CFG-003✅ Đã phủ

Khoảng trống mở: một yêu cầu Must (URD-AUTH-009, OTP điện thoại) thiếu test case riêng — hãy thêm một TC theo mẫu TC-AUTH-011. URD-AUTH-011 (liên kết tài khoản, Should) cũng chưa phủ. URD-AUTH-013/014 là Planned và cố ý không kiểm thử.

Proprietary and Confidential. Unauthorized copying, distribution, or use of this software is strictly prohibited.