You are on page 1of 4

Giỏ hàng trên một trang mua bán trực tuyến được bắt đầu với trạng thái

là rỗng
(không có món hàng nào). Khi bạn chọn một sản phẩm thì nó sẽ được đưa vào
giỏ hàng. Bạn cũng có thể bỏ chọn các món hàng trong giỏ hàng. Khi bạn quyết
định mua hàng, thì sẽ xuất hiện màn hình tổng hợp các món hàng đang có trong
giỏ cùng với thông tin về giá tiền, số lượng và tổng tiền của giỏ hàng, để cho
bạn xác nhận xem đúng hay chưa. Nếu bạn thấy số lượng hàng và giá tiền đúng
thì bạn sẽ được chuyển sang trang thanh toán. Ngược lại bạn sẽ quay lại trang
mua hàng (lúc này bạn có thể bỏ chọn các món hàng bạn muốn bỏ bớt).
Yêu cầu :
Đưa ra sơ đồ trạng thái (state diagram) cho thấy các trạng thái và sự chuyển tiếp.
Xác định ca kiểm thử– một loạt các trạng thái – bao phủ toàn bộ các chuyển
tiếp.Đưa ra một bảng trạng thái. Cho một ví dụ kiểm thử trường hợp chuyển tiếp
không hợp lệ .
Hình bên dưới là sơ đồ trạng thái của giỏ hàng. Trạng thái (state) khởi tạo là S1
khi giỏ hàng chưa có hàng (empty - đang rỗng). Khi thêm một món hàng vào
giỏ (add item) thì sẽ chuyển sang (transition) trạng thái có hàng S2. Khi thêm
một món hàng khác nữa vào giỏ thì không làm thay đổi trạng thái này (lúc này
chỉ làm thay đổi số lượng hàng trong giỏ). Các món hàng trong giỏ có thể bỏ bớt
(remove item), khi bỏ bớt 1 món hàng, mà trong giỏ còn hàng thì nó không làm
thay đổi trạng thái, nhưng khi bỏ mớt món cuối cùng (remove last item) thì sẽ bị
chuyển sang trạng thái S1, vì lúc này giỏ rỗng. Khi khách hàng muốn tính tiền
(Check out) thì chuyển sang trạng thái S3 tổng kết và tính giá tiền (summary &
cost) để mua. Nếu danh sách hàng này hợp lệ (số hàng và tổng số tiền mình thấy
được ), thì chuyển sang trạng thái S4 là thanh toán; Nếu kiểm tra thấy không
phù hợp (vì không đủ tiền để mua chẳng hạn,…) thì phải quay lại trạng thái S3,
khách hàng có thể lấy bớt hàng ra rồi quay lại trạng thái S4.
Tổng cộng chúng ta có 4 trạng thái (nốt hình tròn) và 7 sự kiện (các đường
mũi tên).S1 là trạng thái bắt đầu và S4 là trạng thái kết thúc
Ta có sơ đồ trạng thái giỏ hàng như sau :
Hình : Sơ đồ trạng thái của giỏ hàng
Từ sơ đồ ta có bảng chuyển đổi trạng thái tương ứng như sau:

Trạng thái Thêm sản Xóa sản Xóa Sản Thanh Không Chấp
phẩm phẩm phẩm toán chấp nhận
cuối nhận thanh
cùng thanh toán
trong toán
giỏ
S1-Rỗng S2 - - - - -

S2- Mua hàng S2 S2 S1 S3 - -

S3-Tổng kết và - - - - S2 S4
tính tiền

S4-Thanh toán - - - - - -
Trong bảng trên tất cả các ô chứa dấu – là trạng thái không hợp lệ (invalid transition).
Từ bảng trên chúng ta sẽ viết được các ca kiểm thử sau :

Số thứ Mục tiêu kiểm Điều kiện Điều kiện Kết quả mong Ghi chú
tự tra tiên quyết đợi
1 Kiểm tra thêm Giỏ hàng Nháy chọn Giỏ hàng chứa S1=>S2
món vào giỏ đang rỗng nút Thêm món hàng đã
thành công để thêm chọn
một món
hàng
2 Kiểm tra thêm Giỏ hàng Nhấp chọn Giỏ hàng có S2=>S2
giỏ hàng đang có ít nút Thêm thêm món
thành công nhất 1 để thêm hàng vừa chọn
món hàng một món
hàng
3 Kiểm tra xóa Giỏ hàng Nhấp chọn Giỏ hàng bớt S2=>S1
món hàng đang có ít nút Xóa để đi một món
thành công nhất 2 bớt đi một vừa chọn
món hàng món hàng
4 Kiểm tra Giỏ hàng Nhấp chọn Hiển thị danh S2=>S3
thành toán đang có ít nút Thanh sách món hàng
thành công nhất 1 toán để tính đã được thêm
món hàng tiền trong giỏ và
tổng số tiền
phải trả
5 Kiểm tra quay Đang ở Nhấp chọn Quay về màn S3=>S2
lại màn hình màn hình nút Quay lại hình mua hàng
mua hàng kiểm tra để quay lại
thành công hàng và màn hình
tiền mua hàng
6 Kiểm tra Đang ở Nhấp chọn Hiển thị màn S3=>S4
thanh toán màng hình nút Thanh hình thanh
thành công kiểm tra toán (chấp toán
hàng và nhận thanh
tiền toán) để
mua hàng.
7 Kiểm tra Giỏ hàng Nhấp chọn Hiển thị thông S1=>S2
thanh toán khi đang rỗng nút xóa báo lỗi hoặc
nút Xóa bị
không hoạt
động

8 Gio hàng Nhấp nút Hiển thị thông


đang rỗng xóa báo lỗi hoặc
nút xóa không
hiển thị hoặc
nút xóa bị vô
hiệu
10 Đang ở
màn hình
kiểm tra
và tiền
11 Đang ở
màn hình
kiểm tra
hàng và
tiền
12 Đang ở
màn hình
thanh toán
12 Đang ở
màn hình
thanh toán

You might also like