Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.74/57: Рейтинг темы: голосов - 57, средняя оценка - 4.74
greeezz
275 / 168 / 21
Регистрация: 10.07.2011
Сообщений: 441
1

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

06.02.2012, 22:42. Просмотров 10398. Ответов 48
Метки нет (Все метки)

Вопроса по сути два.
1. что используете для модульного тестирования и почему отдаете этому предпочтение.
2. если используете eclipse, то очень интересует процесс конфигурирования eclipse для работы с фрэймворком тестирования.

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

Буду честен... у меня конкретный мозг оверфлоу.... я топчусь на месте. Буду благодарен за помощь.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.02.2012, 22:42
Ответы с готовыми решениями:

Нагрузочное, модульное, интеграционное тестирование
Здравствуйте, в рамках практики нужно сделать нагрузочное, модульное,...

Написать функцию TEST(A,k)
Написать функцию TEST(A,k), принимающую значение True, если се элементы k-й...

Unit
Плиз помогите подключить модуль Delphi 7 в С++ Builder 6 и как его обьявить в...

Unit
У мя такой вопрос: Можно ли прасмотреть весь код приложения в одном файле,...

Вызов Unit'a по кнопке
Привет, есть два unit'a один с формой другой нет. 1)Unit #include <vcl.h>...

48
fasked
Эксперт С++
4982 / 2561 / 241
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
13.02.2012, 23:51 41
Цитата Сообщение от greeezz Посмотреть сообщение
Уверен что все зависит от проекта и что пословица “Кашу маслом не испортишь” применима к модульному тестированию.
Если требования к проекту динамически изменяются, вероятно, придется переписывать и большую кучу тестов Так что все должно быть в меру.
0
CheshireCat
Эксперт С++
2912 / 1261 / 114
Регистрация: 27.05.2008
Сообщений: 3,464
14.02.2012, 13:15 42
Гм. А как тогда, не переписывая тестов или не имея их вообще, ты подтвердишь, что некоторое требование действительно выполняется, и при этом выполняется правильно?
На любое требование должны быть один или несколько методов проверки. Это относится не только к высокоуровневым требованиям (описанным в ТЗ), но и к более низкоуровневым - в спецификации модуля и/или класса, и/или функции.
0
fasked
Эксперт С++
4982 / 2561 / 241
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
14.02.2012, 21:06 43
Цитата Сообщение от CheshireCat Посмотреть сообщение
Гм. А как тогда, не переписывая тестов или не имея их вообще, ты подтвердишь, что некоторое требование действительно выполняется, и при этом выполняется правильно?
На любое требование должны быть один или несколько методов проверки. Это относится не только к высокоуровневым требованиям (описанным в ТЗ), но и к более низкоуровневым - в спецификации модуля и/или класса, и/или функции.
Я про то, что не надо загоняться и всегда стремиться к 100% покрытию кода тестами. Это лишнее.
0
greeezz
275 / 168 / 21
Регистрация: 10.07.2011
Сообщений: 441
14.02.2012, 21:46  [ТС] 44
Цитата Сообщение от fasked Посмотреть сообщение
Если требования к проекту динамически изменяются, вероятно, придется переписывать и большую кучу тестов Так что все должно быть в меру.
...
Я про то, что не надо загоняться и всегда стремиться к 100% покрытию кода тестами. Это лишнее.

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

Не по теме:

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

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

Не по теме:

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

0
alex_x_x
бжни
2455 / 1661 / 134
Регистрация: 14.05.2009
Сообщений: 7,162
15.02.2012, 19:08 47
Цитата Сообщение от fasked Посмотреть сообщение
Конечно если код ваших классов зависит от кода других ваших классов... вот тут уже проблема и надо менять подход к имплиментации ваших идей.
сферические классы в вакууме, обменивающиеся между собой анонимными сообщениями чтоли?
0
greeezz
275 / 168 / 21
Регистрация: 10.07.2011
Сообщений: 441
15.02.2012, 19:48  [ТС] 48
Цитата Сообщение от alex_x_x Посмотреть сообщение
сферические классы в вакууме, обменивающиеся между собой анонимными сообщениями чтоли?
Красиво сказано. Ничего не скажешь.
alex_x_x, Я уверен что вам известно понятие интерфейса класса а также одного из постулатов ООП - инкапсуляция. И еще я уверен что логику классов, которые вы пишите, вы можете менять. И причем менять так что вам не придется менять код "клиентов" который используют этот класс.
Я ответил на ваш вопрос ?
0
alex_x_x
бжни
2455 / 1661 / 134
Регистрация: 14.05.2009
Сообщений: 7,162
15.02.2012, 20:27 49
слова-то умные, во всех книжках пишут, только работают они в-основном для абстракций разных уровней
да впрочем даже для них всегда что-нибудь, да меняется
0
15.02.2012, 20:27
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.02.2012, 20:27

Проблемы с использованием 2-х Unit
Есть 1 форма и 2 юнита. Unit1 основной, а Unit2 добавлен. К переменным Unit1...

Переменные между двумя Unit
В одном юните задаю переменную float a=0; В другом её изменяю extern a=10;...

включить один unit к другому
блин сижу туплю...никак не найду! как это сделать, есть два unit: unit1.cpp,...


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

Или воспользуйтесь поиском по форуму:
49
Ответ Создать тему
Опции темы

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