ホーム > ユーザーサポート > FAQ カバレッジマスターwinAMS
【質問】
ダミー関数を用いたテストを行っています。しかし、テスト対象の関数がstatic関数である場合、別ファイルにあるダミー関数からテスト対象のstatic関数を呼び出すことができません。どのようにすればテスト可能でしょうか?
【回答】
static宣言された関数は、ダミー関数から直接呼び出すことはできませんので、この場合は関数ポインタを使用して、検証対象となる static 関数を間接的に呼び出してテストを行います。
(テスト対象関数の例)
static int test_func(int a)
{
if (a < 0) {
return -1;
}
return a;
}
(ダミー関数の例)
int (*DBG_test_func)(int);void dummy_for_test_func(void)
{
dbg_out = (*DBG_test_func)(dbg_in);
}
CSV には、関数ポインタ変数(DBG_test_func)をInput変数へ登録してください。この関数ポインタ変数のデータとして検証対象関数を設定すれば、static 関数をダミー関数から呼び出すことができます。