Введение в тестирование
1. Команда тестирования Тестер; Разработчик тестов; Разработчик автоматизированных тестов.
2. Качества идеального тестера Уметь разрушать программные продукты, не чувствуя при этом никаких угрызений совести; Уметь разрабатывать и выполнять пошаговые процедуры; Уметь описывать последовательность событий и конфигурацию системы; Уметь критиковать и корректно воспринимать критику;
Качества идеального тестера (продолжение) Обладать способностью приносить разработчикам и руководству плохие новости; Уметь противостоять неослабевающему давлению; Быть терпеливым и готовым выполнять прогоны тестов много раз;
Качества идеального тестера (продолжение) Обладать способностью видеть общую панораму программы и уметь сосредоточиться на деталях.
3. Характерные ошибки Предположение, что программа работает корректно; Нежелание регистрировать каждую обнаруженную проблему; Игнорирование или сокрытие проблемы; Написание отчетов о несуществующих ошибках.
4. Причины ухода из команды тестеров Подъем на следующий уровень квалификации – в программисты; Неумение работать в команде, коллективе.
5. Виды тестирования Тестирование User Interface; Функциональное тестирование; Тестирование конфигураций (разные ОС, версии, оборудование); Нагрузочное тестирование (большой объем проекта, большое количество подключений и т.д.); Тестирование удобства работы; Регрессионное тестирование.
6. Типы тестирования Тестирование «белого» ящика. Доступен код программы. Этот код используется при создании тестов; Тестирование «черного» ящика. НЕ доступен код программы. При создании тестов используется описание функций программы.
7. Методы тестирования Разбиение на классы эквивалентности: - все буквы; - все цифры. После проверки одного элемента класса эквивалентности можно делать выводы обо всем классе.
Методы тестирования (продолжение) Проверка граничных условий. Пример. Согласно функциональным требованиям значение поля должно быть в диапазоне 32 – Набор значений при проверке: -31, 32, 33, 32759, 32760, 32761; -0; -пустое поле.
8. Тесткейс (testcase). Структура Идентификатор; Конфигурация окружения; Установочные действия перед выполнением теста; Действия при выполнении теста; Ожидаемые результаты при выполнении теста; Действия по очистке после выполнения теста;
Тесткейс. Структура. (продолжение) Результаты теста – Тестер, Дата, Результат теста; Примечания.
9. Задача Исходные данные: Программа производит чтение трех целых чисел, которые интерпретируются как длины сторон треугольника. Далее программа печатает сообщение о том, является ли треугольник неравносторонним, равнобедренным или равносторонним.
Задача (продолжение) Задание: Напишите набор тестов (специальные последовательности данных), которые будут адекватно проверять эту программу. Построив тесты, проанализируйте их.