Post on 24-Jan-2015
description
Исаев Дмитрий
Инженер по автоматизации тестирования
Теория тестирования
2
Глоссарий
1. Тестирование (Software testing)
2. Верификация (Verification)
3. Валидация (Validation)
4. План тестирования (Test plan)
5. Тест дизайн (Test design)
6. Тестовый случай (Test case)
7. Дефект (Bug)
8. Тестовое покрытие (Test coverage)
3
Сегодня
1. История тестирования
2. Какие виды тестирования бывают
3. Автоматизация?
Тестирование: назад в
будущее
5 19 век
1. Машина Бэббиджа
2. Томас Эдисон упоминает про баг
3. Основан IBM
6 1900'ые
1. Принцип Парето
7 1940'ые
1. Первый официальный баг
2. Архитектура Фон Неймана
3. Основание ISO
8 1950'ые
1. Книги Джурана и Фейгенбаума
2. Тест Тьюринга
3. Первая команда тестирования
9 1960'ые
1. Таблицы принятия решений (IBM)
2. Software crisis
3. Программа на Basic
4. Основана Intel
10 1970'ые
1. Представлена waterfall модель
2. Знаменитая литература
3. Кривая Боэма
4. Основание крупнейших компаний
11 1980'ые
1. Массовый компьютер от IBM
2. Testing computer software (Kaner)
3. Концепция Use Case'ов
4. Первый дефект трекер (DDTS)
12 1990'ые
1. Представлены многие методологии
2. Основания крупных софт-компаний
3. Представлено Pairwise-testing
13 2000'ые
1. Новые методологии разработки
2. Новые книги
3. Новые инструменты
14
Эпохи тестирования
● до 1956 – Debugging oriented● 1957–1978 – Demonstration oriented● 1979–1982 – Destruction oriented● 1983–1987 – Evaluation oriented● 1988–2000 – Prevention oriented
15 «Как хочется» и «как обычно бывает»
Фокус Планирование Проектирование Покрытие Открытость
Prevention testing
Предупреждение До и после объявления требований к ПО
После объявления требований к ПО
Максимально известное
Документы публичны и проходят рецензию
Как обчно? Обнаружение и демонстрация
После проектирования ПО
После проектирования ПО
Максимально нерпедсказуемое
Документы публичны или непубличны или вообще отсутствуют +малое рецензирование
Какое тестирование
существует?
17
Виды тестирования
1. Функциональное
2. Нефункциональное
3. Тестирование изменений
18 Какое тестирование существует
19
Методики тестирования
20
Статическое тестирование
21
Динамическое тестирование
22
Тестирование белого ящика
23
Тестирование черного ящика
24
Тестирование серого ящика
25
Уровни тестирования
26
Юнит тестирование
27
Интеграционное тестирование
28
Компонентное тестирование
29
Системное тестирование
30
Приемочное тестирование
31
Типы тестирования
32
Тестирование установки
33
Тестирование на совместимость
34
Дымовое тестирование
35
Санитарное тестирование
36
Регрессионное тестирование
Регрессионное тестирование
37
Альфа тестирование
38
Бета тестирование
39
Функциональное тестирование
40
Нефункциональное тестирование
41
Тестирование на отказ и восстановление
42
Тестирование производительности
43
Тестирование удобства использования
44
Тестирование доступности
45
Тестирование безопасности
46
Тестирование локализации
47
Тестирование в разработке
48
A/B-тестирование
Автоматизированное
тестирование
50
Что такое автоматизация?
1. Само запускается
2. Само инициализирует тестовые данные
3. Само выполняет тесты
4. Само подготавливает отчет
51
Зачем автоматизация?
1. Экономия времени
2. Рутинные процессы
3. Быстрый анализ результатов
52
Как связанно с рассказанным ранее?
Почти все описанное можно автоматизировать!
53
Как автоматизировать?
1. Нужен язык программирования
2. Специализированный фреймворк
тестирования
3. Инструментарий для автоматизация
выполнения действий
54
Специализированные фреймворки
55
Python+selenium+unittest
Исаев Дмитрий
Инженер по автоматизации
тестирования
Спасибо