テンプレート関数のテストケースやスタブを作成する

テンプレート関数はデータ型が未定の場合、そのままではテストケースやスタブを作成することはできません。
関数テンプレートが特殊化されていれば、データ型を確定できるためテストケースやスタブを作成することができます。

■特殊化されていないテンプレート関数

もし、テストのために特殊化した実装を使用しても良い場合は、「PARASOFT_CPPTEST」というC++test実行時のみ有効になるパラメーターを使用することで特殊化したテンプレート関数の実装を開発生成物に反映させないようにすることもできます。

■#ifdef PARASOFT_CPPTEST~#endifで、コード中でコールしているデータ型に特殊化したテンプレート関数を実装

なお、テンプレート関数でも以下のケースは制限事項によりスタブ化は不可となります。

  • 関数の引数がデータ型ではなくテンプレート型(テストケースは特殊化することで作成可能)

  • STLメソッド

Copyright © 2022 TechMatrix Corporation. All rights reserved