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

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

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

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

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

Буду честен... у меня конкретный мозг оверфлоу.... я топчусь на месте. Буду благодарен за помощь.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.02.2012, 22:42
Ответы с готовыми решениями:

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

В Buider работает DUnit - модульное тестирование?
Добрый день. Кто-нибудь использует DUnit(или аналог для C++)? Пожалуйста, поделитесь опытом. В...

Unit-test для простого консольного приложения
Делаю лабу, но никак не могу разобраться и сделать юнит тест для консольного приложения, которое...

Модульное тестирование c++
Здравствуйте. Подскажите, пожалуйста, документацию или пример по написанию таких тестов. Сам...

48
Эксперт С++
5015 / 2594 / 241
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
13.02.2012, 23:51 41
Цитата Сообщение от greeezz Посмотреть сообщение
Уверен что все зависит от проекта и что пословица “Кашу маслом не испортишь” применима к модульному тестированию.
Если требования к проекту динамически изменяются, вероятно, придется переписывать и большую кучу тестов Так что все должно быть в меру.
0
Эксперт С++
2919 / 1268 / 114
Регистрация: 27.05.2008
Сообщений: 3,465
14.02.2012, 13:15 42
Гм. А как тогда, не переписывая тестов или не имея их вообще, ты подтвердишь, что некоторое требование действительно выполняется, и при этом выполняется правильно?
На любое требование должны быть один или несколько методов проверки. Это относится не только к высокоуровневым требованиям (описанным в ТЗ), но и к более низкоуровневым - в спецификации модуля и/или класса, и/или функции.
0
Эксперт С++
5015 / 2594 / 241
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
14.02.2012, 21:06 43
Цитата Сообщение от CheshireCat Посмотреть сообщение
Гм. А как тогда, не переписывая тестов или не имея их вообще, ты подтвердишь, что некоторое требование действительно выполняется, и при этом выполняется правильно?
На любое требование должны быть один или несколько методов проверки. Это относится не только к высокоуровневым требованиям (описанным в ТЗ), но и к более низкоуровневым - в спецификации модуля и/или класса, и/или функции.
Я про то, что не надо загоняться и всегда стремиться к 100% покрытию кода тестами. Это лишнее.
0
276 / 169 / 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
бжни
2467 / 1676 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
15.02.2012, 19:08 47
Цитата Сообщение от fasked Посмотреть сообщение
Конечно если код ваших классов зависит от кода других ваших классов... вот тут уже проблема и надо менять подход к имплиментации ваших идей.
сферические классы в вакууме, обменивающиеся между собой анонимными сообщениями чтоли?
0
276 / 169 / 21
Регистрация: 10.07.2011
Сообщений: 441
15.02.2012, 19:48  [ТС] 48
Цитата Сообщение от alex_x_x Посмотреть сообщение
сферические классы в вакууме, обменивающиеся между собой анонимными сообщениями чтоли?
Красиво сказано. Ничего не скажешь.
alex_x_x, Я уверен что вам известно понятие интерфейса класса а также одного из постулатов ООП - инкапсуляция. И еще я уверен что логику классов, которые вы пишите, вы можете менять. И причем менять так что вам не придется менять код "клиентов" который используют этот класс.
Я ответил на ваш вопрос ?
0
бжни
2467 / 1676 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
15.02.2012, 20:27 49
слова-то умные, во всех книжках пишут, только работают они в-основном для абстракций разных уровней
да впрочем даже для них всегда что-нибудь, да меняется
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.02.2012, 20:27

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Модульное тестирование
недавно понял, что сложно делать программу без тестирования её модулей. При изменении кода через...

Написать мини Unit Test к программе
Не удается написать юнит тест без ошибок. Помогите написать хотя бы самый простой юнит тест. Кидаю...

Unit - тестирование
Есть ли на C03++ стандарте что-то, помогающее в этом? И как это самое использовать? Ну или...

unit-тестирование функции
Заполнить массив n´m нулями и единицами «цепочкой квадратов». Размер квадрата задается. Тест: K =...


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

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

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