2008/08/22
Откуда берутся баги?
- Ошибки программистов
Программисты тоже люди, а людям свойственно ошибаться
- Изменения требований
Заказчик не всегда понимает, как те или иные изменения отразятся на программном продукте. Хотя он может это и понимать, но все равно настаивать на изменениях - переделки дизайна, смена разработчиков, добавление функционала и т. д.
Любые мелкие или крупные изменения требований влекут за собой новые баги, и нужны огромные усилия для сохранения целостности проекта после любых изменений.
В этих случаях менеджеры проекта должны понимать результирующие риски и тестировщки
должны адаптировать тест-план для интенсивного тестирования.
- Проблема времени
Не всегда время на проекты планируется правильно. Иногда все самое важное делается в последний момент. Когда на носу дедлайн и времени совсем нет - тогда и появляются баги.
- Элементарная нехватка коммуникаций
Программисты не поняли как правильно сделать, а не уточнили. Тестировщики подумали что программисты сделали правильно. Заказчик увидел и испугался. Этого бы ничего не было при правильной наладке процесса коммуникаций заказчик-менеджер-разрабочик-тестировщик.
Что любят говорить разработчики?
- Здесь нет ошибки. Винды у вас кривые.
- Это сделать раз плюнуть
- Да я за часик это все исправлю, а вы раздули глобальную проблему
- Проще будет обновить старый код...
Вместо...
- Это добавит трудностей, но в конце-концов мы избежим ошибок.
- Я не могу точно оценить скрлько потребуется времени на исправление, пока я детально не рассмотрю проблему
- Мы не представляем что тут делает старый код, из-за которого столько ошибок. Мы перепишем по-новому без ошибок
2008/08/21
Кто такой хороший тестировщик?
Что сделает очень плохой тестировщик?
- Он даже не запустит программу. Скажет все работает.
Что сделает плохой тестировщик?
- Кто-то ему сказал что программа возводит число в квадрат. Он ввел число 4, получил
в результате 2 и сказал что программа работает неправильно. Вернул разработчикам.
Что сделает не очень плохой тестировщик?
- Прочитает спецификацию. Поймет что делает программа. Введет число 4, на выходе получит число 2. Скажет что программа классно работает и даст зеленый свет на релиз.
Что сделает хороший тестировщик?
- Прочитает спецификацию. Поймет что делает программа. Введет число 4, на выходе получит число 2. Введет число -2, на выходе получит число эксепшн - занесет баг.
Введет букву а в поле для числа, на выходе получит число эксепшн - занесет опять баг.
Что сделает тестировщик-профессионал?
- Изучит спецификацию.
- Напишет детальные тест-кейсы
- Проверит реакцию программы на целые, дробные числа, на ноль, на длинные числа, на отрицательные числа, на очень маленькие числа
- Проверит округление результата
- Проверит реакцию программы на неправильные данные (буквы, спецсимволы и т.д)
- Проверит действительно ли программа выдает правильный результат во всех случаях
- Протестирует интерфейс пользовталея
- Протестирует программу в разных ОС
- И сделает еще много-много полезных вещей и команда выпустит действительно качественный продукт2008/08/20
Тренинги по тестированию ПО в Черкассах от компании QATestlab
Цели тренинга:
1. Раскрыть особенности достаточно новой профессии - тестировщика ПО;
2. Получить как теоретические знания, так и некоторый практический опыт работы с различными проектами, решения реальных задач, с которыми работают тестировщики;
3. Научиться применять разные методики для тестирования программного обеспечения;
4. Научиться описывать ошибки программного обеспечения и писать тест-кейсы;
5. Научится правильно использовать ручное и автоматизированное тестирование в реальных проектах;
6. Научиться анализировать и разумно использовать собственное время в работе;
Структура программы тренинга:
Тема 1. Введение в процесс тестирования. Роль тестирования в жизненном цикле разработки программного продукта. Как в действительности тестируются программы.
Тема 2. Ошибки в программах. Описание программных ошибок и их анализ. Жизненный цикл программных ошибок.
Тема 3. Разработка тестов и структура тест-кейсов. Характеристики хорошего теста. Регрессионное тестирование.
Тема 4. Автоматизированное и нагрузочное тестирование. Использование программного обеспечения для тестирования ПО.
ПРОГРАММА
Тема 1. Введение в процесс тестирования. Роль тестирования в жизненном цикле разработки программного продукта. Как в действительности тестируются программы.
1. Ознакомление с основными теоретическими вопросами, определениями и терминами.
2. Тестирование «белого ящика» и «чёрного ящика»
3. Цель работы тестировщика
4. Цикл разработки ПО
5. Роль тестирования в жизненном цикле разработки программного продукта
Тема 2. Ошибки в программах. Описание программных ошибок и их анализ. Жизненный цикл программных ошибок.
1. Определение программной ошибки и условия жизни программных ошибок. Причины появления багов.
2. Что такое качество. Разоблачение концепции о 100% тестировании ПО.
3. Типы багов. Атрибуты бага.
4. Описание программных ошибок и работа с багтрекинговой системой
5. Жизненный цикл программных ошибок.
Тема 3. Разработка тестов и структура тест-кейсов. Характеристики хорошего теста. Регрессионное тестирование.
1. Структура и детализация тест-кейсов.
2. Результаты исполнения тест-кейсов. Анализ полученных результатов.
3. Регрессионное тестирование.
4. Проверка исправленных ошибок.
Тема 4. Автоматизированное и нагрузочное тестирование. Использование программного обеспечения для тестирования ПО.
1. Использование автоматизированного тестирования с помощью Watir, Selenium, Rational Robot.
2. Нагрузочное тестирование с помощью Wapt, AB.exe, LoadRunner.
Использование программного обеспечения для тестирования ПО: программы для обнаружений утечек памяти, отслеживания сбоев, программы для web-тестирования.
По вопросам записи на тренинги:
ICQ: 82-0-четыре-5-5-два-0
E-mail: irinachсобачкаqa-testlabточкаcom
Нагрузочное тестирование с LoadRunner
Вы можете эмулировать сотни и тысячи виртуальных юзеров, которые будут делать определенные действия с вашим тестируемым приложением. Loadrunner обладает прекрасным инструментом для анализа полученных результатов - Loadrunner Analysis.
Результаты могут быть детально проанализированы с помощью наглядных графиков и вы можете выявить узкие места в тестируемом приложении до того как с этими проблемами столкнуться ваши пользователи.
Визуальные обучалки