Что такое методология тестирования программного обеспечения?
Методология тестирования программного обеспечения определяется как стратегии и типы тестирования, используемые для подтверждения того, что тестируемое приложение соответствует ожиданиям клиента. Методики испытаний включают функциональное и нефункциональное тестирование для проверки AUT. Примерами методологий тестирования являются модульное тестирование , интеграционное тестирование , системное тестирование , тестирование производительности и т. Д. Каждая методология тестирования имеет определенную цель тестирования, стратегию тестирования и результаты.
Примечание . Поскольку тестирование программного обеспечения является неотъемлемой частью любой методологии разработки, многие компании используют термин «методологии разработки и методологии тестирования» в разговорной речи. Следовательно, Методологии тестирования могут также относиться к моделям Waterfall, Agile и другим QA в отличие от приведенного выше определения Методологий тестирования. Обсуждение различных типов тестирования не повышает ценность для читателей. Следовательно, мы обсудим различные модели развития.
В этом уроке вы узнаете
- Модель водопада
- Итеративная разработка
- Agile методология
- Экстремальное программирование
- Какую методологию программного обеспечения выбрать?
- Как настроить методики тестирования программного обеспечения?
Модель водопада
Что это?
В модели водопада , прогресс разработки программного обеспечения с помощью различных фаз , таких как Анализ требований, проектирование и т.д. — последовательно .
В этой модели следующий этап начинается только после завершения предыдущего этапа.
Что такое подход к тестированию?
Первым этапом в модели водопада является этап требований, на котором все требования проекта полностью определены до начала испытаний. На этом этапе команда тестирования проводит мозговой штурм по объему тестирования, стратегии тестирования и составляет подробный план тестирования.
Только после завершения разработки программного обеспечения команда перейдет к выполнению тестовых случаев, чтобы убедиться, что разработанное программное обеспечение ведет себя так, как ожидалось.
В этой методологии группа тестирования переходит к следующему этапу только после завершения предыдущего этапа.
преимущества
Эта модель разработки программного обеспечения очень проста для планирования и управления. Следовательно, проекты, где требования четко определены и заявлены заранее, могут быть легко протестированы с использованием модели водопада.
Недостатки
В модели водопада вы можете начать следующий этап только после завершения предыдущего этапа. Следовательно, эта модель не может приспособиться к незапланированным событиям и неопределенности.
Эта методология не подходит для проектов, где требования часто меняются.
Итеративная разработка
Что это?
В этой модели большой проект делится на маленькие части, и каждая часть подвергается нескольким итерациям модели водопада. В конце итерации разрабатывается новый модуль или расширяется существующий модуль. Этот модуль интегрирован в программную архитектуру, и вся система тестируется все вместе
Что такое подход к тестированию?
Как только итерация завершена, вся система подвергается тестированию. Отзывы о тестировании сразу же доступны и включены в следующий цикл. Время тестирования, требуемое в последовательной итерации, может быть уменьшено на основе опыта, полученного в прошлых итерациях.
преимущества
Основным преимуществом итеративной разработки является то, что отзывы о тестировании сразу же доступны в конце каждого цикла.
Недостатки
Эта модель значительно увеличивает накладные расходы на связь, так как в конце каждого цикла должна предоставляться обратная связь о результатах, усилиях и т. Д.
Agile методология
Что это?
Традиционные методологии разработки программного обеспечения основаны на предпосылке, что требования к программному обеспечению остаются неизменными на протяжении всего проекта. Но с увеличением сложности требования претерпевают многочисленные изменения и постоянно развиваются. Иногда клиент сам не уверен, чего хочет. Хотя итерационная модель решает эту проблему, она все еще основана на модели водопада.
В Agile методологии программное обеспечение разрабатывается в последовательных, быстрых циклах. Подчеркивается взаимодействие между клиентами, разработчиками и клиентами, а не процессы и инструменты. Гибкая методология фокусируется на реагировании на изменения, а не на широком планировании.
Что такое подход к тестированию?
Инкрементное тестирование используется в методах гибкой разработки, и, следовательно, каждый выпуск проекта тщательно тестируется. Это гарантирует, что любые ошибки в системе будут исправлены до следующего выпуска.
преимущества
В любой момент можно внести изменения в проект, чтобы соответствовать требованиям.
Это дополнительное тестирование минимизирует риски.
Недостатки
Постоянное взаимодействие с клиентом означает дополнительное время для всех заинтересованных сторон, включая самого клиента, команды разработчиков программного обеспечения и тестирования.
Экстремальное программирование
Что это?
Экстремальное программирование — это тип гибкой методологии, которая верит в короткие циклы разработки. Проект делится на простые инженерные задачи. Программисты кодируют простую часть программного обеспечения и возвращаются к клиенту для обратной связи. Отзывы клиентов включены, и разработчики приступают к следующей задаче.
В экстремальном программировании разработчики обычно работают парами.
Экстремальное программирование используется в местах, где требования клиентов постоянно меняются.
Что такое подход к тестированию?
Экстремальное программирование следует разработке, управляемой тестами, которая описывается следующим образом:
- Добавьте случай испытания в набор тестов для проверки новых функциональных возможностей, который еще предстоит разработать
- Запустите все тесты, и, очевидно, новый добавленный тестовый пример не будет выполнен, поскольку функциональность еще не закодирована
- Напишите некоторый код для реализации функции / функциональности
- Запустите тестовый набор снова. На этот раз новый контрольный пример должен пройти, так как функционально был закодирован
преимущества
Клиенты, имеющие смутный дизайн программного обеспечения, могут использовать экстремальное программирование
Непрерывное тестирование и постоянная интеграция небольших выпусков обеспечивают высокое качество программного кода
Недостатки
Встречи между командой разработчиков программного обеспечения и клиентами увеличивают требования времени.
Какую методологию программного обеспечения выбрать?
Существует множество методологий, доступных для разработки программного обеспечения и его соответствующего тестирования. Каждый метод и методика тестирования предназначены для определенной цели и имеют свои относительные достоинства и недостатки.
Выбор конкретной методологии зависит от многих факторов, таких как характер проекта, требования клиента, график проекта и т. Д.
С точки зрения тестирования, некоторые методологии требуют тестирования входных данных в начале жизненного цикла разработки, в то время как другие ждут, пока рабочая модель системы не будет готова.
Как настроить методики тестирования программного обеспечения?
Методологии тестирования программного обеспечения не должны устанавливаться только ради тестирования программного кода. Общая картина должна быть рассмотрена, и главная цель проекта должна быть удовлетворена методологией тестирования.
планирование
Реалистичное планирование является ключом к внедрению успешной методологии тестирования, и график должен соответствовать потребностям каждого члена команды.
Определенные результаты
Для того, чтобы все члены команды были на одной странице, должны быть предоставлены четко определенные результаты. Результаты должны содержать прямое содержание без какой-либо двусмысленности.
Тестовый подход
После того, как планирование завершено и определены определенные результаты, группа тестирования должна быть в состоянии сформулировать правильный подход к тестированию. Документы с определениями и встречи с разработчиками должны указывать команде на лучший подход к тестированию, который можно использовать для проекта.
Составление отчетов
Прозрачная отчетность очень трудна для достижения, но этот шаг определяет эффективность подхода к тестированию, используемого в проекте.