Вы находитесь на странице: 1из 20

ТЕСТИРОВАНИЕ

ПРОГРАММНОГО
ОБЕСПЕЧЕНИЯ
ВВОДНОЕ ЗАНЯТИЕ. СТРУКТУРА КУРСА. ТЕРМИНОЛОГИЯ
ТЕСТИРОВАНИЯ. ЦЕЛИ ТЕСТИРОВАНИЯ
СТРУКТУРА КУРСА (РУЧНОЕ ФУНКЦИОНАЛЬНОЕ
ТЕСТИРОВАНИЕ)
•ТЕХНОЛОГИИ И ТЕРМИНЫ
•ЖИЗНЕННЫЙ ЦИКЛ ПО
•РОЛЬ ТЕСТИРОВАНИЯ
•МЕТОДОЛОГИИ И ФАЗЫ ПРОЦЕССА РАЗРАБОТКИ ПО
•СРОКИ ТЕСТИРОВАНИЯ
•ПРИНЦИПЫ ТЕСТИРОВАНИ ПО
•ЭТАПЫ, МЕТОДЫ, УРОВНИ, ВИДЫ, ТЕХНОЛОГИИ ТЕСТИРОВАНИЯ
•ПЛАНИРОВАНИЕ ТЕСТОВЫХ ИСПЫТАНИЙ, АРТЕФАКТЫ ПЛАНИРОВАНИЯ
•ВИДЫ ТЕСТ-ПЛАНОВ, РИСКИ, КРИТЕРИИ ХОРОШЕГО ТЕСТ ПЛАНА
•ЭСТИМАЦИИ
•СОЗДАНИЕ ТЕСТ ПЛАНА
•ТЕСТИРОВАНИЕ ДОКУМЕНТАЦИИ И ТРЕБОВАНИЙ
•ОПРЕДЕЛЕНИЯ, ВЫЯВЛЕНИЕ ТРЕБОВАНИЙ, СВОЙСТВА ТРЕБОВАНИЙ, ХАРАКТЕРИСТИКИ ТРЕБОВАНИЙ
•РАЗРАБОТКА ТЕСТ-КЕЙСОВ, ТЕХНИКИ ТЕСТ-ДИЗАЙНА
•РАЗНОВИДНОСТИ ТЕСТОВ, КЛАССЫ ЭКВИВАЛЕНТНОСТИ И ГРАНИЧНЫЕ УСЛОВИЯ
•ДОКУМЕНТИРОВАНИЕ ТЕСТ-КЕЙСОВ, ХАРАКТЕРИСТИКИ ТЕСТ КЕЙСОВ
•РАЗРАБОТКА ЧЕК-ЛИСТОВ
•ПОИСК И ДОКУМЕНТИРОВАНИЕ ДЕФЕКТОВ
•БАГ РЕПОРТ, КРИТЕРИИ ХОРОШЕГО БАГ РЕПОРТА, РАЗБОР ПЛОХОГО БАГ РЕПОРТА
•БАГ ТРЕКИНГОВЫЕ СИСТЕМЫ
•РЕЗУЛЬТАТЫ ТЕСТИРОВАНИЯ И ИХ ДОКУМЕНТИРОВАНИЕ
•ОПРЕДЕЛЕНИЯ, ЦЕЛИ, СТРУКТУРА ОТЧЕТА О ТЕСТИРОВАНИИ, КРИТЕРИИ ХОРОШЕГО ОТЧЕТА
•ОСНОВЫ БАЗ ДАННЫХ (ТЕОРИЯ + ПРАКТИКА)
•ОСОБЕННОСТИ ТЕСТИРОВАНИЯ МОБИЛЬНЫХ ПРИЛОЖЕНИЙ. (ТЕОРИЯ + ПРАКТИКА)
•ОСОБЕННОСТИ ТЕСТИРОВАНИЯ ВЕБ-ПРИЛОЖЕНИЙ. (ТЕОРИЯ + ПРАКТИКА)
•ЮЗАБИЛИТИ ТЕСТИРОВАНИЕ
СТРУКТУРА КУРСА (АВТОМАТИЗИРОВАННОЕ
ТЕСТИРОВАНИЕ)
•ЧТО ТАКОЕ ПРОГРАММИРОВАНИЕ, АЛГОРИТМ, БЛОК СХЕМЫ
•ПРОГРАММНАЯ СРЕДА INTELLIJ IDEA
•ПЕРВАЯ ПРОГРАММА. КЛАССИФИКАЦИЯ СИМВОЛОВ ЯЗЫКА. ПОНЯТИЯ ESCAPE-ПОСЛЕДОВАТЕЛЬНОСТЕЙ
•КОММЕНТАРИИ ОДНОСТРОЧНЫЕ, МНОГОСТРОЧНЫЕ. ПОНЯТИЕ БИБЛИОТЕКИ. АНАЛИЗ ПОНЯТИЙ: КОМПИЛЯТОР, ИНТЕРПРЕТАТОР. ВЫВОД ДАННЫХ В КОНСОЛЬ.
•ТИПЫ ДАННЫХ. ПЕРЕМЕННЫЕ. СТРОКИ. ИСПОЛЬЗОВАНИЕ СТРОК. ОРГАНИЗАЦИЯ ВВОДА ДАННЫХ С КОНСОЛИ. ПРЕОБРАЗОВАНИЕ ТИПОВ ДАННЫХ.     
•КОНСТАНТЫ И ЛИТЕРАЛЫ. ОПЕРАТОРЫ. ЛОГИЧЕСКИЕ ОПЕРАТОРЫ. ТАБЛИЦА ПРИОРИТЕТОВ ОПЕРАТОРОВ.
•КОНСТРУКЦИИ ЛОГИЧЕСКОГО ВЫБОРА. ОПЕРАТОРЫ ВЕТВЛЕНИЙ. IF. IF - ELSE. SWITCH.
•ЦИКЛЫ, ИСПОЛЬЗОВАНИЕ ОТЛАДЧИКА. WHILE. FOR. DO-WHILE.
•МАССИВЫ ОДНОМЕРНЫЕ И МНОГОМЕРНЫЕ.
•МЕТОДЫ. СИНТАКСИС. ИСПОЛЬЗОВАНИЕ КЛЮЧЕВЫХ СЛОВ. АРГУМЕНТЫ. ВОЗВРАТ ЗНАЧЕНИЙ.
•ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ
•ИСКЛЮЧЕНИЯ. TRY-CATCH, THROW, FINALLY.
•ОБЗОР JAVA COLLECTION FRAMEWORK. LIST, MAP, HASHMAP, ARRAYLIST, ARRAY.
•РЕГУЛЯРНЫЕ ВЫРАЖЕНИЯ.
•РАБОТА И СОЗДАНИЕ БАЗЫ ДАННЫХ.  ОБЩАЯ ИНФОРМАЦИЯ ОБ УТИТИЛИТАХ.  ТИПЫ ДАННЫХ. ЗАПРОСЫ.
•ЗАПРОСЫ SELECT, INSERT, UPDATE, DELETE.
•ФУНКЦИИ АГРЕГИРОВАНИЯ. COUNT, AVG, SUM, MIN, MAX. КЛЮЧЕВЫЕ СЛОВА HAVING, WHERE, GROUP BY.
•ОБЪЕДИНЕНИЯ. ОПЕРАТОР EXISTS. ANY/SOME. UNION. JOIN.
•ВВЕДЕНИЕ В WEB-ТЕХНОЛОГИИ, СТРУКТУРА HTML, ФОРМАТИРОВАНИЕ ТЕКСТА ПРИ ПОМОЩИ HTML.ФОРМАТИРОВАНИЕ ПРИ ПОМОЩИ CSS.
•ТАБЛИЦЫ. ФОРМЫ,  ФРЕЙМЫ.
•ВВЕДЕНИЕ В XML, XPATH В WEBDRIVER.
•CSS СЕЛЕКТОРЫ.
•ВВЕДЕНИЕ В SELENIUM
•ВЕРИФИКАЦИЯ В SELENIUM, WEBDRIVER. ASSERT И VERIFY. ПОНЯТИЕ TEST SUITE
•РАЗРАБОТКА РАЗЛИЧНЫХ ФУНКЦИОНАЛЬНЫХ ТЕСТОВ НА WEBDRIVER ДЛЯ ВЕБ ПРИЛОЖЕНИЙ.
•ОБЗОР ROBOTIUM. СРЕДА РАЗРАБОТКИ АВТОТЕСТОВ ДЛЯ МОБИЛЬНЫХ ПРИЛОЖЕНИЙ. ПРИМЕРЫ И ПРАКТИКА.
•ОБЗОР ИНЫХ УТИЛИТ APPIUM. ROBOTFRAMEWORK.
• ПРОХОДЕНИЕ СОБЕСЕДОВАНИЯ. ПРИМЕРЫ ВОПРОСОВ, СТРАТЕГИЯ УСПЕШНОГО ПРОХОЖДЕНИЯ СОБЕСЕДОВАНИЯ.  АНАЛИЗ СИТУАЦИЙ, ВОЗНИКАЮЩИХ ПРИ
ПРОХОЖДЕНИИ СОБЕСЕДОВАНИЯ.
КАЧЕСТВА, КОТОРЫМИ ЖЕЛАТЕЛЬНО ОБЛАДАТЬ ТЕСТИРОВЩИКУ

