2010-07-05 31 views
8

Tôi có một dự án gồm 50+ .H/.CPP tệp/lớp học. Tôi muốn kiểm tra tất cả các lớp với trường hợp kiểm tra riêng của mình, bao gồm các phương pháp để kiểm tra các khía cạnh khác nhau của mỗi lớp. Các lớp học của tôi nằm trong các thư mục khác nhau, như sau:làm thế nào để tổ chức các trường hợp thử nghiệm với boost :: test library?

/project 
    /include 
    /SuperModule 
     Foo.h 
     Foo.cpp 
     .. 
    Alpha.h 
    Alpha.cpp 
    .. 
    /test   // I assume that my tests shall be here 
    main.cpp 
    Makefile 

Tôi muốn sử dụng boost::test làm khung kiểm tra đơn vị. Làm thế nào tôi nên tổ chức các tập tin của tôi, làm thế nào tôi tên họ, vv Một số gợi ý hoặc một liên kết hoặc một đề nghị sẽ được đánh giá cao. Cảm ơn.

Trả lời

2

Chúng tôi đang sử dụng boost :: test trong một bố cục tương tự. bố trí của chúng tôi là -

/project 
    /include 
    /SuperModule 
     /Foo 
     foo.c 
     foo.h 
     /foo_unittest 
      foo_unittest.c // note - no separate header file is required 
          // for boost::test unit test.exe program. 

cơ bản quy tắc bố trí là đặt các thử nghiệm đơn vị cho một lớp trong một thư mục con có tên là "foo_unittest" sau khi lớp trong cùng thư mục với mã nguồn. Lợi thế của việc đặt tên này là

  1. Mã nguồn và thư mục được lưu trữ cạnh nhau. Vì vậy, bằng cách kiểm tra đơn giản, bạn có thể xem nếu bạn đã viết các bài kiểm tra đơn vị hay không.
  2. Ngoài ra, khi bạn sao chép mã nguồn, cũng dễ dàng sao chép kiểm tra đơn vị tại cùng một lúc.

Vì dự án của chúng tôi không quá phức tạp (30-50 lớp chính), hệ thống này hoạt động cho chúng tôi. Nếu bạn đang chạy các dự án lớn hơn, tôi không nghĩ rằng đây sẽ là một giải pháp tối ưu.

+0

Điều này sẽ cung cấp cho bạn ý tưởng hay về cách sắp xếp tệp trên các bộ thử nghiệm http://stackoverflow.com/questions/9302777/how-to-achieve-organisation-of-test-suites-and-cases-with-boost –

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