|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
26.05.2016, 12:13 | #11 | |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,695
|
Все не надо. Надо только то, что тестите и зависимые.
Цитата:
|
|
26.05.2016, 13:00 | #12 |
Регистрация: 26.05.2016
Сообщений: 6
|
Спасибо буду пробовать.
Да меня это тоже смущает. Буду следовать верной идеологии - имя файла уникально для всех проектов в солюшене. |
26.05.2016, 13:07 | #13 |
Регистрация: 26.05.2016
Сообщений: 6
|
Ну, например, в большом проекте, который компилируется очень долго мне нужно исправить одну маленькую функцию и убедиться, что тест она пройдёт верно. Или не одну, а десяток таких функций, причём до исправления их всех собирать всё смысла не имеет.
А если использовать такое тестирование через компиляцию всего проекта, то процесс явно затянется, т.к. после каждого исправления придётся пересобирать всю библиотеку, а не маленький кусочек касающийся исправляемой функции. |
29.05.2016, 10:42 | #14 |
Старожил
Регистрация: 16.12.2011
Сообщений: 2,329
|
архитектура следующая:
1. первый проект. вся бизнес-логика вашего приложения выносится с отдельную библиотеку. 2. второй проект. проект вашего приложения линкуется с вашей библиотекой 3. третий проект. отдельно оформляется проект юнит-тестов. он линкуется с gtest, и с вашей бизнес-логикой. далее, вы вручную можете собирать проект тестов, и прогонять тесты. ещё используют автоматический сервер сборки. который автоматом запускает сборку тестируемой библиотеки, и прогонять её по всем тестам. (например, каждую ночь) если что-то не так - сформирует рапорт о проваленных тестах. важно: тестируемый код нужно выносить в отдельную библиотеку. которая в последствии может линковаться с тестируемым приложением. перед сборкой тестируемого приложения, тестируемую библиотеку необходимо пересобрать. |
29.05.2016, 11:12 | #15 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Ну я вроде это и предлагал автору, ему почему-то не понравилось
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
29.05.2016, 12:03 | #16 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,695
|
Что важно в выносе кода в библиотеку? Особенно, если у автора один exe?
|
29.05.2016, 13:11 | #17 |
Старожил
Регистрация: 16.12.2011
Сообщений: 2,329
|
автору нужно понять, что если он хочет грамотную поддержку
юнит-тестов, то ему больше не нужен один exe код, который он хочет покрыть тестами по уму должен жить в отдельной библиотеке. и вот эту готовую библиотеку он будет линковать как с тестирующим проектом, так и с итоговым боевым. пример: 1. библиотека-бизнес-логики.lib содержит наш код, который мы хотим протестировать. 2 приложение Игра.exe линкуется с уже протестированной библиотекой библиотека-бизнес-логики.lib своего кода практически не содержит. все делается руками уже протестированной библиотеки. 3. приложение юнит-тесты.exe линкуется с библиотекой библиотека-бизнес-логики.lib и содержит исходный код тестов, для её тестирования. ------------------------------------------------------------------------ в таком виде очень удобно работать как с большими, так и с мелкими проектами. подключать исходный код одного проекта, в состав исходников другого проекта - печальная практика. это как минимум это не удобно. потому что придется отслеживать изменения исходных файлов по всем тем проектам, в которых они фигурируют. |
29.05.2016, 13:32 | #18 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,695
|
Через чур усложнять проект и его поддержку только ради пары тестов это круто
|
29.05.2016, 13:43 | #19 | |
Старожил
Регистрация: 16.12.2011
Сообщений: 2,329
|
Цитата:
поскольку противоречит самой идее существования юнит-тестов. юнит-тесты, и вообще TDD подход призваны как раз таки для упрощения проекта. удешевления разработки и сопровождения. однако, важно понимать: либо вы смотрите на вещи сквозь призму TDD, либо вы вообще не связываетесь с тестированием. с таким отношением, как оно у вас сейчас, это - бесполезная трата ресурсов. |
|
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Visual studio 2013 | MarineKing | Фриланс | 0 | 28.05.2015 16:26 |
C++ visual studio 2013 | mystafa23 | Общие вопросы C/C++ | 1 | 15.11.2014 21:07 |
C++ visual studio 2013 | mystafa23 | Общие вопросы C/C++ | 10 | 15.11.2014 20:02 |
C++ visual studio 2013 | mystafa23 | Общие вопросы C/C++ | 3 | 20.10.2014 07:16 |
Интерфейс приложений в стиле Office 2013, Visual Studio 2012/2013, Adobe CC | nnmserg | WPF, UWP, WinRT, XAML | 2 | 12.09.2014 12:41 |