13

テストする必要があるパーサーがあります。このパーサーには、多数のテスト入力ファイルがあります。パーサーの予想される動作は、パーサーの出力を対応する事前生成済みファイルと比較することによってテストされます。

現在、テストでYAMLファイルを処理して、入力ファイル、予想されるファイル、およびそれらの説明を取得しています(失敗した場合、この説明が出力されます)。

同じ入力でテストする必要があるパーサーのパラメーターもあります。

したがって、テストで次のコードを作成する必要があります。

TEST(General, GeneralTestCase)
{
   test_parameters = yaml_conf.get_parameters("General", "GeneralTestCase");
   g_parser.parse(test_parameters);

   ASSERT_TRUE(g_env.parsed_as_expected()) << g_env.get_description("General", "GeneralTestCase");
}

TEST(Special, SpecialTestCase1)
{
   test_parameters = yaml_conf.get_parameters("Special", "SpecialTestCase1");
   g_parser.parse(test_parameters);

   ASSERT_TRUE(g_env.parsed_as_expected()) << g_env.get_description("Special", "SpecialTestCase1");
}

TEST(Special, SpecialTestCase2)
{
   test_parameters = yaml_conf.get_parameters("Special", "SpecialTestCase2");
   g_parser.parse(test_parameters);

   ASSERT_TRUE(g_env.parsed_as_expected()) << g_env.get_description("Special", "SpecialTestCase2");
}

コードの繰り返しを簡単に確認できます。したがって、これらのテストを自動化する方法があると思います。

前もって感謝します。

4

2 に答える 2