2009-03-28 41 views

Trả lời

9

VerifyAll và Verify được sử dụng để kiểm tra xem một số phương thức đã được gọi (và có thể xác minh các tham số mà chúng được gọi). Điều này được coi là "thử nghiệm dựa trên tương tác" và được sử dụng khi bạn muốn xác minh rằng hệ thống đang trong giai đoạn thử nghiệm gọi một phương thức trên một trong các phụ thuộc của nó.

Xác nhận thông thường có nghĩa là bạn muốn đảm bảo giá trị trả lại có giá trị chính xác. Các xác nhận được sử dụng cho cái được gọi là "thử nghiệm dựa trên trạng thái", mà chủ yếu là xác minh trạng thái của hệ thống dưới thử nghiệm sau khi nó đã được thực hiện.

verifyall, check out this.

Ngoài ra, phân biệt Mock and Stub.

3

Tôi tin rằng VerifyAll thuộc về kiểu cũ hơn khi sử dụng RhinoMocks, nơi bạn sẽ có một bước ghi và một bước phát lại, sau đó bạn sẽ xác minh tất cả Kỳ vọng. Trong mô hình này, bạn sẽ trong bước ghi lại thiết lập một kỳ vọng (ví dụ, Mong đợi rằng phương thức này sẽ được gọi với các tham số x, y và z, v.v.).

Phiên bản mới hơn của RhinoMocks giới thiệu cú pháp Arrange-Act-Assert (AAA) làm mẫu ưa thích; Sử dụng mẫu này, bạn nên sử dụng Assertions ở cuối phương pháp thử nghiệm của mình. Nó vẫn có thể sử dụng VerifyAllExpectations(), nhưng cá nhân tôi nghĩ rằng nó đọc dễ dàng hơn nếu tất cả các Assertions của bạn xảy ra trong một khối ở phần cuối của thử nghiệm.

Vì vậy, tôi đoán câu trả lời (cho tôi dù sao) là nó là sở thích cá nhân; Xem liên kết ở trên, nơi anh ấy có một vài ví dụ về cùng một bài kiểm tra và chọn một bài kiểm tra phù hợp nhất với bạn.

Các vấn đề liên quan