2010-11-11 7 views
5

Tôi sử dụng boost::test để chạy kiểm tra tích hợp trên lớp tạo thư mục và tệp. Tôi muốn những tệp này được đặt tên là trường hợp thử nghiệm cụ thể vì vậy nếu tôi gặp sự cố, tôi có thể dễ dàng tìm thấy trường hợp kiểm tra nào để lại các thư mục/tệp của nó xung quanh.sử dụng tên testcase trong tên tệp đầu ra

Vì vậy, tôi muốn sử dụng tên trường hợp thử nghiệm trong hàm tạo của vật cố mà tôi đang sử dụng, như minh họa dưới đây. Điều này có thể ở tất cả, và làm thế nào? Tôi đã tìm kiếm hướng dẫn tăng cường :: test nhưng không thể tìm thấy thông tin này.

ví dụ:

struct foo_fixture 
{ 
    foo_fixture() 
    { 
     std::string case_dependent_name(BOOST_TEST_CASE_NAME); 
     create_directory(case_dependent_name); 
    } 
}; 

BOOST_FIXTURE_TEST_CASE (foo_case_one, foo_fixture) 
{ 
    ... 
} 
BOOST_FIXTURE_TEST_CASE (foo_case_two, foo_fixture) 
{ 
    ... 
} 

Trả lời

7

Tôi thấy điều này, và nó hoạt động:

boost user group discussion

Về cơ bản, bạn sử dụng biến thành viên chuỗi tìm thấy trên dụ test_unit:

boost::unit_test::framework::current_test_case().p_name 
+0

Bạn đang anh hùng của tôi. –