よくある質問(FAQ)

アセンブリ言語で記述された関数のスタブ関数を生成することはできますか?

スタブ関数について

質問

C言語から呼ばれているグローバル関数として、アセンブリ言語で記述された関数があります。カバレッジマスターのスタブ関数生成機能を用い、このアセンブリ言語で記述された関数のスタブ関数を生成してテストに使用することはできますか?

回答

カバレッジマスターのスタブ作成機能でスタブ関数を作成するためには、元の関数がC言語の関数である必要があります。アセンブラの関数の場合は、デバッグ情報の関数シンボルがC言語関数とは異なるため、これを元にスタブを作成することはできません。

回避方法としましては、アセンブル関数はリンクを行わず、その代わりにC言語関数としてのAPIを持つダミー関数を作成しコンパイル&リンクしてください。

これにより、スタブ関数作成画面にサブ関数のシンボル名称が表示されますので、これを元にスタブ関数を作成可能です。