Giả sử tôi có một lớp học Order
, có thể ở ba trạng thái khác nhau: CheckedState
, PaidState
và OrderedState
.Làm thế nào để đơn vị kiểm tra một máy nhà nước?
Máy trạng thái sẽ được triển khai bằng Mẫu thiết kế trạng thái chuẩn (Gof).
Bạn thường kiểm tra đơn vị này như thế nào? Bạn có sử dụng vật cố định cho mỗi loại trạng thái (CheckStateFixture
, PaidFixture
, ...) và một loại khác (OrderFixture
) cho lớp ngữ cảnh không? Hay bạn chỉ sử dụng một vật cố định cho lớp ngữ cảnh (Order
), trong đó bạn sẽ đặt tất cả các bài kiểm tra đơn vị?
Cám ơn câu trả lời của bạn! Mặc dù tôi muốn làm rõ, bạn có thể đưa các bài kiểm tra chuyển tiếp đó vào OrderFixture hoặc trong OrderStateFixture không? –
Nó phụ thuộc vào người chịu trách nhiệm thực hiện chuyển tiếp, nếu Lệnh tự chuyển đổi - đây sẽ là OrderFixture hoặc OrderStateFixture – sll
Điều đó nghe hay, cảm ơn! –