Автоматизированное тестирование
352.83K
Категория: ПрограммированиеПрограммирование

Автоматизированное тестирование

1. Автоматизированное тестирование

2.

«Нам необходимо поскорее получить это программное приложение». «Мне срочно нужны эти новые
функции продукта». Звучит знакомо?
Современных менеджеров и разработчиков программного обеспечения просят осуществлять
подготовку своих продуктов в минимальные сроки с минимальными ресурсами.
Более 90% разработчиков срывают даты поставки.
Нарушение сроков носит регулярный характер для 67% разработчиков.
Кроме того, в 91% случаев приходилось удалять в цикле разработки ключевую функциональность,
чтобы уложиться в срок.
Сроки поставки продукта на рынок определяют выживание или смерть продукта – и, или
следовательно, выживание или смерть компании.

3.

Бизнес- или правительственные учреждения также вынуждены снижать свои расходы.
Прежде всего это можно сделать за счёт дальнейшей автоматизации и модернизации бизнес-процессов
с помощью программных приложений.
Представители деловых и правительственных кругов, отвечающие за разработку приложений, не
желают ждать годами, когда появится функционирующий продукт; они требуют сосредоточить усилия
на минимизации сроков разработки, что зачастую предполагает выпуск большего количества версий
программ.
Хотя это все увеличивающееся число окончательных версий программного обеспечения даёт нечто
ощутимое, что заказчики могут видеть и использовать, необходимость сочетать одну версию
программного обеспечения с выходом следующей версии увеличивает объём и сложность работ по
тестированию.

4.

Пытаясь сделать большее с помощью меньшего, организации стремятся проводить адекватное
тестирование своего программного обеспечения в минимальные сроки.
Для достижения этой цели они обращаются к автоматизированному тестированию.
Автоматизированное тестирование можно определить как: «Управление работами и проведение
мероприятий по тестированию, включающих в себя разработку и выполнение тестовых скриптов так,
чтобы удовлетворить требования к тестированию, с использованием инструментальных средств
автоматизированного тестирования».
Автоматизация работ по тестированию имеет огромную ценность там, где тестовые скрипты
повторяются или где имеющиеся тестовые процедуры периодически запускаются различными
тестовыми скриптами.
Такое тестирование на стадиях разработки и интеграции, когда повторно используемые скрипты могут
выполняться много раз, обеспечивает значительную отдачу.

5.

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

6.

Другой пример эффективного использования автоматизированного тестирования – регрессионное
тестирование на уровне системного тестирования.
Регрессионные тесты имеют целью проверку того, что функции, предоставляемые модифицированной
системой или программным продуктом, выполняются должным образом и что не произошло никаких
незапланированных изменений в работе системы или продукта.
Автоматизация позволяет выполнить регрессионное тестирование более эффективным образом.

7.

Чтобы понять контекст автоматизированного тестирования, необходимо описать виды тестов, которые
обычно выполняются на разных стадиях жизненного цикла разработки приложений.
В среде клиент-сервер или Web целевая система – это не только программное приложение.
Она может выполняться на нескольких платформах, иметь несколько уровней поддержки сервисных
приложений и интерфейсы с готовыми прикладными продуктами (COTS), использовать один или
несколько типов баз данных и включать в себя как препроцессорную, так и постпроцессорную
обработку.
В такой среде могут проводиться тестирование функциональных требований, производительности
сервера, пользовательского интерфейса, отдельных программных модулей, комплексное тестирование,
анализ сложности программных модулей, тестирование покрытия программного кода, тестирование
скорости загрузки системы, граничных условий, безопасности, утечки памяти и многие другие виды
оценки.

8.

Автоматизированное тестирование способно поддержать эти виды текстов, поскольку
функциональность и возможности инструментальных средств автоматизированного тестирования
расширились за последние годы.
Автоматизированное тестирование может быть выполнено более эффективным и повторяемым
образом, чем тестирование вручную.
Возможности автоматизированного тестирования продолжают расти, позволяя идти в ногу с
растущими потребностями в более быстром создании менее дорогостоящих приложений лучшего
качества.
English     Русский Правила