2009-08-24 38 views
8

Tôi thường xuyên viết nhiều thử nghiệm để kiểm tra các thuật toán, thư viện hoặc phần cứng khác nhau. Tất cả mã, phụ thuộc và đầu ra của các thử nghiệm này cần phải được chú thích và lưu, để tôi có thể quay lại chúng sau này. Có cách tiếp cận phổ biến tốt cho vấn đề này? Bạn làm gì với thử nghiệm của mình sau khi chạy thử?Thử nghiệm lập trình

+7

lưu trữ chúng trong hệ thống kiểm soát phiên bản? –

+1

Tôi thích git cho loại công cụ này. Tất cả lịch sử với bạn mọi lúc, dễ sao lưu. –

+0

Tôi đã sử dụng Subversion trước (trong một trong các bài viết dưới đây) tuy nhiên nếu bạn có thể thử và sử dụng GIT tốt hơn nhiều. (Tôi chưa sử dụng nó, nhưng muốn sớm) – Audioillity

Trả lời

5

Tại một công việc trước đây, chúng tôi đã có một dự án trong SVN được gọi là Area51 nơi mọi người sẽ viết mã kiểm tra. Các quy tắc đã

  1. tạo ra một không gian tên gói
  2. bắt đầu qua một public static void main
  3. thêm ý kiến ​​qua javadocs
  4. rời khỏi dự án trong tình trạng compilable
  5. dự án không bao giờ có thể là một dependancy của các mã khác

Trên một nhóm ba người, điều này đã hoạt động tốt. Chúng tôi có thể đặt mã "what if" ở đó để chia sẻ và thật dễ dàng để chạy nó qua ide hoặc dòng lệnh

2

Tôi chỉ có một thư mục mà tôi gọi OneOffCode

Đây là một thư mục chỉ mã tôi đã viết một trong hai học một công nghệ mới cố gắng để chứng minh một khái niệm vv. . Đây không phải là mã sản xuất.

Tôi thường quay lại ổ đĩa nhảy và di chuyển nó từ tôi từ Công việc sang công việc hoặc máy tính đến máy tính.

+1

Kinda wordy. Tôi chỉ gọi tôi là "Test". –

+0

Tôi gọi thử nghiệm của mình là "thử nghiệm" - thí nghiệm và thử nghiệm không giống nhau. –

5

Khi tôi làm như vậy, chúng thường là dự án cụ thể, vì vậy chúng sẽ nằm trong thư mục con của dự án (thường được đặt tên là "Điều tra" trong trường hợp của tôi). Điều này được kiểm tra vào hệ thống kiểm soát phiên bản với mọi thứ khác.

Kết quả (nếu thích hợp) đi vào cùng một thư mục con của "Điều tra" làm mã được sử dụng để tạo kết quả.

+1

+1: Chúng tôi gọi chúng là "Spikes". –

+0

@ S.Lott: "Spikes": Tôi thích nó! – DrAl

+0

Đây cũng là những gì tôi làm. Ngoại trừ chi nhánh thí nghiệm và sao lưu nhiều hơn mã sản xuất, điều này có xu hướng dẫn đến sự lộn xộn trong hệ thống kiểm soát phiên bản. Tìm kiếm và kiểm tra các phiên bản trước đó từ SVN khá bất tiện. –

2

Tôi thường chuyển đổi giữa C# và C++. Vì vậy, tôi có một ứng dụng bảng điều khiển thử nghiệm cho C# và C++ trong một vị trí "Sandbox", dưới sự kiểm soát nguồn. Các ứng dụng giao diện điều khiển đều được thiết lập giống như cách có một Main gọi các thử nghiệm mà tôi đang thử tại thời điểm đó. Khi tôi hoàn thành, tôi giữ các phương pháp và bình luận cũ và chỉ cần xóa phần chính khi thử nghiệm tiếp theo xuất hiện.

Tôi không biết nếu nó là tốt nhất, nhưng sau khi nó được thiết lập sau đó nó là khá nhanh chóng để có được trong, có được câu trả lời, nhận ra và có nó tất cả được lưu trong thời gian tới.

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