![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| artikov |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 20.2.2010 Репутация: нет Всего: нет |
Решил научится такой полезной вещи как юнит тесты. Использую библиотеку UnitTest++ (но это в принципе не важно).
Есть у меня проект программы: MainProject:
чтоб прикрутить к нему тесты я создаю еще один проект: TestProject:
в runTests.cpp:
в foo1_test.cpp, foo2_test.cpp - тесты:
проблема в том, что когда мне надо добавить новые файлы в MainProject или изменить его настройки, те же самые изменения приходится делать с TestProject. Можно ли как нибудь избежать того, чтоб одни и те же действия нужно было делать дважды? Или может я делаю все совсем не так как надо? Тогда расскажите как делать правильно. |
||||
|
|||||
| xvr |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 60 Всего: 223 |
Поместите в TestProject не копии кодов (foo?.*), а их оригиналы (т.е. те же самые файлы, что и в MainProject). Тогда ничего в 2х местах править не придется
|
|||
|
||||
| artikov |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 20.2.2010 Репутация: нет Всего: нет |
xvr, вы не правильно поняли, файлы foo?.* - общие.
Проблема в том что если я хочу добавить новый файл foo3.cpp. Приходится в главном проекте жать Add New Item и затем в тестовом проекте - Add Exist Item -> foo3.cpp . То же самое с настройками проектов, если я хочу, например, подключить какую-нибудь библиотеку, то я должен прописать пути к h-файлам и lib-файлам в MainProject-е, и затем то же самое сделать для TestProject-a. |
|||
|
||||
| xvr |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 60 Всего: 223 |
Понял, это немного другая проблема. Ее можно решить сделав из общих сорцов отдельный проект - статическую библиотеку, и поставить зависимости от нее обеим оригинальным проектам. Всю заботу по сборке и подключению библиотеки возмет на себя MSVC (у вас именно она, насколько я понял?)
Это, увы, придется синхронизировать в обоих проектах. Либо вынести в настройки солюшена (вроде это как то можно, только не спрашивайте как - с этим сталкиваться не приходилось |
|||
|
||||
| maxim1000 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3334 Регистрация: 11.1.2003 Где: Киев Репутация: 17 Всего: 110 |
настройки проекта можно вынести в файл vsprops (для 2010 - props) и подключить их к каждому проекту
-------------------- qqq |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |