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

С++ Unit Test (модульное тестирование) - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 74, средняя оценка - 4.92
greeezz
272 / 165 / 4
Регистрация: 10.07.2011
Сообщений: 441
06.02.2012, 22:42     С++ Unit Test (модульное тестирование) #1
Вопроса по сути два.
1. что используете для модульного тестирования и почему отдаете этому предпочтение.
2. если используете eclipse, то очень интересует процесс конфигурирования eclipse для работы с фрэймворком тестирования.

Почему задаю вопрос... Гуглю неделю на предмет поиска данной инфорации. И прихожу в недоумение от того что 90% статей которые удалось найти не моложе 2010 года.. Как результат не могу найти нормального объяснения процесса конфигурирования IDE и фреймворка.
Я читал про : googletest, cpptest, boost.test.
к сожалению ни одну из них не удалось по человечески настроить. вроде что-то работает.. но как-то частично.. то на библиотеки ругань... то якобы не подключены пути...

Буду честен... у меня конкретный мозг оверфлоу.... я топчусь на месте. Буду благодарен за помощь.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
fasked
Эксперт C++
 Аватар для fasked
4925 / 2505 / 180
Регистрация: 07.10.2009
Сообщений: 4,306
Записей в блоге: 1
13.02.2012, 23:51     С++ Unit Test (модульное тестирование) #41
Цитата Сообщение от greeezz Посмотреть сообщение
Уверен что все зависит от проекта и что пословица “Кашу маслом не испортишь” применима к модульному тестированию.
Если требования к проекту динамически изменяются, вероятно, придется переписывать и большую кучу тестов Так что все должно быть в меру.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
CheshireCat
Эксперт С++
2907 / 1235 / 78
Регистрация: 27.05.2008
Сообщений: 3,315
14.02.2012, 13:15     С++ Unit Test (модульное тестирование) #42
Гм. А как тогда, не переписывая тестов или не имея их вообще, ты подтвердишь, что некоторое требование действительно выполняется, и при этом выполняется правильно?
На любое требование должны быть один или несколько методов проверки. Это относится не только к высокоуровневым требованиям (описанным в ТЗ), но и к более низкоуровневым - в спецификации модуля и/или класса, и/или функции.
fasked
Эксперт C++
 Аватар для fasked
4925 / 2505 / 180
Регистрация: 07.10.2009
Сообщений: 4,306
Записей в блоге: 1
14.02.2012, 21:06     С++ Unit Test (модульное тестирование) #43
Цитата Сообщение от CheshireCat Посмотреть сообщение
Гм. А как тогда, не переписывая тестов или не имея их вообще, ты подтвердишь, что некоторое требование действительно выполняется, и при этом выполняется правильно?
На любое требование должны быть один или несколько методов проверки. Это относится не только к высокоуровневым требованиям (описанным в ТЗ), но и к более низкоуровневым - в спецификации модуля и/или класса, и/или функции.
Я про то, что не надо загоняться и всегда стремиться к 100% покрытию кода тестами. Это лишнее.
greeezz
272 / 165 / 4
Регистрация: 10.07.2011
Сообщений: 441
14.02.2012, 21:46  [ТС]     С++ Unit Test (модульное тестирование) #44
Цитата Сообщение от fasked Посмотреть сообщение
Если требования к проекту динамически изменяются, вероятно, придется переписывать и большую кучу тестов Так что все должно быть в меру.
...
Я про то, что не надо загоняться и всегда стремиться к 100% покрытию кода тестами. Это лишнее.

Думаю что требуется внести уточнение. Когда вы говорите о динамическом изменении проекта то что это значит ? что вы собираетесь переписать его половину? Это уже не динамическое изменения а практически новый проект в таком случае.
Если по существу ....
Что такое модульное тестирование. В первую очередь это тестирования не всего проекта одним тестом. А тестирование его компонентов (читай, методов, классов например). Как вы пишете код? Вы создаете классы, описываете поведение каждого класса. Каким вы стремитесь писать ваши классы ? Верно.. Переиспользуемыми. Почему? Потому что это одна из основ ООП.
Отсюда следует. Если вы вносите изменение в часть проекта то вы не будете переписывать все тесты и даже не большую их часть. Вы перепишите тесты которые тестируют то что вы меняете и не более. Конечно если код ваших классов зависит от кода других ваших классов... вот тут уже проблема и надо менять подход к имплиментации ваших идей.
Поймите правильно. Всем что написано выше я не хотел сказать что ЭТО ВЫ делаете неправильно. Мне лишь показалось что мы говорим об одних вещах но только разными словами.
fasked
15.02.2012, 15:37
  #45

