2013-08-28 2 views
8

私はBOOST TESTを使用しています。をtest caseから見つける方法があるのだろうかと思います。また、スイート名を見つけるための方法はありテストケース内でBOOST TESTテストスイート名を取得する

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

:私は私がでtest caseの名前を見つけることができることを知っていますか?

マイスイート・ケースの構造は次のとおりです。

suite ---> case 1

______|--> case 2

______|--> case 3

おかげ

答えて

5

unit_testはのIDであるだけでなく、持っているp_namep_parent_idテストスイート。どちらのプロパティもunit_testtest_suiteの共通基底クラスであるtest_unitから継承されています。

は、IDからスイートを取得するには、我々はどのように current_test_case作品を見ることができます。

test_case const& 
current_test_case() 
{ 
    return get<test_case>(s_frk_impl().m_curr_test_case); 
} 

m_curr_test_caseメンバーは、ちょうどp_parent_idように、test_unit_idです。だから、現在のテストケースのテストスイートを取得するには、これを使用することができます:あなたはそこに名前を見つける必要がありますので

framework::get<test_suite>(current_test_case().p_parent_id) 

最後に、test_suiteは、ちょうどunit_testようp_name性質を有しています。

+1

ありがとうございます! '(boost :: unit_test :: frame :: get (prnt_id_t)).p_name'、' prnt_id_t'は 'boost :: unit_test :: framework :: current_test_case ).p_parent_id; ' – hudac

関連する問題