Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Archi0
28 / 14 / 4
Регистрация: 18.07.2013
Сообщений: 167
#1

Раздельный native unit test для проекта скомпилированного как Debug и как Release - C++

04.05.2014, 14:02. Просмотров 297. Ответов 1
Метки нет (Все метки)

Используя условную компиляцию версия Debug и Release может существенно различаться. Не все ситуации можно смоделировать для теста и могут пригодиться какие-то дополнительные функции в классе, которые будут генерировать исключение там где оно могло возникнуть и не нужные в Release с целью проверить, а действительно ли ты был готов к подобной ситуации. Отсюда и вопрос как в модульном тесте часть тестов запускать для Release часть для Debug
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.05.2014, 14:02     Раздельный native unit test для проекта скомпилированного как Debug и как Release
Посмотрите здесь:

Как получить состояние (release/debug) проекта? - C++
Возможно ли получить состояние (release/debug) проекта препроцессором?

Как установить режим проекта Release? - C++
Устанавливаю Release , пишет что 'Release\имя.pch': No such file or directory Где именно нужно устанавливать этот режим?

Debug и Release разница? - C++
объяснить пожалуйста разница между Debug И Release? и почему после компиляции Debug->Dll fail 460kb а Release->17кб.

difference between debug and release MVS2010 - C++
Ума не приложу в какую сторону копать:read: Следующий фрагмент кода, в Дебаге работает совершенно верно, а в Релизе какие то ошибки ...

Неопределенное поведение в Debug и Release - C++
Писал программу для сложения больших чисел (в файле содержатся числа с количеством цифр от 1 до 30). При запуске через компилятор всё...

Release работает, Debug - ошибка - C++
Подскажите, товарищи. Есть код (взял с форума) : #include <iostream> #include <fstream> #include <string> #include <conio.h> ...

Debug и Release сборки в Visual Studio - C++
Я начал писать проект на c++ с использованием sfml. При сборке тестовой программы в версс debug потребление памяти составляет примерно 22...

В чем разница между Debug and Release? - C++
Какие действия выполняет debug в Visual studio и какие Release, в чем разница? Никогда не задавался этим фундаментальным вопросом, что...

Разный результат работы функции в release и debug - C++
Такая проблема. Есть программа, в которой объявляется переменная типа std::string. Ниже вызывается функция, реализованная в dll,...

C++ Visual Studio 2017 режим Debug и Release - C++
C++ Visual Studio 2017 проблемы с режимом Debug и Release Почему в режиме дебага все нормальное, а в режиме релиза не хочет считать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Убежденный
Системный программист
Эксперт С++
15246 / 6878 / 1092
Регистрация: 02.05.2013
Сообщений: 11,254
Завершенные тесты: 1
04.05.2014, 14:10     Раздельный native unit test для проекта скомпилированного как Debug и как Release #2
1) Очевидно, различий между Debug и Release на уровне исходного кода
должно быть минимум. Как и между конфигурациями Win32 и x64, например.
Иначе мы вместо одной тестовой комбинации получаем две, четыре и т.п.
С не очень хорошими последствиями (в перспективе, когда кода станет
много и тестироваться он будет долго и сложно).

2) Для Debug-конфигурации запускать Debug-тесты, для Release-конфигурации
запускать Release-тесты. Кодовая база одна, конфигураций может быть много.

3)
Цитата Сообщение от Archi0 Посмотреть сообщение
Не все ситуации можно смоделировать для теста и могут пригодиться какие-то дополнительные функции в классе, которые будут генерировать исключение там где оно могло возникнуть и не нужные в Release с целью проверить, а действительно ли ты был готов к подобной ситуации.
Дополнительные функции в классе, существующие только для test case - зло.
Даже если они отключаются дефайнами в релизной сборке.

Если речь идет о модульном тестировании, все должно решаться внешними
по отношению к классу средствами. Понятно, что возможны исключения, но
на то они и исключения.
Yandex
Объявления
04.05.2014, 14:10     Раздельный native unit test для проекта скомпилированного как Debug и как Release
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru