C момента обнаружения первого бага сообщество тестировщиков
накопило недюжинный арсенал методик, способствующих обнаружению дефектов в программных продуктах.
Наряду с грамотной организацией процесса разработки, тестирование
программного обеспечения в значительной степени определяет качество выпускаемых продуктов.
Что принять во внимание при тестировании приложений? Безусловно, функциональность продукта то, ради чего он выпускается. Соответствует ли приложение запросам пользователя? Эффективен ли программный продукт? Насколько удобно им пользоваться? Бывает так, что потребности пользователя весьма туманны и даже противоречивы. Но даже в условиях плохой видимости нужно обязательно думать не только о функциональности и usability, но и о многих других характеристиках. Производительность, надежность, безопасность, потребление системных ресурсов, резервное копирование, восстановление и обновление, масштабируемость, документация вот далеко не все ориентиры, по которым можно судить о качестве продукта.
Процесс разработки программного обеспечения характеризуется высокой степенью рисков и неопределенности. Почему? Потому что каждый продукт уникален. Можно провести такую параллель: мы люди, у нас одинаковое количество хромосом, строение скелета и система жизнеобеспечения организма. И при этом каждый человек это отдельный мир. Это хорошо понимают толковые учителя и врачи. То же самое в тестировании. Есть базовые методики, практики, подходы, которые необходимо применить к тестируемому продукту, и есть особенности отдельно взятого приложения, которые нужно найти, изучить и учесть при тестировании.
Изложенные предпосылки открывают большие возможности перед специалистами, решившими посвятить себя тестированию программного обеспечения. Чем сложнее продукт, тем больше ответственность, которая ложится на плечи QC-инженеров. И тем больше пользы они смогут принести. А мы будем рады помочь. Для начала, вот четыре статьи, которые будет интересно прочесть начинающему тестировщику:
Обойдемся без тестировщиков? Почему труд тестировщика настолько востребован в наши дни. Joel Spolsky и James Bach, признанные гуру в разработке и тестировании ПО, раскладывают эту тему по полочкам.
Счастье быть тестировщиком. “Ломать, крушить и рвать на части. Вот это жизнь, вот это счастье”, — к словам героев детской песенки могут присоединиться и QC-инженеры. Применить к продукту самые изощренные пытки, проверить на прочность, дать волю самой буйной фантазии и воплотить самые невероятные сценарии звучит интригующе, не правда ли? Тестировщик выступает в роли критика и разрушителя, но результатом его (не)благодарной работы будет успешный цикл жизни системы.
Три заблуждения начинающих тестировщиков. Чем больше багов находишь в продукте, тем меньше их остается? Чем больше находишь багов в продукте, тем лучше? Цель тестировщика убедиться, что программа работает? Так ли это на самом деле?
Мастерство тестировщика: перепросмотр. Единственный способ определить границы возможного выйти за эти границы.
Введение | Подходы | Инструменты | Автоматизация | Модульные тесты | Ресурсы
Что такое качество программного обеспечения и как его улучшить.
Т1. Мы думали, что это баг, а тут, оказывается, вирус затесался.
Т2. Не баги горшки обжигают?
Подходы к разработке, тестированию и внедрению приложений.
Debugging is like being the detective in a crime movie where you are also the murderer
In my 30+ year programming career, every single, bizarrely obscure bug that took weeks to chase down has ended up being a one-line fix.