私は CppUnitTest フレームワークを学び始めたばかりで、最も奇妙な問題を抱えています。コードを実行しているとき (以下を参照) は永遠に動かなくなりましたが、ブレークポイントを追加して「ステップバイステップ」で実行すると、テストは正常に終了します (ただし、DLL は解放されません)。テスト)
namespace CalibrationUnitTest
{
static SCreateDirectoriesParams* createDirectoriesParams;
TEST_CLASS(CreateDirectoryTest)
{
public:
TEST_CLASS_INITIALIZE(ClassInitialize)
{
createDirectoriesParams = new SCreateDirectoriesParams;
}
TEST_METHOD(CreateDirectoriesRegressionTest)
{
strcpy_s(createDirectoriesParams->rootPath, MAX_PATH_SIZE, "c:\\tmp");
Assert::AreEqual(CreateDirectories(*createDirectoriesParams), SUCCESS);
}
TEST_CLASS_CLEANUP(ClassCleanUp)
{
delete(createDirectoriesParams);
}
};
}
過去 2 日間、この問題を検索しようとしましたが、うまくいきませんでした。
編集: API関数を呼び出そうとするとテストが動かなくなったようで、コメントに入れると通常の実行でもテストに合格します。