ホーム > ユーザーサポート > FAQ カバレッジマスターwinAMS

FAQ / カバレッジマスターwinAMS

テストデータ設定に関する問題

014_02 : ダミー関数からstatic関数を呼び出してテストを行うには、どのようにすれば良いですか?

【質問】
ダミー関数を用いたテストを行っています。しかし、テスト対象の関数がstatic関数である場合、別ファイルにあるダミー関数からテスト対象のstatic関数を呼び出すことができません。どのようにすればテスト可能でしょうか?

【回答】
static宣言された関数は、ダミー関数から直接呼び出すことはできませんので、この場合は関数ポインタを使用して、検証対象となる static 関数を間接的に呼び出してテストを行います。

(テスト対象関数の例)

static int test_func(int a)
{
  if (a < 0) {
    return -1;
  }
  
  return a;
}

(ダミー関数の例)

int (*DBG_test_func)(int);
int dbg_in, dbg_out;

void dummy_for_test_func(void)
{
  dbg_out = (*DBG_test_func)(dbg_in);
}

CSV には、関数ポインタ変数(DBG_test_func)をInput変数へ登録してください。この関数ポインタ変数のデータとして検証対象関数を設定すれば、static 関数をダミー関数から呼び出すことができます。


関連サポート情報検索

【サポート情報サイト内Google検索】

検索キーワード: ダミー関数 | static関数

他のキーワード検索

 


参考情報・リンク