Словарь терминов тестировщика: что нужно знать начинающим и опытным QA
В этой статье представлен обзор ключевых терминов и понятий, с которыми сталкиваются как начинающие так и опытные тестировщики ПО. Моя цель — создать удобный справочник для начинающих специалистов в одном месте, чтобы значительно облегчить ваш путь.
Работа тестировщика связана с использованием множества технических терминов. Понимание этих понятий необходимо для эффективного взаимодействия с командой и выполнения задач.
Независимо от уровня опыта, словарь тестировщика — отличный инструмент для улучшения профессиональной компетентности, он понадобиться вам и при освоении нового навыка и в тренировке перед очередным собеседованием.
В данной статье собраны основные термины, я распределила их от простого к сложному, чтобы вы могли постепенно разобраться в ключевых аспектах тестирования.
Термины
Веб-приложение (web application) - программное обеспечение, которое запускается в веб-браузере.
Веб-сайт (website) - коллекция веб-страниц под одним доменным именем, связанных между собой какими-либо способами.
Веб-страница (web page) - документ, который может быть отображён веб-браузерами, такими как: Firefox, Google Chrome, Microsoft Internet Explorer / Edge или Safari от Apple.
DNS ― это система, которая позволяет браузеру найти запрошенный пользователем сайт по имени домена.
IP-адрес – уникальный адрес устройства в сети.
Кэш (cache) — промежуточный буфер с быстрым доступом к нему, содержащий информацию, которая может быть запрошена с наибольшей вероятностью.
Cookies - небольшой фрагмент данных, который сервер отправляет браузеру пользователя и хранится на его компьютере.
Git — это распределенная система контроля версий, которая позволяет разработчикам отслеживать изменения в файлах и координировать работу над общими проектами.
Коммит — это запись в истории изменений репозитория, который содержит снимок всех файлов проекта на момент коммита.
Балансировщик нагрузки — это устройство, которое распределяет трафик между несколькими серверами, чтобы обеспечить оптимальную производительность системы и избежать перегрузки отдельных серверов.
База данныз (database, DB) – упорядоченный набор структурированной информации или данных, которые обычно хранятся в электронном виде в компьютерной системе.
Время ожидания заказчика (Customer Lead Time) – период, в течение которого заказчик ожидает поставки элемента (обычно с момента запроса до момента поставки).
Время производства (Lead Time, LT) – время, которое элемент проводит в процессе между точкой принятия обязательств и точкой поставки.
Варианты использования (use cases) – сценарии взаимодействия пользователя (или пользователей) с программным продуктом для достижения конкретной цели.
Бизнес-требования (business requirements) выражают цель, ради которой разрабатывается продукт (зачем вообще он нужен, какая от него ожидается польза, как заказчик с его помощью будет получать прибыль).
Дефект (defect, bug, problem, fault) — недостаток в компоненте или системе, способный привести к ситуации сбоя или отказа.
Дефект (defect) – несовершенство или недостаток рабочего продукта, проявляющееся в несоответствии требованиям или спецификациям.
Тестирование - процесс в рамках жизненного цикла разработки программного обеспечения, который оценивает качество компонента или системы, а также связанных с ними рабочих продуктов.
Дымовое тестирование (smoke test) направлено на проверку самой главной, самой важной, самой ключевой функциональности, неработоспособность которой делает бессмысленной саму идею использования приложения (или иного объекта, подвергаемого дымовому тестированию).
Альфа-тестирование – проводится на мощностях компании разработчика, но не командой самого разработчика, а потенциальными или существующими клиентами и/или операторами или независимой группой тестирования.
Бета-тестирование – проводится потенциальными или существующими клиентами и/или операторами на их собственных мощностях.
Кросс-браузерное тестирование (cross-browser testing) – совместимость с браузерами и их версиями.
Кросс-платформенное тестирование (cross-platform testing) – совместимость с разными операционными системами.
Инсталляционное тестирование (installation testing, installability testing) — тестирование, направленное на выявление дефектов, влияющих на протекание стадии инсталляции (установки) приложения.
Компонентное тестирование (component testing) - уровень тестирования отдельных аппаратных или программных компонентов системы.
Конфигурационное тестирование (configuration testing) – совместимость с аппаратной платформой, операционной системой и сетевой инфраструктурой.
Модульное тестирование (оно же unit-тестирование) используется для тестирования какого-либо одного логически выделенного и изолированного элемента системы в коде.
Интеграционное тестирование (integration testing) - уровень тестирования, который фокусируется на взаимодействии между компонентами или системами.
Исследовательское тестирование (exploratory testing) — частично формализованный подход, в рамках которого тестировщик выполняет работу с приложением по выбранному сценарию, который, в свою очередь, дорабатывается в процессе выполнения с целью более полного исследования приложения.
Конкурентное тестирование — исследование поведения приложения в ситуации, когда ему приходится обрабатывать большое количество одновременно поступающих запросов, что вызывает конкуренцию между запросами за ресурсы (базу данных, память, канал передачи данных, дисковую подсистему и т.д.).
Деструктивное тестирование (destructive testing) - одна из форм негативного тестирования с целью нарушить работоспособность приложения и обнаружить точку отказа.
Нагрузочное тестирование — исследование способности приложения сохранять заданные показатели качества при нагрузке в допустимых пределах и некотором превышении этих пределов.
Негативное тестирование (negative testing) — направлено на исследование работы приложения в ситуациях, когда с ним выполняются (некорректные) операции и/или используются данные, потенциально приводящие к ошибкам.
Валидация - подтверждение путем экспертизы того, что рабочий продукт соответствует потребностям заинтересованной стороны.
Верификация - доказанное объективными результатами исследования подтверждение того, что определенные требования были выполнены.
Веб-сервис (web service) - реализация абсолютно четких интерфейсов обмена данными между различными приложениями, которые написаны не только на разных языках, но и распределены на разных узлах сети.
API (Application Programming Interface) – это механизмы, которые позволяют двум программным компонентам взаимодействовать друг с другом, используя набор определений и протоколов.
Жизненный цикл разработки ПО (SDLC - Software Development Lifecycle) – период времени, начинающийся с момента появления концепции программного обеспечения и заканчивающийся тогда, когда дальнейшее использование программного обеспечения невозможно.
Жизненный цикл тестирования ПО (STLC - Software Testing Lifecycle) – это процесс тестирования, который включает в себя определенную последовательность шагов, чтобы гарантировать достижение целей в области качества.
Модель OSI и TCP/IP представляет собой набор протоколов, которые служат для обмена информацией между компьютерами в локальной сети и интернет.
Граничное условие (border condition, boundary condition) — значение, находящееся на границе классов эквивалентности.
Диаграмма причинно-следственных связей - графическое представление логических отношений между входными данными (причинами) и связанными с ними выходными данными (следствиями).
Контроль качества (QC) - набор действий, предназначенных для оценивания качества компонента или системы.
Скрам-доска - инструмент, помогающий визуализировать Бэклог Спринта на протяжении Спринта.
Канбан — это метод для определения, управления и совершенствования сервисов, поставляющих результаты умственного труда, такие как экспертные и креативные услуги, а также разработку физических или программных продуктов.
Канбан-системы — поточные системы, поставляющие результат и имеющие ограничение незавершенной работы (Work In Progress, WiP) с помощью использования визуальных сигналов.
Модель разработки ПО (Software Development Model, SDM) — структура, систематизирующая различные виды проектной деятельности, их взаимодействие и последовательность в процессе разработки ПО.
Матрица трассируемости (traceability matrix, RTM) - двумерная таблица, описывающая связь двух сущностей (например, требований и тестовых сценариев).
Mockup (макет) - реалистичная модель нашего приложения, которая помогает показать, как дизайн будет выглядеть на frontend.
LocalStorage — это вид веб-хранилища, который позволяет сайтам сохранять данные в браузере пользователя на неопределенный срок.
Минимально Жизнеспособный Продукт (Minimum Viable Product, MVP) - версия продукта, позволяющая команде с минимальными затратами собрать максимум информации о клиентах и обратной связи от них.
V-модель – последовательная модель жизненного цикла разработки, описывающая взаимно-однозначное соответствие между основными этапами разработки программного обеспечения от спецификации бизнес-требований до поставки и соответствующими уровнями тестирования от приемочного тестирования до тестирования компонентов.
MAC-адрес — уникальный идентификатор, присваиваемый каждой единице активного оборудования или некоторым их интерфейсам в компьютерных сетях Ethernet.
Интернет — является основой сети (the Web), технической инфраструктурой, благодаря которой и существует Всемирная Паутина.
Набор тестов (test suite) - набор тестовых сценариев или тестовых процедур, выполняемых в определенном тестовом прогоне.
Итак, сегодня мы рассмотрели с вами 55 терминов, достаточно простых для изучения и понимания. Весь словарь выстроен от простого к сложному. Продолжение словаря вы найдете во второй части "Словарь тестировщика. Часть 2"
А также ежедневные полезные советы вы найдёте в моем телеграм-канале. Подписывайтесь на канал, знакомьтесь с единомышленниками и не останавливайтесь на достигнутом!