Не по теме:

Цитата Сообщение от greeezz Посмотреть сообщение
Думаю что требуется внести уточнение. Когда вы говорите о динамическом изменении проекта то что это значит ? что вы собираетесь переписать его половину? Это уже не динамическое изменения а практически новый проект в таком случае.
Если по существу ....
Что такое модульное тестирование. В первую очередь это тестирования не всего проекта одним тестом. А тестирование его компонентов (читай, методов, классов например). Как вы пишете код? Вы создаете классы, описываете поведение каждого класса. Каким вы стремитесь писать ваши классы ? Верно.. Переиспользуемыми. Почему? Потому что это одна из основ ООП.
Отсюда следует. Если вы вносите изменение в часть проекта то вы не будете переписывать все тесты и даже не большую их часть. Вы перепишите тесты которые тестируют то что вы меняете и не более. Конечно если код ваших классов зависит от кода других ваших классов... вот тут уже проблема и надо менять подход к имплиментации ваших идей.
Поймите правильно. Всем что написано выше я не хотел сказать что ЭТО ВЫ делаете неправильно. Мне лишь показалось что мы говорим об одних вещах но только разными словами.
Такое чувство, что в куче этих слов меня таки назвали идиотом.

greeezz
15.02.2012, 17:25  [ТС]
  #46

Не по теме:

Цитата Сообщение от fasked Посмотреть сообщение
Такое чувство, что в куче этих слов меня таки назвали идиотом.
уверяю вас.. это не так.

alex_x_x
бжни
 Аватар для alex_x_x
2441 / 1646 / 84
Регистрация: 14.05.2009
Сообщений: 7,163
15.02.2012, 19:08     С++ Unit Test (модульное тестирование) #47
Цитата Сообщение от fasked Посмотреть сообщение
Конечно если код ваших классов зависит от кода других ваших классов... вот тут уже проблема и надо менять подход к имплиментации ваших идей.
сферические классы в вакууме, обменивающиеся между собой анонимными сообщениями чтоли?
greeezz
272 / 165 / 4
Регистрация: 10.07.2011
Сообщений: 441
15.02.2012, 19:48  [ТС]     С++ Unit Test (модульное тестирование) #48
Цитата Сообщение от alex_x_x Посмотреть сообщение
сферические классы в вакууме, обменивающиеся между собой анонимными сообщениями чтоли?
Красиво сказано. Ничего не скажешь.
alex_x_x, Я уверен что вам известно понятие интерфейса класса а также одного из постулатов ООП - инкапсуляция. И еще я уверен что логику классов, которые вы пишите, вы можете менять. И причем менять так что вам не придется менять код "клиентов" который используют этот класс.
Я ответил на ваш вопрос ?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.02.2012, 20:27     С++ Unit Test (модульное тестирование)
Еще ссылки по теме:

C:\Projects\test\test.cpp|6|error: ISO C++ forbids declaration of 'operator++' with no type [-fpermissive]| C++
C++ Раздельный native unit test для проекта скомпилированного как Debug и как Release
Модульное программирование в с++ C++
Модульное GUI приложение для тестирования Visual C++
C++ Нагрузочное, модульное, интеграционное тестирование

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

Или воспользуйтесь поиском по форуму:
alex_x_x
бжни
 Аватар для alex_x_x
2441 / 1646 / 84
Регистрация: 14.05.2009
Сообщений: 7,163
15.02.2012, 20:27     С++ Unit Test (модульное тестирование) #49
слова-то умные, во всех книжках пишут, только работают они в-основном для абстракций разных уровней
да впрочем даже для них всегда что-нибудь, да меняется
Yandex
Объявления
15.02.2012, 20:27     С++ Unit Test (модульное тестирование)
Ответ Создать тему
Опции темы

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