Dưới đây là kinh nghiệm của tôi với MS thử nghiệm
- Chúng tôi đang chạy thử nghiệm MS với khoảng 3800 thử nghiệm.
- Sẽ mất rất nhiều thời gian cho các bài kiểm tra chỉ để bắt đầu thực hiện, điều đó rất đau khi chạy các bài kiểm tra đơn lẻ.
- Mất khoảng 1 GB bộ nhớ để thực hiện các thử nghiệm. Không, nó không phải do rò rỉ bộ nhớ trong các thử nghiệm của chúng tôi. Thường xuyên chúng tôi chạy vào OutOfMemoryExceptions.
- Bởi vì nó sử dụng nhiều tài nguyên, chúng tôi đang bắt đầu thực hiện các bài kiểm tra từ các tập tin theo lô. Vì vậy, toàn bộ tích hợp tốt cho là gì?
- Đó là lỗi và không ổn định:
- Ví dụ, nếu bạn loại bỏ [Bỏ qua] Thuộc tính từ một thử nghiệm, nó không nhận ra nó, bởi vì nó lưu trữ thông tin về các xét nghiệm ở đâu đó. Bạn cần làm mới danh sách kiểm tra, đôi khi giải quyết vấn đề hoặc khởi động lại VS.
- Nó ngẫu nhiên không sao chép hội đồng tham chiếu vào thư mục theout.
- Các mục triển khai (các tệp bổ sung sẽ được sử dụng) không hoạt động đúng cách. Chúng được bỏ qua ngẫu nhiên.
- Có thông tin ẩn (không hiển thị trong mã thử nghiệm) trong tệp vsmdi và testrunconfig. Nếu bạn không quan tâm về nó, nó có thể không hoạt động.
- Chức năng nó có thể được so sánh với NUnit, nhưng nó rất tốn kém nếu bạn xem xét sử dụng phiên bản thử nghiệm VS.
Addition: Chúng tôi có một số xét nghiệm hơn bây giờ, có thể thậm chí không biết có bao nhiêu. Không thể chạy tất cả chúng nữa từ Visual Studio, vì OutOfMemoryExceptions và các vấn đề không ổn định khác. Chúng tôi chạy thử nghiệm từ tập lệnh. Nó sẽ được dễ dàng để xem kết quả kiểm tra trong Visual Studio, nhưng khi giải pháp được mở, VS tai nạn (mỗi lần). Vì vậy, chúng ta cần phải tìm kiếm các bài kiểm tra thất bại bằng cách sử dụng tìm kiếm văn bản. Không có lợi thế của một công cụ tích hợp nữa.
Cập nhật khác: Hiện tại chúng tôi đang sử dụng VS 2013. Rất nhiều thứ đã thay đổi. Họ viết lại thử nghiệm thử nghiệm MS lần thứ ba kể từ khi chúng tôi bắt đầu.Điều này gây ra rất nhiều thay đổi đột phá, nhưng không phải phiên bản mới nào cũng làm tốt hơn. Chúng tôi rất vui vì chúng tôi đã không sử dụng các tính năng ưa thích của MS Test, bởi vì tất cả chúng đều không được hỗ trợ nữa. Nó thực sự là một sự xấu hổ. Chúng tôi vẫn đang sử dụng các kịch bản để xây dựng và chạy tất cả các bài kiểm tra đơn vị, bởi vì nó là thủ công. Visual Studio yêu cầu một vài phút để bắt đầu chạy thử nghiệm (các biện pháp thời gian sau khi biên dịch cho đến khi thử nghiệm đầu tiên bắt đầu). Họ có thể sửa chữa nó với một bản cập nhật và điều này có thể là một vấn đề cụ thể của dự án của chúng tôi. Tuy nhiên, Resharper là nhanh hơn nhiều khi chạy các bài kiểm tra tương tự.
Kết luận: Ít nhất là kết hợp với Resharper, MS Test rất hữu ích. Và tôi hy vọng rằng cuối cùng họ đã tìm ra cách mà người chạy thử nghiệm sẽ được viết và sẽ không thực hiện loại thay đổi đột phá này khi chúng tôi cập nhật Visual Studio lần sau.
Nguồn
2009-10-12 12:25:07
cũng xem xét xUnit, tuy nhiên bất cứ điều gì bạn có một cái nhìn một TestDriven.net –
@Ian 1 cho TDD. – magnus
Xem thêm http://stackoverflow.com/questions/707444/nunit-vs-team-system-unit-test –