• ХОРОШИЕ КОММУНИКАТИВНЫЕ НАВЫКИ;


• СПОСОБНОСТЬ ЯСНО, БЫСТРО, ЧЁТКО ВЫРАЖАТЬ СВОИ МЫСЛИ;
• ИСПОЛНИТЕЛЬНОСТЬ;
• ОТВЕТСТВЕННОСТЬ;
• ТРУДОЛЮБИЕ;
• ТЕРПЕНИЕ, УСИДЧИВОСТЬ, ВНИМАТЕЛЬНОСТЬ К ДЕТАЛЯМ,
НАБЛЮДАТЕЛЬНОСТЬ, ПЕРФИКЦИОНИЗМ, ЛЮБОВЬ К КАЧЕСТВУ;
• ГИБКОЕ МЫШЛЕНИЕ, ХОРОШАЯ СПОСОБНОСТЬ К ОБУЧЕНИЮ;
• ХОРОШЕЕ АБСТРАКТНОЕ И ЛОГИЧЕСКОЕ МЫШЛЕНИЕ;
• СПОСОБНОСТЬ СТАВИТЬ НЕСТАНДАРТНЫЕ ЭКСПЕРИМЕНТЫ;
• СПОСОБНОСТЬ РАССТАВЛЯТЬ ПРИОРИТЕТЫ, САМООРГАНИЗАЦИЯ;
• СКЛОННОСТЬ К ИССЛЕДОВАТЕЛЬСКОЙ ДЕЯТЕЛЬНОСТИ..
ЗНАНИЯ И УМЕНИЯ, КОТОРЫМИ НУЖНО
ОБЛАДАТЬ ТЕСТИРОВЩИКУ
• ЗНАТЬ ОСНОВНЫЕ ПОНЯТИЯ/ТЕРМИНОЛОГИЮ/МЕТОДОЛГИИ
• ЗНАТЬ ОПЕРАЦИОННУЮ СИСТЕМУ (ОС) НА УРОВНЕ ПРОДВИНУТОГО
ЮЗЕРА
• ИМЕТЬ БАЗОВЫЕ ЗНАНИЯ О ЯЗЫКАХ ОБЪЕКТНО-ОРИЕНТИРОВАННОГО
ПРОГРАММИРОВАНИЯ (ООП)
• ПРОГРАММИРОВАНИЕ: C/C++/C#, JAVA, PHP, VISUAL BASIC,
JAVASCRIPT, .NET.
• ЗНАТЬ АНГЛИЙСКИЙ ЯЗЫК
• УМЕТЬ ОБЩАТЬСЯ С СУБД: SQL
• ЗНАТЬ ОСНОВЫ WEB (CLIENT-SERVER, HTTP, HTML)
• УМЕТЬ СОСТАВЛЯТЬ ХОРОШУЮ ТЕСТОВУЮ ДОКУМЕНТАЦИЮ
• УМЕТЬ ПИСАТЬ, ЧИТАТЬ, А ИНОГДА И РИСОВАТЬ 
ПОЧЕМУ ТЕСТИРОВАНИЕ
НЕОБХОДИМО?

• БИЗНЕС-ПРИЧИНЫ: НАМНОГО ПРОЩЕ


КОНКУРИРОВАТЬ НА РЫНКЕ ПО ТОЙ ФИРМЕ,
КОТОРАЯ ВЫПУСКАЕТ КАЧЕСТВЕННОЕ ПО.
• БИЗНЕС: ПОЛЬЗОВАТЕЛИ СКЛОННЫ
ПОЛЬЗОВАТЬСЯ КАЧЕСТВЕННЫМИ
ПРОДУКТАМИ, ДАЖЕ ЕСЛИ ОНИ ДОРОЖЕ
ПОЧЕМУ ТЕСТИРОВАНИЕ
НЕОБХОДИМО?
• ПОЛЬЗОВАТЕЛИ: «ЛУЧШЕ НЕ РИСКОВАТЬ
ЛИЧНЫМИ ДАННЫМИ, ДЕНЬГАМИ И Т.П.»
ПОЧЕМУ ТЕСТИРОВАНИЕ НЕОБХОДИМО?

• ВСЕ МЫ НЕ ХОТИМ
РИСКОВАТЬ!
ПОЧЕМУ ТЕСТИРОВАНИЕ НЕОБХОДИМО?
ПОЧЕМУ ТЕСТИРОВАНИЕ СТАНОВИТСЯ ВСЕ БОЛЕЕ ВАЖНЫМ?

• РАСТЕТ КОЛИЧЕСТВО УСТРОЙСТВ IOT


(INTERNET OF THINGS)

• РАСТЕТ КОЛИЧЕСТВО ПОЛЬЗОВАТЕЛЕЙ

• РАСТЕТ СЛОЖНОСТЬ ПО

• СКОРОСТЬ ВЫХОДА НА РЫНОК


ЯВЛЯЕТСЯ КЛЮЧЕВЫМ
КОНКУРЕНТНЫМ ПРЕИМУЩЕСТВОМ
СЕГОДНЯ
ЧТО ТАКОЕ ТЕСТИРОВАНИЕ ПО?
• ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ (SOFTWARE) – СИСТЕМА УПРАВЛЕНИЯ
ИНФОРМАЦИЕЙ, КОТОРАЯ ВКЛЮЧАЕТ В СЕБЯ КОМПЬЮТЕРНЫЕ ПРОГРАММЫ,
ПРОЦЕДУРЫ И СООТВЕТСТВУЮЩУЮ ДОКУМЕНТАЦИЮ, ОТНОСЯЩУЮСЯ К
ФУНКЦИОНИРОВАНИЮ КОМПЬЮТЕРНОЙ СИСТЕМЫ.
• ТЕСТИРОВАНИЕ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ – ПРОЦЕСС АНАЛИЗА
ПРОГРАММНОГО СРЕДСТВА И СОПУТСТВУЮЩЕЙ ДОКУМЕНТАЦИИ С ЦЕЛЬЮ
ВЫЯВЛЕНИЯ ДЕФЕКТОВ И ПОВЫШЕНИЯ КАЧЕСТВА ПРОДУКТА.
• ТЕСТИРОВАНИЕ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ – ПРОВЕРКА
СООТВЕТСТВИЯ МЕЖДУ РЕАЛЬНЫМ И ОЖИДАЕМЫМ ПОВЕДЕНИЕМ СИСТЕМЫ.
• КАЧЕСТВО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ – СТЕПЕНЬ, В КОТОРОЙ ПО
ОБЛАДАЕТ ТРЕБУЕМОЙ КОМБИНАЦИЕЙ СВОЙСТВ.
ЦЕЛИ ТЕСТИРОВАНИЯ

• ПОКАЗАТЬ РАЗРАБОТЧИКУ И КЛИЕНТУ, ЧТО ПО ОТВЕЧАЕТ ЗАВЛЕННЫМ


ТРЕБОВАНИЯМ
• НАЙТИ СИТУАЦИИ, КОГДА ПО ВЕДЕТ СЕБЯ ОШИБОЧНО, НЕЖЕЛАТЕЛЬНО ИЛИ
НЕ СООТВЕТСТВУЕТ СПЕЦИФИКАЦИИ

• КОНЕЧНАЯ ЦЕЛЬ – ОБЕСПЕЧИТЬ КАЧЕСТВО, С УЧЕТОМ ВСЕХ ИЛИ НАИБОЛЕЕ


КРИТИЧНЫХ ДЛЯ ДАННОГО КОНКРЕТНОГО СЛУЧАЯ СОСТАВЛЯЮЩИХ
ДЕФЕКТ (DEFECT) = НЕДОЧЕТ (FAULT) = ПОМЕХА (BUG)
= ПРОБЛЕМА (PROBLEM) = ISSUE
ИЗЪЯН В КОМПОНЕНТЕ ИЛИ СИСТЕМЕ, КОТОРЫЙ МОЖЕТ
ПРИВЕСТИ КОМПОНЕНТ ИЛИ СИСТЕМУ К
НЕВОЗМОЖНОСТИ ВЫПОЛНИТЬ ТРЕБУЕМУЮ ФУНКЦИЮ.
РАЗЛИЧИЕ МЕЖДУ ЛЖИДАЕМЫМ И
АКТУАЛЬНЫМ/ФАКИМЧЕСКИМ ПОВЕДЕНИЕМ СИСТЕМЫ
(СОГЛАСНО ТРЕБОВАНИЯМ ИЛИ ЗДРАВОМУ СМЫСЛУ).

БАГ ФИКСИНГ – ПРОЦЕСС ИСПРАВЛЕНИЯ


РАЗРАБОТЧИКАМИ БАГОВ.

ОТЛАДКА (DEBUGGING) – ПРОЦЕСС ПОИСКА, АНАЛИЗА


И УСТРАНЕНИЯ ПРИЧИН ОТКАЗОВ В ПРОГРАММНОМ
ОБЕСПЕЧЕНИИ.
ОТЛАДКА И ТЕСТИРОВАНИЕ – РАЗНЫЕ
АКТИВНОСТИ!
• ТЕСТИРОВАНИЕ МОЖЕТ ПОКАЗАТЬ СБОИ, ВЫЗВАННЫЕ ДЕФЕКТАМИ.
• ОТЛАДКА - ЭТО ПРОЦЕСС РАЗРАБОТКИ ПО, КОТОРЫЙ ВЫЯВЛЯЕТ ПРИЧИНУ
ДЕФЕКТА, ИСПРАВЛЯЕТ КОД И ПРОВЕРЯЕТ, ЧТО ОШИБКА БЫЛА ИСПРАВЛЕНА
КОРРЕКТНО.

ЗА КАЖДЫЙ ВИД ДЕЯТЕЛЬНОСТИ РАЗНАЯ ОТВЕТСТВЕННОСТЬ:


• ТЕСТИРОВЩИКИ ТЕСТИРУЮТ.
• РАЗРАБОТЧИКИ ЗАНИМАЮТСЯ ОТЛАДКОЙ.
ИСТОЧНИКИ
ДЕФЕКТОВ
• НЕДОСТАТОК ИЛИ ОТСУТСТВИЕ ОБЩЕНИЯ В КОМАНДЕ;
• СЛОЖНОСТЬ ПО;
• ИЗМЕНЕНИЕ ТРЕБОВАНИЙ К ПРОДУКТУ;
• ПЛОХО ДОКУМЕНТИРОВАННЫЙ КОД;
• ЧЕЛОВЕЧЕСКИЙ ФАКТОР;
• ЧЕМ БОЛЬШЕЕ ДАВЛЕНИЕ НА НАС ОКАЗЫВАЕТСЯ, ТЕМ БОЛЕЕ МЫ СКЛОННЫ ДЕЛАТЬ
ОШИБКИ;
• В ИТ-РАЗРАБОТКЕ МЫ ДОЛЖНЫ СОБЛЮДАТЬ ВРЕМЕННЫЕ СРОКИ И БЮДЖЕТ;
• ТРЕБОВАНИЯ ОПРЕДЕЛЕНЫ НЕЧЕТКО ИЛИ ПЛОХО ДОКУМЕНТИРОВАНЫ;
• СПЕЦИФИКАЦИИ ДАННЫХ НЕ ЗАВЕРШЕНЫ;
• ПРЕДПОЛОЖЕНИЯ!
ПРИМЕРЫ «БАГОВ ПО» ИЗ ЖИЗНИ..
НЕМНОГО О КАЧЕСТВЕ:

• ЕСЛИ ЗАКАЗЧИК ДОВОЛЕН ПРОДУКТОМ – ПРОДУКТ КАЧЕСТВЕННЫЙ;


• ЕСЛИ ПРОДУКТ СООТВЕТСТВУЕТ ТРЕБОВАНИЯМ – ПРОДУКТ КАЧЕСТВЕННЫЙ;
• У КАЧЕСТВЕННОГО ПРОДУКТА ВСЕГДА ЕСТЬ ПРЕИМУЩЕСТВА И НЕТ
СЕРЬЁЗНЫХ НЕДОСТАТКОВ;
• ХОРОШЕЕ КАЧЕСТВО – НИЗКИЙ РИСК ПОТЕРЬ (ДЕНЕГ, ВРЕМЕНИ,
РЕПУТАЦИИ…).
РЕКОМЕНДУЕМЫЕ РЕСУРСЫ

o СВЯТОСЛАВ КУЛИКОВ. ТЕСТИРОВАНИЕ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ.


o РОМАН САВИН. ТЕСТИРОВАНИЕ DOT COM
o РЕКС БЛЭК. КЛЮЧЕВЫЕ ПРОЦЕССЫ ТЕСТИРОВАНИЯ 
ВОПРОСЫ?