База знаний

Словарь тестировщика

Когда Вы начинаете работать в ИТ-сфере, часто сталкиваетесь с ситуацией непонимания некоторых слов и терминов. Чтобы облегчить ваш «вход» в ИТ, сделать его более понятным и комфортным, тренинг-центр QALight подготовил базовый перечень терминов, которые чаще всего используют тестировщики.

 

ОБЩИЕ ТЕРМИНЫ

Автоматизированное тестирование (Automated testing) — процесс тестирования программного обеспечения, используя специальные программы.

Альфа-тестирование (Alpha testing) — имитация реальной работы с системой разработчиками, или же реальная работа потенциальных пользователей на ранней стадии разработки продукта.

Анализ предельных значений (Boundary Value Analysis) — техника проверки поведения продукта на предельных значениях (поля, записи, файлы и т.п.).

Андерлокинг — снижение частоты работы оборудования.

Баг (bug) — дефект; несоответствие фактического результата выполнения программы ожидаемому результату.

Баг-репорт (bug report) — технический документ, содержащий в себе полное описание бага, включающий информацию, как о самом баге (краткое описание, серьезность, приоритет), так и об условиях возникновения этого бага.

Бета-тестирование (Beta testing) — интенсивное использование почти готовой версии продукта с целью выявить и исправить как можно больше дефектов перед окончательным выпуском для пользователей.

Валидация (validation) — это процесс оценки конечного продукта, необходимо проверить, соответствует ли программное обеспечение ожиданиям и требованиям клиента. Это динамичный механизм проверки и тестирования фактического продукта.

Верификация (verification) — это статическая практика проверки документов, дизайна, архитектуры, кода и тому подобное.

Дебагинг (debugging) — процесс, во время которого находят и исправляют ошибки.

Дымное тестирования (Smoke test) — проверка выполнения функций продуктом после сборки нового или исправленного текущего кода.

Эквивалентное разделение (equivalence partitioning) — техника, при которой функционал разделяется на группы значений, эквивалентных по воздействию на систему.

Жизненный цикл программного обеспечения — это условная схема, включающая в себя отдельные этапы, которые являются стадиями развития процесса создания ПО.

Обеспечение качества (Quality Assurance, QA) — совокупность мероприятий, охватывающих все технологические этапы разработки, выпуска и использования ПО;

Сбой (failure) — несоответствие фактического результата работы системы или компонента тому результату, который ожидали.

Инсталляционное тестирование (Installation Testing) — процесс тестирования стадии установки.

Итеративная модель (iterative model) — предполагает разбиение проекта на части (этапы, итерации) и прохождение этапов жизненного цикла на каждом из них. Каждый этап является законченным сам по себе, совокупность этапов формирует конечный результат.

Каскадная модель (waterfall model) — последовательный метод разработки программного обеспечения, названный так из-за диаграммы, похожей на водопад.

Конфигурационное тестирование (Configuration Testing) — проверка работы программного обеспечения при различных конфигурациях системы.

Матрица соответствия требованиям (Traceability matrix) — двухмерная таблица, где определено соответствие функциональных требований и подготовленных тестовых сценариев.

Нагрузочное тестирование (Load testing) — определение работоспособности, стабильности, потребления ресурсов и других атрибутов качества приложения в условиях различных сценариев использования и нагрузок.

Нефункциональное тестирование (Non-functional testing) — тестирование свойств, которые не отвечают функциональности системы.

Оверлокинг (Overclocking) — увеличение частоты компонента компьютера с целью увеличения скорости его работы.

Операционное тестирования (Release Testing) — процесс проверки системы на удовлетворение всех потребностей пользователя и соответствия бизнес-требованиям.

Ошибка (error) — действие, после которого возникает неправильный результат.

Предсказание ошибки (Error Guessing) — возможность тестировщика, благодаря своим знаниям и пониманию системы, предсказать, при каких условиях система может выдать ошибку.

Повторное тестирование (retesting) — тестирование, которое проводиться чтобы убедиться в решении ранее найденных ошибок.

Пост-релиз (Post-release to manufacturing) — издание продукта с несколькими отличиями от RTM; является самой первой стадией разработки нового продукта.

Пре-альфа (Pre-alpha) — самая первая стадия разработки — от самого начала до стадии альфа.

Приемное тестирование (acceptance testing) — тестирование, направленное на проверку продукта с точки зрения конечного пользователя.

Причина/следствие (Cause/Effect) — введение определенных комбинаций для получения определенного результата.

Приоритет багов (Priority) — атрибут, указывающий на скорость устранения бага, очередность выполнения задачи.

  • Trivial — косметическая малозаметная проблема.
  • Minor — очевидная, незначительная проблема.
  • Major — большая проблема.
  • Critical — проблема, нарушает работу ключевых функций ПО.
  • Blocker — проблема, нарушает функционирование ПО.

Регрессионное тестирование (regression testing) — проверка на наличие ошибок после выполнения определенных действий или внесения изменений в систему.

Релиз (Release to manufacturing) — выпуск продукта.

Релиз-кандидат (Release candidate) — предварительный релиз, который имеет потенциал стать окончательным, если не будут выявлены значительные нарушения.

Ручное тестирование (manual testing) — процесс ручной проверки программного обеспечения на наличие ошибок.

Санитарное тестирование (Sanity testing) — тестирование определенной функции с целью проверки, соответствует ли ее работа заявленным требованиям.

