278 / 173 / 21
Регистрация: 10.07.2011
Сообщений: 441
|
|
1 | |
С++ Unit Test (модульное тестирование)06.02.2012, 22:42. Показов 13802. Ответов 48
Метки нет (Все метки)
Вопроса по сути два.
1. что используете для модульного тестирования и почему отдаете этому предпочтение. 2. если используете eclipse, то очень интересует процесс конфигурирования eclipse для работы с фрэймворком тестирования. Почему задаю вопрос... Гуглю неделю на предмет поиска данной инфорации. И прихожу в недоумение от того что 90% статей которые удалось найти не моложе 2010 года.. Как результат не могу найти нормального объяснения процесса конфигурирования IDE и фреймворка. Я читал про : googletest, cpptest, boost.test. к сожалению ни одну из них не удалось по человечески настроить. вроде что-то работает.. но как-то частично.. то на библиотеки ругань... то якобы не подключены пути... Буду честен... у меня конкретный мозг оверфлоу.... я топчусь на месте. Буду благодарен за помощь.
0
|
06.02.2012, 22:42 | |
Ответы с готовыми решениями:
48
Нагрузочное, модульное, интеграционное тестирование В Buider работает DUnit - модульное тестирование? Unit-test для простого консольного приложения Модульное тестирование c++ |
278 / 173 / 21
Регистрация: 10.07.2011
Сообщений: 441
|
|
06.02.2012, 22:49 [ТС] | 3 |
niXman, а какой средой разработки пользуетесь ?
Не по теме: вообще я от boost малось в шоке пока.. читаешь код написаный с boost и скалдывается впечатление что это не с++ код а нечтно иное... как дпугой язык какой-то
0
|
бжни
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
|
|
06.02.2012, 22:49 | 4 |
использовал cppunit, cpptest
пробовал из boost'a 1) почему - ну очевидно требование высокого качества кода 2) в eclipse работал только с junit (java ессно), поэтому ничего особенно сказать не могу по поводу cppunit, cpptest - там никакая специфическая настройка особенно не требуется, все довольно просто (какие-то сложности возможны разве только при прикручивании результатов к какому-нибудь hadson'у) пользую в основном cunit
0
|
278 / 173 / 21
Регистрация: 10.07.2011
Сообщений: 441
|
|
06.02.2012, 23:15 [ТС] | 5 |
я в этом абсолютно уверен... но я реально топчусь на месте...
в моем понимании для использования фреймворка тестирования необходимо подключить библиотеки которые я собираюсь использовать для создании классов тестов. компилировать проект и запускать тестирование либо с командной строки либо из IDE... так вот для этих казалось тривиальных задач я не могу найти решения...
0
|
бжни
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
|
|
07.02.2012, 00:37 | 6 |
greeezz, вы себе неверно представляете, для их использования нужно писать код, ну я серьезно
0
|
278 / 173 / 21
Регистрация: 10.07.2011
Сообщений: 441
|
|
07.02.2012, 06:23 [ТС] | 8 |
в принципе я могу понять почему вы это написали... тут на форуме много "умников" попадаются которые например просят написать квадрат. Поэтому лишь скажу что я знаю что такое модульное тестирования и с чем его едят. Моя проблема в том что я никак немогу нормально настроить eclipse и test фреймворк так чтобы они дружили.
0
|
Evg
|
07.02.2012, 09:01
#9
|
Не по теме: Немного отвлечённый вопрос по теме: а шо такое unit-тестирование? Погуглил cppunit, нашёл русскоязычную статью http://sleepylearner.blogspot.... punit.html Только нифига не понял, зачем такие пляски с бубном на ровном месте. Если не сложно, приведите конкретный пример того, что при помощи этой нанотехнологии можно оттестировать, и чем это хуже обычного тестирования (т.е. запуск тестовых ситуаций, НЕ встроенных в программу, а внешними средствами тестирования)?
0
|
2924 / 1274 / 114
Регистрация: 27.05.2008
Сообщений: 3,465
|
|
07.02.2012, 10:05 | 10 |
Я использую UnitTest++ - потому что основная среда MS VC++ 2005.
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
07.02.2012, 11:04 | 11 |
Бустовый тестовый фреймворк.
Так на работе повелось в наших проектах. Да и вообще удобная штука. Для своих проектов тоже использовал.
0
|
бжни
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
|
||||||
07.02.2012, 12:59 | 12 | |||||
конфигурация и выбор режима работы тех же cppunit и cpptest происходит только за счет написания кода, ну например для cunit
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
||||||
07.02.2012, 13:34 | 13 | |||||
К примеру буст.
0
|
278 / 173 / 21
Регистрация: 10.07.2011
Сообщений: 441
|
|
07.02.2012, 18:29 [ТС] | 14 |
Сколько тестов вы делаете после того как внесли изменения в программу? 10, 20 … 200?
Вы тратите постоянно много времени на то чтобы все их выполнить после внесения изменений в программу. Имея написанные тесты вы просто прогоняете их каждый раз после внесения изменений и убеждаетесь что у вас все работает корректно либо что-то сломалось. Таким образом вы существенно сокращаете врмея на тестирование и увеличиваете качество вашего кода. Существует понятие Test Driven Development которое предполагает 1. Написать тест. 2. Убедится что тест не проходит. 3. Написать минимум кода для успешного выполнения кода. 4. Выполнить тест. Убедится что тест проходит успешно. 5. повторить цикл. 6. и т.д. Подробнее об этом лучше почитать ТУТ Добавлено через 9 минут Вопрос не в примерах кода тестов. Их полно в сети. Только они кстати выглядят именно так как вы написали. Без единого комментария. Что печально. Потому что не все очевидно в таком коде. Вообще мой вопрос в том как правильно настроить eclipse. С cppUnit я уже практически разобрался. 1. Скпомпилировал статическую библиотеку фреймворка. 2. подключил ее где надо в эклипсе. 3. указал нужные пути на инклюды. и т.д. Пока на вид вроде что-то работает. Сейчас разбираюсь с написанием самих тестов и проверяю все ли хорошо настроено. Возможно попозже напишу инструкцию и выложу на форуме.
1
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
07.02.2012, 19:13 | 16 |
Evg, Да обычный framework же, не более того. Некоторые пишут сами, некоторые юзают юниксовские. Но логичнее юзать уже готовый кроссплатформенный фреймворк ИМХО.
0
|
бжни
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
|
|
07.02.2012, 19:15 | 17 |
Evg, с ними это проще делать
кроме того есть возможность автоматизации у меня на работе система автоматически вычекивает из системы контроля версий код, компилирует его и запускает. Фреймворк юнит-тестирования генерит xml-ки по которым система определяет какие юнит тесты прошли, а какие зафейлились, и собственно на чем кроме того проще, когда команда использует один фреймворк юнит-тестирования, а не каждый разработчик придумывает свои велосипеды
1
|
278 / 173 / 21
Регистрация: 10.07.2011
Сообщений: 441
|
|
07.02.2012, 19:34 [ТС] | 18 |
А можете дать пример того как вы это делаете? Я так понимаю сами пишете. Буду очень благодарен за пример!
Я вообще сейчас и ищу для себя вопрос какой способ тестирвоания выбрать. Поэтому пытаюсь попробовать то что есть и потом остановиться на том что понравится.
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
07.02.2012, 19:41 | 19 |
greeezz, Советую таки присмотреться к бусту. Пример минимального использования я показал. Но там много фич.
0
|
07.02.2012, 20:30 | 20 |
Да проблема-то обычно не в системе тестирования, а в самих тестах.
Не могу, у тебя допуска соответсвующего уровня нет Да и смысла бы не было. Каждая софтина требует индивидуального подхода к тестированию. Для тестирования интерпретатора простенькая система разбиралась тут: Создание системы тестирования ПО.
0
|
07.02.2012, 20:30 | |
07.02.2012, 20:30 | |
Помогаю со студенческими работами здесь
20
Модульное тестирование Написать мини Unit Test к программе Unit - тестирование unit-тестирование функции Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |