Содержание учебных дисциплин и вопросы к экзаменам:
- Автоматизация интеграционных тестов. Программное обеспечение, используемое для автоматизации интеграционного тестирования1.
- Автоматизация тестирования. Обоснование необходимости в автоматизации. Виды тестов, которые возможно автоматизировать. Инструментальные средства поддержки2.
- Автоматическое тестирование. Авто-тест. Техники автоматического тестирования3.
- Автоматные методы построения тестов. Задача тестирование на соответствие конечному автомату. Методы построения тестов для конечных полных детерминированных автоматов. D-метод. W-метод. Wp-метод. Построение тестов для расширенных и недетерминированных автоматов. Различные виды соответствия реализации и спецификации4.
- Алгоритм интеграционного тестирования1.
- Альфа и Бета тестирование. Приемочное тестирование1.
- Анализ граничных значений: типы границ, типы ошибок, правила составления тестов6.
- Анализ и тестирование требований. Виды требований. Критерии качественных требований3.
- Анализ покрытия программного кода2.
- Анализ эквивалентности с использованием JUnit. Обязательно использование примера(ов)1.
- Анализ эквивалентности1.
- Артефакты тестирования. Основные артефакты тестировщика. Тестовая документация. Функциональные требования и спецификации. Test Case, Test Specification, Test Plan. Правила составления тестов и тестовых планов3.
- Библиотека JUnit. Дополнительные возможности, запуск с параметрами. Обязательно использование примера(ов)1.
- Библиотека JUnit. Особенности API. Класс junit.framework.Assert. Обязательно использование примера(ов)1.
- Библиотека JUnit. Основные аннотации для исполнения тестов. Обязательно использование примера(ов)1.
- Валидация и верификация. Тестирование методом "чёрного" и "белого" ящика1.
- Верификация и тестирование программных средств. Требования к тестированию в стандарте ГОСТ Р ИСО/МЭК 12119-20005.
- Виды и технологии тестирования производительности. Понятие тестирования производительности, его назначение. Виды нагрузки и критерии производительности программных систем. Нагрузочное тестирование, стресс тестирование, тестирование стабильности, тестирование емкости. Оценка показателей производительности операционной системы при тестировании приложений3.
- Виды тестирования, применяющиеся на различных этапах разработки. Модульное тестирование. Регрессионное тестирование тесты. Интеграционное тестирование2.
- Виды тестирования. Классификация по объекту тестирования, по уровню доступа к компонентам системы, по степени автоматизации, по степени изолированности компонентов, по фазе проведения тестирования, по признаку позитивности сценариев, по степени подготовки к тестированию3.
- Выбор тестового покрытия с помощью анализа эквивалентности. Анализ граничных значений. Обязательно использование примера(ов)1.
- Выбор тестового покрытия с помощью диаграммы состояния и таблицы переходов. Обязательно использование примера(ов)1.
- Выбор тестового покрытия с помощью таблицы решений. Обязательно использование примера(ов)1.
- Выбор тестового покрытия с помощью функционального тестирования. Обязательно использование примера(ов)1.
- Выделение классов эквивалентности входных данных2.
- Гибкие технологии разработки программного обеспечения5.
- Документирование программной продукции. Процесс создания пользовательской документации в стандартах ГОСТ Р ИСО 9127-94 и ГОСТ Р ИСО/МЭК 15910-20025.
- Документирование программной продукции. Управление документированием в стандарте ГОСТ Р ИСО/МЭК ТО 9294-935.
- Документирование программных средств. Роль документации в обеспечении качества. Состав и структура программной документации. Основные стандарты в области документирования программных средств. Единая система программной документации. Пользовательская и проектная документация. Инструментальные средства документирования5.
- Доменное тестирование с линейными ограничениями. Выбор тестовых данных для метода с помощью техники доменного тестирования4.
- Жизненный цикл программного обеспечения. Понятие жизненного цикла программного обеспечения и жизненного цикла разработки. Модели жизненного цикла. Методологии разработки. Модель зрелости организации разработчика (CMM)2.
- Жизненный цикл программных средств. Вспомогательные процессы жизненного цикла в стандарте ГОСТ Р ИСО/МЭК 12207-99. Стадии разработки5.
- Жизненный цикл программных средств. Организационные процессы жизненного цикла в стандарте ГОСТ Р ИСО/МЭК 12207-99. Оценка процессов5.
- Жизненный цикл программных средств. Основные процессы жизненного цикла в стандарте ГОСТ Р ИСО/МЭК 12207-99. Составление и анализ требований к программным средствам5.
- Жизненный цикл разработки программного обеспечения2.
- Задачи и этапы тест-дизайна2.
- Инспектирование: общая характеристика, правила применения6.
- Инспектирование: основные типы вопросов для выявления ошибок6.
- Инспектирование: признаки неудачного применения6.
- Инструменты для реализации нагрузочного тестирования1.
- Интеграционное тестирование, его разновидности2.
- Интегрированные технологии построения тестов. Элементы технологии UniTESK. Использование программных контрактов для описания поведения. Редукция автомата по критерию полноты. Описание асинхронного поведения. Тестирование параллелизма и асинхронности на соответствие семантике линеарнизуемости набора событий4
- История и краткая характеристика модели СММ6.
- История развития тестирования программного обеспечения как отрасли. История развития тестирования программного обеспечения (с 1950-х годов по настоящее время)3.
- История развития BugTracking system6.
- Итеративная модель ведения процесса тестирования. Ведение процесса тестирования программного продукта в течении одного релиза по итеративной модели. Входная и выходная документация. Тестирование новых функциональностей, регрессионное тестирование3.
- Качество программного обеспечения и методы его контроля. Характеристики качества, стандарты ISO 9126 и ISO 25010. Задачи обеспечения качества программного обеспечения. Методы контроля качества программного обеспечения. Верификация и валидация. Методы верификации программного обеспечения: экспертиза, статический анализ, динамический анализ, формальные методы, синтетические методы верификации. Требования к программного обеспечения. Задачи извлечения и анализа требований. Необходимые свойства требований, стандарты IEEE 830 и IEEE 12334.
- Классификация видов тестирования по знанию системы, по степени автоматизации, по степени изолированности компонентов, по времени проведения тестирования3.
- Классификация видов тестирования по объекту тестирования, по признаку позитивности сценариев, по степени подготовленности к тестированию3.
- Классификация тестирования: статическое и динамическое тестирование3.
- Классические и современные определения дефекта (бага). Bug Report3.
- Комбинаторные методы построения тестов. Основные комбинаторные техники построения тестов. Дерево классификации. Использование грамматик. Покрывающие наборы. Алгоритмы построения покрывающих наборов4.
- Концепции и подходы, используемые при реализации интеграционного тестирования1.
- Краткая характеристика распределенных систем: плюсы и минусы. Особенности тестирования распределенных систем6.
- Критерии завершения тестирования2.
- Критерии оценки полноты тестового набора2.
- Критерии покрытия кода: покрытие ветвлений, условий, комбинаций условий, модифицированное покрытие условий и ветвлений (MC/DC). Составление полного по критерию MC/DC тестового набора для метода4.
- Место тестирования в процессах обеспечения качества2. Соотношение тестирования, контроля качества и обеспечения качества6. Процессы обеспечения качества: SQA, V&V, Тестирование2)).
- Методологии разработки программного обеспечения2.
- Методология экстремального программирования5.
- Методология Scrum5.
- Методы верификации программного обеспечения. Классификация методов верификации программного обеспечения. Экспертиза. Статический анализ. Верификационный мониторинг. Формальные методы верификации. Дедуктивный анализ. Проверка моделей. Примеры применения различных методов верификации4.
- Методы оценки Usability6.
- Методы создания автоматизированных тестов2.
- Методы тест дизайна. Метод попарного тестирования3.
- Методы тест дизайна. Составление таблицы сущностей и таблицы оптимальных проверок3.
- Методы тест дизайна. Таблицы принятия решений и диаграммы переходов состояний3.
- Метрики для объектно-ориентированного тестирования5.
- Модели качества программного обеспечения. Метрики качества. Общая модель качества программного обеспечения, ISO 9126-1. Альтернативные модели качества2.
- Метрики кода5.
- Метрики размера программ5.
- Метрики сложности потока данных программ5.
- Метрики сложности потока управления программ5.
- Метрики стилистики и понятности программ5.
- Модели жизненного цикла программных средств. Примеры моделей жизненного цикла в стандарте ГОСТ Р ИСО/МЭК ТО 15271-20025.
- Модели поведения программного обеспечения. Логико-алгебраические и исполнимые модели. Абстрактные типы данных. Конечные автоматы. Расширенные конечные автоматы. Системы размеченных переходов. Использование разных видов моделей для описания функциональности4.
- Модели разработки программного обеспечения и место тестирования в них. Процесс разработки программного обеспечения и место тестирования в нем. Модели жизненного цикла программного обеспечения: каскадная, итеративная модели. Современные методологии разработки ПО3.
- Модели ситуаций и критерии полноты тестирования. Общая структура моделей ситуаций. Критерии полноты и критерии покрытия. Доменные, функциональные, структурные и проблемные критерии полноты. Использование графов, грамматик и логических выражений для построения критериев полноты тестирования. Типовые критерии покрытия кода: покрытие инструкций, ветвлений, покрытия потоков данных, покрытие условий, комбинаций условий, модифицированное покрытие условий и ветвлений (MC/DC). Критерии покрытия на интеграционном и системном уровнях4.
- Модель качества программного обеспечения (ISO 9126)2.
- Модель оценки стоимости COCOMO5.
- Модель планирования и ведения процесса тестирования на основе итеративной модели разработки ПО3.
- Модель ТММ: основные этапы с кратким описанием6.
- Модель TPI®Next: основные характеристики6.
- Модульное тестирование доменной модели с использованием JUnit. Обязательно использование примера(ов)1.
- Модульное тестирование. Понятие модуля. Драйверы и заглушки1.
- Мониторинг прогресса и контроль тестирования (ISTQB)1.
- Нагрузочное тестирование — виды, цели и решаемые задачи1.
- Нахождение диагностирующей последовательности и характеризующего множества для конечного автомата. Построение полного набора тестов для конечно-автоматной модели с помощью W-метода и Wp-метода4.
- Нефункциональные виды тестирования. Нагрузочное тестирование. Тестирование защищенности, безопасности, устойчивости. Тестирование безопасности Web приложений. Тестирование удобства использования. Инструментальные средства поддержки2.
- Обеспечение качества в Open Source проектах5.
- Обеспечение качества программных средств. Управление качеством программных средств. Принципы выбора характеристик качества. Системы менеджмента качества. Основные положения и концепции стандартов серии ИСО 9000. Принципы менеджмента качества. Процессный подход к менеджменту качества. Проектирование программных средств. Методы обеспечения качества проектирования и разработки. Проектирование пользовательского нтерфейса. Использование CASE-технологий5.
- Обоснование потребности в тестировании2.
- Объектно-ориентированные метрики Лоренца и Кидда5.
- Объектно-ориентированные метрики Фернандо Абреу5.
- Объектно-ориентированные метрики Чидамбера и Кемерера5.
- Определение и классификация дефектов. Описание дефекта (Bug Report). Составление отчетов о проблеме. Жизненный цикл дефекта в процессе разработки программного обеспечения3.
- Определение и составление тестовой стратегии. Понятие тестовой стратегии. Определение приоритета тестов. Тестовое покрытие (покрытие требований, покрытие кода). Метрики эффективности процесса тестирования. Тест смета, тест прогноз3.
- Определение качества программного обеспечения6.
- Определение тестирования. Их сходства и различия6.
- Определение Usability, количественные характеристики Usability6.
- Организация тестовых наборов. Тестовые варианты. Основные паттерны организации тестовых наборов. Квалификаторы тестов. Связи между тестами и другими артефактами разработки. Основные модули тестов. Тестовые заглушки. Тестовые оракулы. Способы построения оракулов. Виды инструментов разработки тестов и тестирования. Семейство инструментов xUnit4.
- Основная цель тестирования. Уровень доверия, корректное поведение, реальное окружение1.
- Основные активности по тестированию и их место в жизни продукта6.
- Основные методы построения тестов. Вероятностные и нацеленные методы. Вероятностные, нацеленные и комбинаторные методы тестирования. Области применимости различных методов. Вероятностные методы. Распределение рисков. Марковские цепи. Нацеленные методы. Метод функциональных диаграмм. Техника выбора экстремальные значений. Доменное тестирование. Тестирование с помощью сценариев. Часто встречающиеся ошибки для различных типов данных4.
- Основные обязанности тестировщика2.
- Основные принципы проектирования интерфейсов (по Куперу)6.
- Основы тестирования. Виды тестирования. Классификация видов тестирования по целям, по видам, по месту в процессе разработки2.
- Особенности автоматизированных BTS6.
- Особенности тестирования Java-приложений6.
- Особенности тестирования Web-приложений6.
- Оценка зрелости организации — разработчика (CMM)2.
- Оценка надежности программных средств5.
- Оценка сложности программных средств5.
- Оценка посредством просмотра: цели, правила проведения6.
- Повторяемость тестового сценария. Автоматизированное тестирование. Регрессионное тестирование1.
- Покрывающие наборы и методы их построения. Использование покрывающих наборов при создании тестов на основе грамматик4.
- Полное тестовое покрытие. Оценка объема и времени полного покрытия1.
- Понятие автоматического тестирования, его назначение. Сравнение автоматического и мануального тестирования. Уровни автоматизации. Техники автоматического тестирования3.
- Понятие качества программного обеспечения. Обоснование необходимости обеспечения качества программного обеспечения2.
- Понятие качества программного обеспечения. Цели тестирования. Понятие качества программного продукта и процесса тестирования для его обеспечения. Стандарты и критерии качества. Цели тестирования. Мифы о тестировании ПО3.
- Понятие тестирования программного обеспечения. Основные определения1.
- Правила составления отчета об ошибке, формальные требования и частые проблемы6.
- Предположение об ошибках, exploration testing (эксплоративное тестирование)6.
- Принципы реализации нагрузочного тестирования программного обеспечения1.
- Принципы тестирования6.
- Программные продукты, используемые для реализации интеграционного тестирования. Использование JUnit для интеграционных тестов1.
- Работа с исходным кодом. Статический и динамический анализ. Типичные ошибки, встречающиеся при анализе исходного кода. Покрытие программного кода тестами: виды, способы оценки и анализа. Инструментальные средства поддержки2.
- Различные методы выбора значений для Domain testing1.
- Регрессионное тестирование1.
- Система Selenium. Архитектура, основные команды написания сценариев. Обязательно использование примера(ов)1.
- Системы автоматического документирования5.
- Системы контроля версий5.
- Системы менеджмента качества. Основные положения и принципы стандартов серии ИСО 90005..
- Системы менеджмента качества. Требования к системам менеджмента качества в серии стандартов ИСО-90005.
- Системы отслеживания дефектов. Знакомство с системами отслеживания дефектов. Их назначение и функции. Работа с системой отслеживания дефектов BugZilla от Mozilla Foundation, подробный разбор функциональностей. Bug-tracking процесс3.
- Системы сопровождения ошибок5.
- Системы учета и хранения тестов. Знакомство с системами учета и хранения тестов. Их назначение и функции. Работа с системой учета тестов на примере Testopia от Mozilla Foundation, подробный разбор функциональностей3.
- Сквозной просмотр: основные характеристики6.
- Сложность программных средств и ее оценка. Методы уменьшения сложности5.
- Статический анализ кода2.
- Статическое тестирование. Инспекции1.
- Статическое тестирование. Рецензия, технические анализ, сквозной контроль1.
- Статическое тестирование. Статический анализ кода. Обязательно использование примера(ов)1.
- Стохастическое тестирование, когда оно применяется2.
- Стратегии интеграции1.
- Стресс-тестирование — основные понятия, виды стресс-сценариев1.
- Стресс-тестирование программного обеспечения. Виды стресс-тестов программного обеспечения. Тестирование ёмкости1.
- Таблицы решений и таблицы переходов1.
- Тестирование алгоритмов с использованием JUnit. Обязательно использование примера(ов)1.
- Тестирование возможностей, стабильности, отказаустойчивости, совместимости1.
- Тестирование и качество. Уровни восприятия тестирования в компании1.
- Тестирование клиентской части6.
- Тестирование по бизнес-циклам6.
- Тестирование производительности — CARAT1.
- Тестирование серверной части6.
- Тестирование сети6.
- Тестирование системы целиком — системное тестирование1.
- Тестирование удобства использования (Usability)2.
- Тестовая документация. Test Plan, Test Strategy, матрица трассировки3.
- Тестовое окружение. Его элементы2.
- Тестовый случай, тестовый сценарий и тестовое покрытие1.
- Техники тестирования. Метод эквивалентных классов и граничных значений3.
- Техники тестирования. Принципы применения техники, ориентированной на код3.
- Технологии быстрой разработки приложений5.
- Технология MSF5.
- Технология RUP5.
- Типичные уязвимости, встречающиеся в web-приложениях2.
- Типы дефектов6.
- Требования к тестировщику6.
- Уровни и циклы тестирования. Задачи тестирования. Уровни тестирования (от Unit testing до Acceptance testing). Общий и частный циклы тестирования и их задачи3.
- Участники тестирования, их роль, квалификация и обязанности1.
- Функциональное тестирование. Комбинаторные методы. Тестирование на основе сценариев. Тестирование, нацеленное на снижение рисков. Тестирование на основе моделей и спецификаций. Методы сокращения количества тестов. Инструментальные средства поддержки2.
- Цели и задачи стандартизации. Особенности стандартизации и основные стандарты в области программного обеспечения5.
- Цели и задачи тестирования программного обеспечения4.
- Цели и принципы тестирования (ISTQB)1.
- Электронная документация. Применение языка UML для документирования программной продукции5.
- Язык XPath. Основные конструкции, оси. Обязательно использование примера(ов)1.
- Язык XPath. Основные конструкции, системные функции, работа с множествами элементов1.
- Язык XPath. Системные функции. Обязательно использование примера(ов)1.
- Язык XPath. Строковые, логические и числовые функции. Обязательно использование примера(ов)1.
- Язык XPath. Функции с множествами. Обязательно использование примера(ов)1.
- Apache Jmeter — архитектура, поддерживаемые протоколы, особенности конфигурации1.
- Apache JMeter. Архитектура. Элементы тестового плана. Последовательность выполнения. Обязательно использование примера(ов)1.
- Apache Jmeter. Дополнительные возможности. Распределенное тестирование. Обязательно использование примера(ов)1.
- Bug-tracking systems. Жизненный цикл Bug Report в BTS3.
- SQL инъекции3.
- Test Case. Атрибуты и правила составления Test Case3.
- V-модель разработки и тестирования программного обеспечения. Уровни тестирования3.
Примеры домашних заданий, вопросов к защите лабораторных работ и практических занятий:
- Вопрос: “Два тестовых примера принадлежат одному классу эквивалентности если: "Варианты ответов (возможен выбор нескольких вариантов): а) получен один и тот же результат; б) получена одинаковая реакция системы; в) они построены по одному тест-требованию; г) от них ожидается получить одинаковую реакцию системы"2.
- Дана динамическая база всех жителей города Москва с номерами телефонов, в которую можно добавлять элементы и удалять их. Каждый элемент состоит из трех полей текстового типа и одного поля числового типа, содержащего не более 10 цифр. Для этой базы данных реализована функциональность поиска номера телефона по имени (может быть любая часть Имени, Фамилии или Отчества). Необходимо составить по одному тесту каждого вида тестирования для данной программы3.
- Даны требования к программе калькулятор (материалы выдаются отдельно). Необходимо протестировать требования по критериям: Правильность, Однозначность, Полнота, Непротиворечивость, Проверяемость, Прослеживаемость, Понятность3.
- Для предыдущей программы, по таблице сущностей составить таблицу оптимальных проверок используя методы минимальных проверок, значений по умолчанию, метод на основе рисков. Написать Test Case на одну из проверок3.
- Есть программа, которая определяет, является ли введенная с клавиатуры строка палиндромом. Составить тестовый набор для тестирования данной программы3.
- Используя Selenium IDE написать автоматические тесты для проверки следующего сценария: Ввести в поле поисковика “selenium”, проверить есть ли среди выданных результатов ссылка из википедии на статью, если есть, пройти по этой ссылке на страницу википедии. Ввести в поле поиска “Selenium”, проверить выдались ли какие-нибудь результаты, если выдались то посмотреть есть ли среди них Selenium IDE. Сделать тест универсальным при помощи переменной3.
- Измерьте покрытие кода тестами2.
- Проинспектируйте код2.
- Нарисовать блок-схему программы решения квадратного уравнения и протестировать ее, применяя технику ориентированную на код по методам покрытия операторов, покрытия решений и покрытия условий3.
- "Определить классы эквивалентности параметров и граничные значения для проведения тестирования следующей программы. На вход программа принимает два параметра: х — число, n — степень. Результат вычисления выводится на консоль. Значения числа и степени должны быть целыми. Значения числа, возводимого в степень, должны лежать в диапазоне — [0..999]. Значения степени должны лежать в диапазоне — [1.. 100]. Если целые числа, подаваемые на вход, лежат за пределами указанных диапазонов, то должно выдаваться сообщение об ошибке: Error: x must be in [0..999], Error: n must be in [1..100]. Если хотя бы одно из чисел подаваемых на вход не является целым числом, то должно выдаваться сообщение об ошибке: Error: Please enter a integer argument"3.
- Отличия JUnit 3 от JUnit 4.
- Применяя технику тестирования, основанную на предположении о дефектах, и знаниях элементарных алгоритмов, составить тестовые наборы для тестирования программы сортировки массива методом “пузырька” и поиска элемента в массиве методом двоичного поиска2.
- Проведите модульное тестирование2.
- Проведите ручное тестирование2.
- Проверьте требования2.
- Провести тестирование производительности видео редактора. Требование: Конвертация видео файла .avi формата размером 146МБ в формат DVD video NTSC происходит не более чем 6 минут в 90% случаев. Провести нагрузочное, стресс тестирование, тестирование стабильности и емкости3.
- Протестируйте защищенность2.
- Протестируйте пользовательский интерфейс2.
- Протестируйте удобство использования2.
- Серия отчетов в письменной форме о самостоятельных работах с использованием различных видов тестирования, рассматриваемых в курсе. Объектом тестирования может выступать как программный модуль, так и целое приложение. Для программного модуля провести тестирование API интерфейсов, для целого приложения провести функциональное тестирование. В ходе выполнения тестирования составить тестовый план, набор тестовых примеров и отчет о тестировании2.
- Система Selenium. Команды wait. Обязательно использование примера(ов)1.
- Система Selenium. Assertion & Verification. Команды. Обязательно использование примера(ов)1.
- Система Selenium. Selenium RC, WebDriver, Grid. Обязательно использование примера(ов)1.
- Создайте автоматизированный тест2.
- Составить набор тестов для проведения конфигурационного тестирования испольуя метод ортогональных матриц и программу AllPairs. Программа должна работать под WIN XP, WIN 7 и WIN VISTA, SQL 2003 и 2005, с java машиной и без нее3.
- Составить таблицу сущностей для следующей программы. Есть функциональность “Save as”для файла некоторого формата, пользователь должен ввести название файла в который будет сохранена информация . Даны следущие требования: Если пользователь вводит имя файла которое содержит символы, не являющимися буквами латинского алфавита или цифрами, система выводит сообщение об ошибке. Если длина имени файла превышает 11 символов, система выдает сообщение об ошибке. Система не различает регистр символов имени при сохранении в файл. При попытке сохранить файл с уже существующим названием система выдает сообщение “Перезаписать? Да/Нет”3.
- Составьте тестовый план2.
- Составьте тестовый пример2.
- Тестирование специальной программы “EducationStatisticAnalyser” с искусственно введенными дефектами, составление Bug Reports3.
- Задача: Разработайте набор тестов для функции вычисления наибольшего общего делителя двух положительных целых чисел: int NOD(int a, int b)2.
Основная и дополнительная литература:
- ГОСТ 19.101-77. Единая система программной документации. Виды программ и программных документов
- ГОСТ 19.106-78. Единая система программной документации. Требования к программным документам.
- ГОСТ 19.201-78. Единая система программной документации. Техническое задание
- ГОСТ 19.202-78. Единая система программной документации. Спецификация
- ГОСТ 19.301-79. Единая система программной документации. Программа и методика испытаний.
- "Надежность программного обеспечения", Г. Майерс. М : Мир, 1980. 360 с.
- "Надежность программного обеспечения", Т. Тейер, М. Липов, Э. Нельсон. М.: Мир, 1981. 323 с.
- "Искусство тестирования программ", Г. Майерс. М.: Финансы и статистика, 1982.
- "Тестирование программ", В. В. Липаев. М., Радио и связь, 1986.
- . ГОСТ 28195-89. Оценка качества программных средств. Общие положения.
- "Характеристики качества программного обеспечения", Б. Боэм, Дж. Браун, Х. Каспар и др. М.: Мир, 1991.
- ГОСТ Р ИСО/МЭК 9126-93. Информационная технология. Оценка программной продукции. Характеристики качества и руководства по их применению.
- ГОСТ Р ИСО/МЭК 12119-2000. Информационная технология. Пакеты программ. Требования к качеству и тестирование.
- "Мифический человеко-месяц или как создаются программные системы", Ф. Брукс. СПб.: Символ-Плюс, 2000. 304 с
- "Тестирование программного обеспечения. Фундаментальные концепции менеджмента бизнес-приложений", Канер С., Фолк Д., Нгуен. Е. - Москва: ДиаСофт, 2001. - 544 с.
- "Современные методы описания требований к системам",А. Коберн. М.: Лори, 2002.
- "Принципы работы с требованиями к программному обеспечению. Унифицированный подход", Д. Леффингуэлл, Д. Уидриг. М.: Вильямс, 2002.
- "Качество программных средств. Методические рекомендации", В.В. Липаев. М.: Янус-К, 2002. 400 с.
- "Тестирование объектно-ориентированного программного обеспечения", Д. Макгрегор, Д. Сайкс, Киев, ДиаСофт, 2002.
- "Автоматизированное тестирование программного обеспечения", Дастин Э., Рэшка Д., Пол Д. Лори, 2003. - 592 с.
- "Экстремальное программирование: разработка через тестирование", Кент Бек. СПб: Питер, 2003 г. - 224 с.
- "Наука отладки", Мэтт Тэллес, Юань Хсих. Пер. с англ. С. Лунин, науч. ред. С. Брудков. Кудиц-образ, 2003 г. - 560 с.
- "Методы обеспечения качества крупномасштабных программных средств",В. В. Липаев. М., Синтег, 2003.
- "Управление программными проектами: достижение качества при минимуме затрат", Р.Т. Фатрелл, Д.Ф. Шафер, Л.И. Шафер. М.: Издательский дом «Вильямс», 2003. 1136 с
- "Тестирование черного ящика. Технологии функционального тестирования программного обеспечения систем", Бейзер Б. СПб: Питер, 2004. - 318 с.
- "Основы программной инженерии" на базе IEEE Guide to SWEBOK® 2004, С.Орлик.
- "Автоматизация процессов тестирования: производственно-практическое издание", Винниченко И. В. - СПб. : Питер, 2005. - 202 с.
- "Гибкие технологии: экстремальное программирование и унифицированный процесс разработки", Амблер С. - СПб.: Питер, 2005. - 411 с.
- "Основы тестирования программного обеспечения: Учебное пособие", В. П. Котляров, Т. В. Коликова. Интернет-Университет Инф. Технологий, Москва, Бином, 2006 г. - 285 с.
- "Формализация требований на практике", В.В.Кулямин, Н.В.Пакулин, О.Л.Петренко, А.А.Сортов, А.В.Хорошилов. Препринт Института системного программирования РАН, №13, 2006.
- "Головоломки на PHP для Хакера", М.В. Кузнецов, И.В. Симдянов. Спб: БХВ-Петербург, 2006.
- "Тестирование Дот Ком, или Пособие по жестокому обращению с багами в интернет-стартапах", Р.Савин. Москва: Дело, 2007.
- "Основы инженерии качества программных систем", Ф.И. Андон, Г.И. Коваль, Т.М. Коротун, Е.М. Лаврищев, В.Ю. Суслов. Академпериодика, 2007. - 672 с.
- "Верификация программного обеспечения", С.В. Синицын, Н.Ю. Налютин. "Бином. Лаборатория знаний, Интернет-университет информационных технологий", 2008.
- "Шаблоны тестирования xUnit", Д. Месарош. М.: Вильямс, 2008.
- "Управление качеством: Учебник для вузов". Басовский Л.Е., Протасьев В.Б. - М.: Инфра-М, 2008. - 211 с.
- "Стандартизация и разработка программных систем", В.Н. Гусятников, А.И. Безруков. М.: Финансы и статистика; ИНФРА-М, 2010. 288 с
- "Сертификация программных средств", учебник, В.В. Липаев. М.: СИНТЕГ, 2010. 344 с.
- "Тестирование компонентов и комплексов программ", Липаев В.В. - М.: Синтег, 2010. - 399 с.
- "Ключевые процессы тестирования. Планирование, подготовка, проведение, совершенствование", Рекс Блэк. - Москва: Лори, 2011. - с.
- "Краткие основы тестирования программного обеспечения", А.Н. Коробейник. - Киев: Директ-лайн, 2012. - 126 с.
- "Управление качеством программного обеспечения", Б.В. Черников. - Москва: Инфра-М, 2012.
- "Управление качеством: учебник для вузов" Михеева Е.Н. - М.: Дашков и К°, 2012. - 532 с.
- "Как тестируют в Google", Джеймс Уиттакер, Джейсон Арбон, 2014. 320 с.
Программы дисциплин:
- Программа дисциплины "Тестирование программного обеспечения". Санкт-Петербургский национальный исследовательский университет информационных технологий, механики и оптики.
- Программа дисциплины "Обеспечение качества и тестирование" для направления 231000.62 – "Программная инженерия" подготовки бакалавра. Федеральное государственное автономное образовательное учреждение высшего профессионального образования "Национальный исследовательский университет Высшая школа экономики", факультет Компьютерных наук Департамента Программной инженерии. Ганичев А.А., Москва, 2014.
- Программа дисциплины "Обеспечение качества и тестирование" для направления 231000.62 – Программная инженерия подготовки бакалавра. Нижегородский филиал Федерального государственного автономного образовательного учреждения высшего профессионального образования "Национальный исследовательский университет" Высшая школа экономики "Факультет бизнес-информатики и прикладной математики". Нижний Новгород, 2014 г.
- Программа дисциплины "Обеспечение качества и тестирование". Федеральное государственное автономное образовательное учреждение высшего профессионального образования "Национальный исследовательский университет "Высшая школа экономики", Факультет компьютерных наук, Департамент программной инженерии, Кулямин В.В, к.ф.-м.н., 2015.
- Рабочая программа дисциплины "Стандарты качества программного обеспечения", "Уральский федеральный университет имени первого президента России Б.Н. Ельцина" Институт радиоэлектроники и информационных технологий. Старший преподаватель Зимовец Артем Анатольевич. 2012 год.
- Вопросы по курсу Сафронова С. "Тестирование ПО", МГУ имени М.В. Ломоносова, 2014
14.08.2016