Серьезность (Severity) — степень влияния дефекта на работоспособность системы.

Система отслеживания ошибок (bug tracking system) — система контроля багов.

Спецификация (specification) — детальное описание того, как должно работать ПО.

Спиральная модель (spiral model) — все этапы жизненного цикла при спиральной модели идут витками, на каждом из которых происходят проектирование, кодирование, дизайн, тестирование и тому подобное.

Сравнительное тестирование (Back-To-Back Testing) — анализ плюсов и минусов продукта в сравнении с его ближайшими конкурентами.

Стадии разработки ПО — определенные этапы, которые проходит команда разработчиков от старта до того, как продукт станет доступен широкой аудитории.

Стрессовое тестирование — проверка работоспособности продукта во время и после работы с гораздо большей нагрузкой, чем было запланировано.

Таблица принятия решений (Decision table) — удобный инструмент, цель которого – упорядочить бизнес-требования к продукту.

Тест-дизайн (Test design) — один из этапов тестирования, во время которого проектируются возможные тест-кейсы (случаи).

Тест-кейс (Test Case) — это тестовый артефакт, суть которого заключается в выполнении некоторого количества действий и/или условий, необходимых для проверки определенной функциональности программной системы, разрабатываемой системы.

Тест-план (Test Plan) — документ, в котором указан весь объем работ по тестированию, а также оценки рисков с вариантами их решения.

Тестирование (Testing) — процесс проверки соответствия заявленных к продукту требований и реально реализованной функциональности, происходит путем наблюдения за его работой в искусственно созданных ситуациях и на ограниченном наборе тестов, выбранных определенным образом.

Тестирование безопасности (Security testing) — проверка, насколько система готова противостоять злонамеренным попыткам получить доступ к данным.

Тестирование взаимодействия (Interoperability Testing) — функциональное тестирование, цель которого проверить, как может приложение взаимодействовать с одними или несколькими элементами/системами.

Тестирование восстановления (recovery testing) — проверка способности продукта восстанавливать свои функции после незапланированной ситуации.

Тестирование доступности (Accessibility Testing) — используется для выявления возможности использования системы и удобства для людей с ограниченными возможностями.

Тестирование сборки (Build Verification Test) — предварительная проверка разрабатываемого программного продукта перед запуском полномасштабного тестирования по всем параметрам, проведенного QA-командой.

Тестирование интернационализации/локализации — проверка готовности продукта к использованию его на разных языках, учитывая национальные и культурные особенности.

Тестирование пользовательского интерфейса (UI Testing) — тестирование, основная цель которого выявить, удобный ли определенный элемент для использования.

Тестирование масштабирования (Scalability Test) — изучение возможности увеличивать показатели производительности по мере увеличения количества доступных приложением ресурсов.

Тестирование сборки (Build Verification Test) — тестирование, цель которого выявить, соответствуют ли требования выпущенной версии критериям качества для начала тестирования.

Тестирование совместимости (Compatibility testing) — проверка возможности продукта работать в заданных условиях.

Функциональное тестирование (Functional Testing) — процесс проверки с целью определения функциональных возможностей приложения.

Чек-лист (Check list) — документ, в котором определен перечень того, что должно быть протестированным.

QC (Quality Control) — проверка соблюдения требований, предусмотренных в нормативно-технической документации.

UI (User Interface) — инструмент, помогающий наладить взаимодействие «пользователь-приложение».

UX (user experience) — ощущения, возникающие у пользователя при взаимодействии с продуктом.

V-модель (v-model) — модель, на каждом этапе которой осуществляется контроль текущего процесса для того, чтобы убедиться в возможности перехода на следующий уровень.

Z-конфликт (Z-fighting) — наложение текстур друг на друга.

 

ТИПЫ ТЕСТИРОВАНИЯ

Мобильное тестирование — тестирование мобильных приложений.

Консольное тестирования — тестирование приложений для консолей.

Веб-тестирование — тестирование браузерных приложений.

 

ТИПЫ ТЕСТИРОВАНИЯ ПО ЗАПУСКУ КОДА НА ВЫПОЛНЕНИЕ

Статическое (Static testing) — тип тестирования, который предполагает, что программный код во время тестирования не будет выполняться.

Динамическое (Dynamic testing) — тип тестирования, который предусматривает запуск программного кода.

 

ТИПЫ ТЕСТИРОВАНИЯ ПО ДОСТУПУ К КОДУ

Black box — тестировщик не знает, как устроена тестируемая система.

White box — тестировщик знает все детали тестируемой системы.

Grey box — тестировщик знает только о некоторых особенностях тестируемой системы.

 

ТИПЫ ТЕСТИРОВАНИЯ ПО ПРИНЦИПУ РАБОТЫ С ПРИЛОЖЕНИЯМИ

Положительное тестирования (Positive testing) — процесс тестирования программного обеспечения на то, как оно должно работать.

Негативное тестирование (Negative testing) — процесс тестирования программного обеспечения на то, как оно не должно работать.

 

ТИПЫ ТЕСТИРОВАНИЯ ПО УРОВНЮ ДЕТАЛИЗАЦИИ ПРИЛОЖЕНИЯ

Интеграционное тестирование — тестирование взаимодействия нескольких элементов системы.

Системное тестирование — тестирование всего приложения от начала до конца.

Модульное тестирование — тестирование определенных компонентов системы.