1
実行可能ファイルのクラスに対してユニットテストを行いたいが、target_link_libraries(target library)
を使ってlibを追加できるlibにそれらをリファクタリングしたくないとしますcmakeで。exeプロジェクトを別のexeプロジェクトのクラスにリンクする方法
どのようにテストクラスに他のクラスへのアクセス権を与えますか?
1)他のプロジェクトのソースファイルでテストプロジェクトをビルドしますか? 他のプロジェクトからのOBJファイルと別の事
include_directories(${otherExeProjectDir})
set(SOURCE_FILES
main.cpp
tests.h
tests.cpp
${otherExeProjectDir}/otherclass1.h
${otherExeProjectDir}/otherclass2.h
)
2)リンクテストプロジェクト? 何らかの種類add_library(otherclass.obj)
狂気?
3)
私はあなたの質問を理解していません。プロジェクトにクラスがあり、このクラスの単体テストを行いたいと言っています。あなたがする必要があるのは、そのクラスのヘッドファイルを組み込み、ユニットテストとユニットテストの主な機能を記述することです。 – Yves
2つのプロジェクト:他のプロジェクトとテストプロジェクト。他のプロジェクトにはテストプロジェクトのようにメインがあります。テストプロジェクトでは、ヘッダーを含めるだけでヘッダーを探す場所がわかりません。 – codeMetis
私は分かりません。なぜあなたはそれを含めることができないのですか?それがどこにあるのか分かりませんか? – Yves