Microsoft Visual Studioのコードカバレッジ機能を使うため、
単体テストを作成しています。
あるプロジェクトに対し、テストプロジェクトを作成し、
単体テストの記述を追記した後、ビルドを実行したところ以下のエラーが出力されました。
=======
2>LINK : warning LNK4098: defaultlib 'MSVCRT' は他のライブラリの使用と競合しています。/NODEFAULTLIB:library を使用してください。
2>UnitTest1.obj : error LNK2028: 未解決のトークン (0A00000D) "*** が関数 "*** で参照されました。
2>UnitTest1.obj : error LNK2028: 未解決のトークン (0A00000E) "*** が関数 "*** で参照されました。
2>UnitTest1.obj : error LNK2028: 未解決のトークン (0A00000F) "*** が関数 "*** で参照されました。
2>UnitTest1.obj : error LNK2019: 未解決の外部シンボル "*** が関数 "*** で参照されました。
2>UnitTest1.obj : error LNK2019: 未解決の外部シンボル "*** が関数 "*** で参照されました。
2>UnitTest1.obj : error LNK2019: 未解決の外部シンボル "*** が関数 "*** で参照されました。
=======
今回作成したテストプロジェクトがテスト対象のプロジェクトのobjファイルををうまく読み込めていないように見え、
解決するためにはテストプロジェクトのリンカーがobjファイルを参照できるよう設定を変更する必要があると考えています。
そこで質問なのですが、
Q1.テストプロジェクトとテスト対象のプロジェクト間でobjファイルが参照できない原因は何が考えられますでしょうか。
Q2.リンカーが参照するobjファイルを直接指定する方法はありますでしょうか。
Q3.そもそも本環境では単体テストを作成し、コードカバレッジを実施することは可能なのでしょうか。
<環境>
OSバージョン:Windows 7 Professional
ソフトバージョン:Microsoft Visual Studio 2010 ultimate
使用言語:Visual C++
※環境はマネージ型・アンマネージ型の混合のため「共通言語ランタイム サポート (/clr)」を設定しております。
参考URL:http://msdn.microsoft.com/ja-jp/library/ms243171.aspx
お手数ですが、分かる方ご回答をいただけないでしょうか。