Что такое тестирование программного обеспечения
Процесс проверки блока кода/функций/системы, разработанного/спроектированного, с помощью четко определенного набора методов оценки (называемых тестами) для выявления ошибок и дефектов, называется тестированием программного обеспечения.
Тестирование гарантирует, что требования, предоставленные клиентом, соблюдаются и что продукт работает должным образом в данной среде
Что мы знаем о тестировании программного обеспечения?
- Выполнено для обеспечения качества поставляемой продукции
- Один из наиболее важных этапов жизненного цикла разработки программного обеспечения (SDLC)
- Тестирование — это 5-й этап SDLC, начинающийся после разработки/сборки и выполняемый перед развертыванием/установкой
- В классической каскадной модели SDLC — это блочный процесс в SDLC, тогда как в других моделях, таких как модели AGILE или SPIRAL, это непрерывный процесс как часть непрерывной интеграции/непрерывного развертывания) (CI/CD)
- Результаты тестирования не ограничиваются отчетами об ошибках/дефектах. В результате процесс должен обеспечить закрытие и повторное тестирование, следовательно, 100% качество
- Ошибки — это проблемы, связанные с кодом, которые могут быть или не быть критичными. Обычно выявляются и устраняются на самой стадии разработки. Ошибки могут быть результатом синтаксической ошибки, логической ошибки или проблем во время выполнения. В основном исправлено разработчиками. Скрытые/неопознанные ошибки могут привести к замедлению работы системы, что приведет к недостаточному использованию ресурсов
- Дефекты — это отклонения от полученных спецификаций/требований, они являются серьезными и требуют немедленного устранения. Неустраненные дефекты могут привести к серьезным потерям ресурсов. Обычно выявляется на этапе тестирования. Когда тестировщик выполняет тестирование, в котором используются тестовые примеры, основанные на требованиях, отклонения от спецификаций могут быть идентифицированы, возвращены разработчику или обсуждены с заказчиком альтернативы, а проблема может быть решена и исправлена в соответствии с результатом обсуждения.
- Тестирование может выполняться тестировщиком вручную с использованием разработки тестовых сценариев на основе требований и/или спецификаций или автоматически с использованием инструментов, в которые вводятся тестовые примеры и данные, а выходные данные анализируются на предмет соответствия требованиям.
- Программное обеспечение можно протестировать на функциональность, при этом можно протестировать каждую единицу кода или функцию, интегрировать и протестировать блоки кода и функции, протестировать систему в целом, проверить работоспособность, протестировать интерфейсы или регрессию (обратная совместимость с существующими функции) быть протестированным
- Нефункциональное тестирование включает в себя тестирование производительности, нагрузки, нагрузки, безопасности, совместимости, установки, надежности и т. д., когда система подвергается тестированию в тестовых средах для оценки ее соответствующего поведения.
Актуальность тестирования программного обеспечения:
Системы, спроектированные и разработанные, никогда не бывают совершенными из-за множества умов, которые вносят свой вклад в их проектирование и создание. Тестирование программного обеспечения как процесс обеспечивает общее качество продукта. Тестирование гарантирует поставку продукта, соответствующего требованиям клиента и отвечающего потребностям бизнеса. Четко определенный процесс тестирования гарантирует, что ошибки исправлены и выявлены дефекты, интерфейсы работают совместно, безопасность и работоспособность продукта не могут быть поставлены под угрозу. Результатом тестирования является продукт, способный работать должным образом, выдерживать любые испытания и выдерживать любые сбои. Проверенный и проверенный продукт является свидетельством высочайшего качества ресурсов и их способности создавать долговечный и долговечный продукт.