Где и как я могу изучить методы тестирования программного обеспечения? - PullRequest
8 голосов
/ 17 января 2010

Я хочу узнать, как создать «надежное» программное обеспечение, предназначенное для самостоятельного тестирования. Другими словами, как мне реализовать автоматизированные тесты в моем программном обеспечении (используя java, groovy или c ++).

Итак, я хочу знать, где это можно узнать (книги или веб-сайты) и какие инструменты и библиотеки мне понадобятся для этого?

Ответы [ 7 ]

5 голосов
/ 17 января 2010
  • Общее TDD для начинающих: Кент Бек: разработка через тестирование на примере
  • Справочник по общему модульному тестированию: Жерар Месарош: Тестовые таблицы xUnit: рефакторинг тестового кода
  • TDD для новых проектов: Стив Фриман, Нат Прайс: развивающееся объектно-ориентированное программное обеспечение, руководствуясь тестами
  • TDD для проектов на коричневых полях: Micheal Feathers: эффективная работа с устаревшим кодом
  • Вопросы и ответы для задач тестирования: http://www.stackoverflow.com
  • Список программ (прокрутить вниз)
1 голос
/ 13 ноября 2011

Хорошее место для начала - http://www.codeproject.com/KB/cs/autp1.aspx

1 голос
/ 18 января 2010

В дополнение к вышеупомянутой технике управляемой тестированием разработки (TDD), вы могли бы взглянуть на проектирование по контракту , еще одну технику, в которой, по сути, нужно добавить утверждения в рабочий код для проверки во время выполнения что пункты договора (входные данные, выходные данные и инварианты) между компонентами соблюдаются. Эти утверждения могут быть удалены или сохранены при поставке программного обеспечения.

Я хотел бы дополнить свой ответ, чтобы прояснить, что TDD приводит не к «программному обеспечению, предназначенному для самостоятельного тестирования», а к некоторому программному обеспечению - пакету модульных тестов, дополненному производственным кодом, который тестирует другой часть программного обеспечения.

0 голосов
/ 18 января 2010

Я нашел Искусство модульного тестирования Роя Ошерова очень полезным для понимания основ модульного тестирования, тестирования на интеграцию, TDD и так далее. Он немного адаптирован для языков .Net, но также предоставляет очень хорошую информацию об идеях, стоящих за автоматизированным тестированием.

0 голосов
/ 17 января 2010

Я не знаю о части "для тестирования себя", но моей первой мыслью было бы прочитать о разработке через тестирование (http://en.wikipedia.org/wiki/Test-driven_development) и проверить JUnit.

0 голосов
/ 17 января 2010

JUnit, автоматизированная система тестирования для Java, - это инструмент, который действительно начал работу Сайт JUnit - отличное место для старта. Он содержит множество статей и ссылок на инструменты тестирования.

0 голосов
/ 17 января 2010

Посмотрите на рамки тестирования xUnit ( cppUnit для C ++, JUnit для Java) и посмотрите замечательную книгу Шаблоны тестирования xUnit: рефакторинг тестового кода .

И если вы действительно хотите в нее войти, посмотрите тестируемую разработку . Хорошим введением являются Дядя Боб * Три закона TDD и ката для игры в боулинг (см. Также эпизод игры в боулинг ). Отличная книга на эту тему - Разработка через тестирование: на примере .

...