Тестирование как средство противодействия внешнему хаосу Никита Налютин

Содержание

Слайд 2

Как мы хотели бы тестировать?

Как мы хотели бы тестировать?

Слайд 3

Как оно бывает на самом деле? Менеджер проекта Аналитик Разработчик Дизайнер Тестировщик

Как оно бывает на самом деле?

Менеджер
проекта

Аналитик

Разработчик

Дизайнер

Тестировщик

Слайд 4

Где все хорошо? Requirements and technical concepts for aviation RTCA DO-178B

Где все хорошо?

Requirements and technical concepts for aviation RTCA DO-178B
Процессы:
Планирование
Разработка
Верификация
Управление конфигурациями
Управление качеством
Взаимодействие с

сертифицирующим органом
Слайд 5

Уровни критичности

Уровни критичности

Слайд 6

☺ Зона порядка Тестировщик внутри процесса Переработка упорядоченного входа в упорядоченный


☺ Зона порядка

Тестировщик внутри процесса

Переработка упорядоченного входа в упорядоченный выход

Требования

Релизы

Тесты

Дефекты

Сроки

Стандарты

Слайд 7

Когда заканчиваем? Фаза кончилась Деньги кончились Покрыли 100% требований Покрыли 75%

Когда заканчиваем?

Фаза кончилась
Деньги кончились
Покрыли 100% требований
Покрыли 75% кода
Автоматизировали 70% тестов

Когда выпускаем?

Дефекты

кончились
Слайд 8

Чем хорошо? Сроки – управляемые Процесс – есть Зрелость коллектива –

Чем хорошо?

Сроки – управляемые
Процесс – есть
Зрелость коллектива – несомненно

Чем плохо?

Окружающая среда

не обязана быть зрелой и устойчивой
Работать все равно надо!
Слайд 9

☹ Зона внутреннего хаоса Сроки Релизы Требования Стандарты??? Тесты Дефекты Код

☹ Зона внутреннего хаоса

Сроки

Релизы

Требования

Стандарты???

Тесты

Дефекты

Код

Слайд 10

Главный вопрос жизни, вселенной и всего такого Как работать в агрессивной среде в условиях внешнего хаоса?

Главный вопрос жизни, вселенной и всего такого
Как работать в агрессивной среде

в условиях внешнего хаоса?
Слайд 11

42! Структурировать! Время: GTD Информацию о системе: конфигурации Быстрые оценки состояния: диаграммы

42!
Структурировать!
Время: GTD
Информацию о системе: конфигурации
Быстрые оценки состояния: диаграммы

Слайд 12

☹ Зона внешнего хаоса Зона внутреннего порядка Как бороться? INBOX Информация


☹ Зона внешнего хаоса

Зона внутреннего порядка

Как бороться?

INBOX

Информация о системе

Сроки

Релизы

Код

Тесты/дефекты

Рабочие процессы

Оценки/отчеты

Слайд 13

Время

Время

Слайд 14

☹Планирование времени

☹Планирование времени

Слайд 15

☺Упорядочение времени: почти GTD Надо срочно! Наброски критических тест-кейсов Сразу баг-репорты

☺Упорядочение времени: почти GTD

Надо срочно!
Наброски критических тест-кейсов
Сразу баг-репорты
Задача на спокойный период

– написать нормальный тест-план и кейсы
Надо сегодня
Нормальные тест-кейсы
Баг-репорты со ссылками на шаги
Задача на спокойный период: выделить тесты на регрессию
На неделе сделаешь?
Подробные тест-кейсы
Можно подумать об автоматизации и о высоком
Слайд 16

☺Распределяем верхушки айсберга срочно! сегодня на неделе Анализ и исследование Сценарии

☺Распределяем верхушки айсберга

срочно!

сегодня

на неделе

Анализ и исследование

Сценарии тестов

Тест-требования

Дефекты

Рабочие заметки

Привязка к структуре системы

Автоматизация

Мы

