2009-07-22 31 views
6

Tôi chưa bao giờ viết/chạy một bài kiểm tra đơn vị. Tôi là một lập trình viên tương đối trẻ, nhưng tôi làm rất nhiều đọc. Tôi đã tìm kiếm thông tin về thử nghiệm đơn vị vì tôi thấy rất nhiều, nhưng tôi chưa từng thấy bất cứ điều gì đã thực sự đánh vần cho tôi từ bước 1.Có chi tiết "cách" trên Bài kiểm tra Đơn vị cho Visual Studio 2005

Tôi có Visual Studio 2005 Professional. Tôi sẽ bắt đầu một dự án cửa sổ mới trong vài ngày tới và tôi muốn cắt răng thử nghiệm đơn vị của mình với dự án này, nhưng tôi thậm chí không biết bắt đầu từ đâu. Tôi đã nhìn thấy các trang web nói rằng VS2005 có thử nghiệm đơn vị được xây dựng trong, nhưng khi làm theo các ví dụ tôi thấy tôi không có nội dung menu ngữ cảnh tương tự. Tôi có nên tạo một dự án hay lớp học riêng biệt không? Và công việc kinh doanh này là gì? Các bài kiểm tra sẽ chạy mỗi khi tôi xây dựng?

SO có rất nhiều nội dung tuyệt vời về lý do tại sao sử dụng thử nghiệm đơn vị vì vậy tôi hy vọng một số thành viên có thể cung cấp hoặc chỉ cho tôi một kết quả cài đặt thực thi rất đơn giản.

+0

Tôi không nhớ nhìn thấy kiểm tra đơn vị trong Visual Studio 2005. Trình đơn kiểm tra không xuất hiện cho đến Visual Studio 2008. –

+1

Nó đã được thử nghiệm và phiên bản Arch tôi nghĩ. Không có trong Pro cho đến năm 2008 –

Trả lời

6

Để kiểm tra đơn vị trong Visual Studio 2005, bạn sẽ cần Hệ thống nhóm hoặc khung kiểm tra đơn vị của bên thứ ba như nUnit.

Có trang bắt đầu nhanh cho nUnit có thể giúp bạn quyết định xem nUnit có phù hợp với bạn hay không. nUnit cũng tương tự như được xây dựng trong thử nghiệm của Visual Studio 2008.

http://www.nunit.org/index.php?p=quickStart&r=2.5

Bạn cũng sẽ nhận được TestDriven.net. TestDriven.net là một Visual Studio add-in sẽ tích hợp nUnit với Visual Studio.

Nghệ thuật kiểm tra đơn vị của Roy Osherove là một cuốn sách hay về thử nghiệm đơn vị. Roy Osherove được phỏng vấn trong một podcast Scott Hanselman here. Podcast là một giới thiệu tuyệt vời để một số nguyên tắc và thông lệ kiểm tra đơn vị:.

http://www.hanselminutes.com/default.aspx?showID=187

+0

+1 cho cuốn sách của Roy, phải đọc! –

+0

Bạn không cần hệ thống Team cho các thử nghiệm đơn vị kiểu NUnit cơ bản trong MSTest. Trong VS 2008 Pro xây dựng của nó trong một tác phẩm - nhưng như trong câu trả lời của tôi không làm điều đó. –

0

Visual Studio 2005 Professional không đã kiểm tra đơn vị xây dựng trong tôi đề nghị bạn tải về phiên bản mới nhất của NUnit. Bạn nên tạo các thử nghiệm của mình trong một dự án riêng biệt cho mã của bạn. Các thử nghiệm sẽ không chạy như một phần của bản dựng của bạn, nhưng bạn có thể tạo một kịch bản lệnh xây dựng để biên dịch mã của bạn và chạy thử nghiệm, sử dụng MSBuild hoặc NAnt.

Để bắt đầu, hãy tìm các bài viết về kiểm tra đơn vị với NUnit. Bạn sẽ tìm thấy chúng dễ dàng hơn để tìm hơn so với những người trên thử nghiệm đơn vị với Visual Studio.

0

Một cách khác để học MSTest là lấy một trong các phiên bản dùng thử của VS 2008 từ here. Tôi nghĩ rằng thời gian dùng thử là 90 ngày rất nhiều thời gian để chơi xung quanh với nó. Khi bạn đã cài đặt - chúng tôi đã tìm thấy blog sau đây posting và tài liệu tham khảo document nó rất hữu ích để bắt đầu với TDD VS 2008 \ MSTest.

3

Cũng giống như tôi ngưỡng mộ bạn vì muốn học - tôi có thể kính trọng thúc giục bạn tránh xa điều đó không. Nhiều như nó có vẻ dễ dàng lúc bắt đầu, mstest không phải là một khuôn khổ thử nghiệm tốt. Nó làm những điều đơn giản dễ dàng và có thể điều này sẽ bao gồm các trường hợp học tập nhưng kịch bản phức tạp hơn không phải lúc nào cũng làm việc tốt với triết lý kiểm tra MS. Tôi thực sự khuyên bạn nên bắt đầu với một khung đơn giản hơn như xunit, nunit, cùng với những người nhại như nmock và moq.

Không chỉ các khung này đơn giản dễ hiểu hơn - chúng còn có các cộng đồng lớn phía sau chúng và nhận trợ giúp sẽ dễ dàng hơn khi mới bắt đầu.

Tôi đồng ý với câu trả lời của Robert Harvey về Thử nghiệm nghệ thuật đơn vị của Roy Osherove.

+0

Thật không may nếu bạn muốn chạy bất kỳ thử nghiệm bằng cách sử dụng khung COmpact trong khu vực nhúng sau đó MSTest có vẻ là sự lựa chọn duy nhất: ( –

0

Nếu cần một số trợ giúp và giải thích bằng hình ảnh, hãy xem dimecasts.net. Họ có rất nhiều video và chúng khá ngắn.

tôi sử dụng các công cụ sau đây để kiểm tra đơn vị (chỉ trong trường hợp bạn không có quyền truy cập vào Team System):

NUnit
RhinoMocks
NCoverage
R # - không miễn phí nhưng một công cụ tuyệt vời tất cả xung quanh

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