#unit-testing #visual-c #visual-studio-2013 #itk
#модульное тестирование #visual-c #visual-studio-2013 #itk
Вопрос:
Я пытаюсь настроить «Собственный модульный тестовый проект» (Visual C ), который тестирует DLL-проект, основанный на платформе ITK. Я, вероятно, захочу издеваться над реализациями ITK, но для начала я просто хочу вызвать функцию, которая зависит от фактической библиотеки. Все работает на x64, только я, похоже, не могу создать проект модульного тестирования на x64, диспетчер конфигурации допускает только win32. Я установил тест> настройки тестирования> архитектура процессора по умолчанию> x64, но это, похоже, не помогает. При компиляции я получаю:
...itk-4.8.1x64debugincludeitk-4.8itkmathdetail.h(286): error C3861: '_mm_cvtsd_si64': identifier not found
Когда я смотрю на проект> свойства> свойства конфигурации> Каталоги VC , повсюду написано «… x86», в то время как в проекте, который я пытаюсь протестировать, написано «…. x64».
Как я могу заставить это работать, пожалуйста? Или я на невыполнимой миссии???
Обновить:
Теперь мне удалось запустить проект с настройками x64. В этом случае у меня проблема в том, что unittest framework работает только на win32, следовательно:
error C1083: Cannot open include file: 'CppUnitTest.h': No such file or directory
Итак … во время компиляции я могу выбрать, не компилируется ли моя библиотека (режим win32) или платформа модульного тестирования не компилируется (режим x64). Напоминание: компиляция в режиме win32 и установка для test значения «архитектура процессора по умолчанию = x64» также не помогает, все еще возникают ошибки компиляции, описанные ранее. На этом фронте я попытался использовать файл runsettings, который не имел никакого значения.
Ответ №1:
ОК. Я узнал, где что-то пошло не так. во-первых, все должно быть скомпилировано в x64, а также проект модульного тестирования. И если вы убедитесь, что выполнили следующие действия по настройке проекта x64
https://msdn.microsoft.com/en-us/library/9yb4317s.aspx
тогда у вас в конечном итоге не будет проблем. Однако вам нужно убедиться, что вы скопировали настройки win32 и НЕ поставили галочку «Создать новые платформы решений».