не отказываемся от работы вообще…
…но просто откладываем часть ее на потом
…на более спокойное время, но иногда насовсем ☺

INBOX

Слайд 17

Информация о системе

Информация о системе

Слайд 18

☹Управление конфигурациями Конфигурация документов Архитектура Руководство пользователя План проекта Система

☹Управление конфигурациями

Конфигурация документов

Архитектура

Руководство пользователя

План проекта

Система

Слайд 19

?Управление конфигурациями

?Управление конфигурациями

Слайд 20

☺Упорядоченные конфигурации Важно! Один объект входит во множество конфигураций Источники информации:

☺Упорядоченные конфигурации

Важно!
Один объект входит во множество конфигураций
Источники информации:
Внешние (требования) – непредсказуемы,

надо структурировать
Внутренние – тестовые артефакты, знаем что когда будет
Какие нужны конфигурации?
Тесты (на регрессию, доделать, уточнить, автоматизировать)
Дефекты (конкретного релиза, критические и т.п.)
Подумать и улучшить (что угодно)
Хотелки и требования (структура системы)
и т.д.
Что надо связывать? Все!
тесты, дефекты, результаты прогона, коммиты и т.д.
Слайд 21

☺Упорядоченные конфигурации Внешние источники Дают статическую информацию Надо «подшивать», образуя структурированные

☺Упорядоченные конфигурации

Внешние источники
Дают статическую информацию
Надо «подшивать», образуя структурированные описания системы
Тестировщик –

аналитик
Wiki
Внутренние источники
Дают динамическую информацию, важно состояние
Структура образуется сама
Тестировщик работает согласно процессам
Project Tracker
Слайд 22

☺Workflow все-таки есть

☺Workflow все-таки есть

Слайд 23

Отчеты о состоянии

Отчеты о состоянии

Слайд 24

☹Вычисление состояния Объект конфигураци Объекты конфигурации Состояния объектов Состояние конфигурации Принятие

☹Вычисление состояния

Объект конфигураци

Объекты конфигурации

Состояния объектов

Состояние конфигурации

Принятие решения

Технологическое воздействие

Изменение состояний

Анализ состояния

Вычисление статуса конфигурации

Слайд 25

☺Оценка состояния Состояние должно определяться с первого взгляда Какие нужны диаграммы?

☺Оценка состояния

Состояние должно определяться с первого взгляда
Какие нужны диаграммы?
Календарь приоритетов: календарь
Сколько

осталось: столбчатая
Где критические места: пузырьковая
Трудозатраты (на разработку тестов/на регрессию): роза ветров
Слайд 26

Календарь приоритетов ☺ ☹ Задача 1 Задача 2 Задача 3 Задача

Календарь приоритетов


Задача 1

Задача 2

Задача 3

Задача 4

Задача 1

Задача 2

Задача 3

Задача !!!

Задача ???

Пн

Вт Ср Чт Пт

Пн Вт Ср Чт Пт

Приоритет

Лесенка сверху вниз

Слайд 27

Где критические места? Пузыри должны всплывать, уменьшаясь в размерах по мере исправления дефектов

Где критические места?

Пузыри должны всплывать, уменьшаясь в размерах
по мере исправления

дефектов
Слайд 28

Сколько осталось Разработка Тестирование Задача 1 Задача 3 (исправление) Задача 5

Сколько осталось

Разработка

Тестирование

Задача 1

Задача 3 (исправление)

Задача 5

Задача 2

Задача 3

Задача 4 (исправление)

Задача 4

Задача

6

Считаем каждого или через одного

Слайд 29

Трудозатраты Перекос на регрессию – надо автоматизировать

Трудозатраты

Перекос на регрессию – надо автоматизировать

Слайд 30

Куда дальше? Распространить порядок за пределы тестирования Заинтересовать начальство Подключить заказчиков

Куда дальше?

Распространить порядок за пределы тестирования
Заинтересовать начальство
Подключить заказчиков к обсуждению проблем

в трекере