Как изучать QA / Тестировщик
Можно ли выучить QA самостоятельно? Методы/Советы/Материал/План обучения
Термины/Словарь QA/ Обеспечение качества (Quality Assurance, QA)
Поиск: ctrl+F
доп информация: сборник 500 терминов (используемых в тестировании программного обеспечения от Glossary Working Party)
Table of contents [Show]
Обеспечение качества (Quality Assurance - QA) - это совокупность мероприятий, охватывающих все технологические этапы разработки, выпуска и эксплуатации программного обеспечения (ПО) информационных систем, предпринимаемых на разных стадиях жизненного цикла ПО, для обеспечения требуемого уровня качества выпускаемого продукта.
Контроль качества (Quality Control - QC) - это совокупность действий, проводимых над продуктом в процессе разработки, для получения информации о его актуальном состоянии в разрезах: "готовность продукта к выпуску", "соответствие зафиксированным требованиям", "соответствие заявленному уровню качества продукта".
Верификация (verification) - Соответствие продукта требованиям спецификации - это процесс оценки системы или её компонентов с целью определения удовлетворяют ли результаты текущего этапа разработки условиям, сформированным в начале этого этапа. Т.е. выполняются ли наши цели, сроки, задачи по разработке проекта, определенные в начале текущей фазы.
Валидация (validation) - Соответствие продукта потребностям пользователей- это определение соответствия разрабатываемого ПО ожиданиям и потребностям пользователя, требованиям к системе.
План Тестирования (Test Plan) - это документ, описывающий весь объем работ по тестированию, начиная с описания объекта, стратегии, расписания, критериев начала и окончания тестирования, до необходимого в процессе работы оборудования, специальных знаний, а также оценки рисков с вариантами их разрешения.
Тест дизайн (Test Design) - это этап процесса тестирования ПО, на котором проектируются и создаются тестовые случаи (тест кейсы), в соответствии с определёнными ранее критериями качества и целями тестирования.
Тестовый случай (Test Case) - это артефакт, описывающий совокупность шагов, конкретных условий и параметров, необходимых для проверки реализации тестируемой функции или её части.
Тестовое Покрытие (Test Coverage) - это одна из метрик оценки качества тестирования, представляющая собой плотность покрытия тестами требований либо исполняемого кода.
SQL - проще говоря — это язык программирования, с помощью которого мы обращаемся к базе данных.
Билд (build в ИТ) – объединение отдельных модулей программы в одну работающую систему.
Джира (JIRA) – система отслеживания ошибок, предназначенная для общения с пользователями и управления проектами.
Бекенд (back-end) – программная часть, которую не видят пользователи сайта, связана с написанием серверных скриптов.
Фронтенд (front-end) – интерфейс взаимодействия между пользователем и бэкендом.
XML – стандарт построения языков разметки иерархически структурированных данных для обмена между разными приложениями, в частности, через Интернет.
Чек-лист (Check list) — документ, в котором определен перечень того, что должно быть протестированным.
Спецификация (specification) — детальное описание того, как должно работать ПО.
UI (User Interface) — инструмент, помогающий наладить взаимодействие «пользователь-приложение».
UX (user experience) — ощущения, возникающие у пользователя при взаимодействии с продуктом.
Баг или дефект репорт - это документ, описывающий ситуацию или последовательность действий приведшую к некорректной работе объекта тестирования, с указанием причин и ожидаемого результата.
Серьезность (Severity) - это атрибут, характеризующий влияние дефекта на работоспособность приложения.
Приоритет (Priority) - это атрибут, указывающий на очередность выполнения задачи или устранения дефекта. Можно сказать, что это инструмент менеджера по планированию работ. Чем выше приоритет, тем быстрее нужно исправить дефект.
Статическое (Static testing) — тип тестирования, который предполагает, что программный код во время тестирования не будет выполняться.
Динамическое (Dynamic testing) — тип тестирования, который предусматривает запуск программного кода.
Положительное тестирования (Positive testing) — процесс тестирования программного обеспечения на то, как оно должно работать.
Негативное тестирование (Negative testing) — процесс тестирования программного обеспечения на то, как оно не должно работать.
Интеграционное тестирование — тестирование взаимодействия нескольких элементов системы.
Системное тестирование — тестирование всего приложения от начала до конца.
Модульное тестирование — тестирование определенных компонентов системы.
Black box (черный) — тестировщик не знает, как устроена тестируемая система.
White box (белый) — тестировщик знает все детали тестируемой системы. Тестирование, основанное на анализе внутренней структуры компонента или системы.
Grey box (серый) — тестировщик знает только о некоторых особенностях тестируемой системы. Сочетает в себе тестирование методом черного и белого ящика.
Клиент — та программа, с которой работает пользователь.
Сервер — компьютер, на котором хранится само приложение. Весь код, вся логика, все дополнительные материалы и справочники.
БД (база данных) — хранилище данных. Тут вы можете легко поискать информацию + уверены в том, что она сохранится, даже если в приложении что-то сломается.
GET
Предназначенный для получения информации с сервера.
HEAD
Метод похож на облегченный метод GET, так как он также запрашивает информацию с ресурса, но в ответ от сервера не приходит тело ответа, хотя заголовки ответа возвращаются. Пригодится, чтобы проверить, что ресурс доступен.
POST
Используется для отправки информации на ресурс. Запрос приводит к изменениям на сервере, многократное применение запроса POST может привести к дублировании записей в БД. Содержит тело, которое может быть в виде xml / html / json или в простом текстовом формате.
PUT
Предназначен для изменения данных на ресурсе, отправка запроса с методом PUT полностью обновить запись на ресурсе.
PATCH
Благодаря отправке запроса с методом PATCH можно частично изменять указанный ресурс. У запроса обязательно должно быть тело, где передаются параметры для корректировки данных на стороне сервера
DELETE
Метод позволяет отправить запрос на удаление указанной сущности. У запроса может быть тело, но оно необязательно. В нем можно указать параметры для поиска записи в базе данных и ее последующего удаления.
OPTIONS
Данный HTTP-метод позволяет получить сведения о деталях соединения с ресурсом. Благодаря данному методу можно узнать какие другие методы допустимы при обращении к ресурсу (передается в ответе в хэдере Allow). Если в стартовой строке вместо URI передается звездочка (*), то запрос направлен ко всему серверу, а не к конкретному ресурсу.
CONNECT
Метод дает возможность установить связь с ресурсом, организовывает своеобразный “туннель”. Может использоваться для установления соединения с ресурсами, которые применяют шифрование соединения по SSL. Клиент отправляет запрос прокси-сервер, который устанавливает зашифрованное соединение с сервером, устанавливая канал, по которому клиент и сервер могут безопасно обмениться сообщениями.
У запроса CONNECT нет тела, данный метод не является ни идемпотентным, ни кэшируемым.
TRACE
Позволяет следить за тем, что происходит с запросом на пути к целевому ресурсу, как изменяется запрос промежуточными серверами, например, прокси-серверами. Метод предназначен прежде всего для целей диагностики. Если метод доступен для ресурса, то в ответ на запрос TRACE сервер “отразит” в ответ сам запрос в изначальном виде, который был получен.
Автоматизированное тестирование (Automated testing) — процесс тестирования программного обеспечения, используя специальные программы.
Альфа-тестирование (Alpha testing) — имитация реальной работы с системой разработчиками, или же реальная работа потенциальных пользователей на ранней стадии разработки продукта.
Анекспектед бехевиер (Unexpected behavior) – неожиданное поведение.
Апдейт (Update) – обновление.
Аутпут (Output) – исходные данные, результат.
Аутсорсинг (Outsourcing) – полная или частичная передача задач, процессов для выполнения посторонним лицам – юридическим или физическими.
Багзилла (bugzilla) – система отслеживания ошибок и ведения задач.
Багтрекер (bug tracker) – система отслеживания ошибок; компьютерная программа, помогающая команде разработчиков и тестировщиков отслеживать и контролировать ошибки и пожелания пользователей, а также следить за устранением ошибок и исполнением пожеланий.
Баундри вельюс (boundary values) – предельные значения.
Бек лог (backlog) – документ, в котором по уровню важности собран перечень требований к функциональности, которые должны быть реализованы.
Бета-тестирование (Beta testing) — интенсивное использование почти готовой версии продукта с целью выявить и исправить как можно больше дефектов перед окончательным выпуском для пользователей.
Гайдлайн (guideline) – инструкция. В ИТ-сфере – руководство от одних разработчиков для других для правильной трактовки определенной работы.
Генерить (generate) – создавать, предлагать.
Голд плейтинг (gold plating) – лишен пользы.
Дебагинг (debugging) — процесс, во время которого находят и исправляют ошибки.
Девелопер (developer) – специалист, занимающийся разработкой программного обеспечения.
Деплоймент (deployment) – процесс развертывания программного продукта в готовности к использованию. Задеплоить – перенос программы в следующую среду, например в тестовую систему или на другой сервер.
Десктоп (desktop) – персональный компьютер.
Дефект репорта (defect report) – отчет об ошибке.
Домен – набор символов, которые определяют сайт в поисковой сети и идентифицируют для пользователей.
Дропдаун (dropdown) – выпадающий список.
Дымное тестирования (Smoke test) — проверка выполнения функций продуктом после сборки нового или исправленного текущего кода.
Эквивалентное разделение (equivalence partitioning) — техника, при которой функционал разделяется на группы значений, эквивалентных по воздействию на систему.
Жизненный цикл программного обеспечения — это условная схема, включающая в себя отдельные этапы, которые являются стадиями развития процесса создания ПО.
Сбой (failure) — несоответствие фактического результата работы системы или компонента тому результату, который ожидали.
Инсталляционное тестирование (Installation Testing) — процесс тестирования стадии установки.
Интродакшн (introduction) – знакомство с продуктом, командой и т.п.; представление кого-то, чего-нибудь.
Итеративная модель (iterative model) — предполагает разбиение проекта на части (этапы, итерации) и прохождение этапов жизненного цикла на каждом из них. Каждый этап является законченным сам по себе, совокупность этапов формирует конечный результат.
Кликабельность (clickable) – возможность щелкнуть курсором мышки и перейти на ту или иную страницу.
Кодинг, кодирование – процесс написания кода.
Коммон сенс (common sense) – здравый смысл.
Конфигурационное тестирование (Configuration Testing) — проверка работы программного обеспечения при различных конфигурациях системы.
Кэш (cache) – временное хранилище для часто используемых файлов.
Лог (log) – файл со служебной и системной информацией о событиях в системе.
Манки джоб (monkey job, обезьянья работа) – простая, повторяющаяся или рутинная работа, не требующая больших затрат.
Мануальный (manual) – ручной.
Матрица соответствия требованиям (Traceability matrix) — двухмерная таблица, где определено соответствие функциональных требований и подготовленных тестовых сценариев.
Нагрузочное тестирование (Load testing) — определение работоспособности, стабильности, потребления ресурсов и других атрибутов качества приложения в условиях различных сценариев использования и нагрузок.
Натянуть ПО – использование готового программного обеспечения.
Нефункциональное тестирование (Non-functional testing) — тестирование свойств, которые не отвечают функциональности системы.
Оверлокинг (Overclocking) — увеличение частоты компонента компьютера с целью увеличения скорости его работы.
Операционное тестирования (Release Testing) — процесс проверки системы на удовлетворение всех потребностей пользователя и соответствия бизнес-требованиям.
Ошибка (error) — действие, после которого возникает неправильный результат.
Пофиксить (to fix) – исправить ошибку.
Предсказание ошибки (Error Guessing) — возможность тестировщика, благодаря своим знаниям и пониманию системы, предсказать, при каких условиях система может выдать ошибку.
Повторное тестирование (retesting) — тестирование, которое проводиться, чтобы убедиться в решении ранее найденных ошибок.
Пост-релиз (Post-release to manufacturing) — издание продукта с несколькими отличиями от RTM; является самой первой стадией разработки нового продукта.
Пре-альфа (Pre-alpha) — самая первая стадия разработки — от самого начала до стадии альфа.
Приемное тестирование (acceptance testing) — тестирование, направленное на проверку продукта с точки зрения конечного пользователя.
Причина/следствие (Cause/Effect) — введение определенных комбинаций для получения определенного результата.
Продакт стайл гайд (product style guide) – документ, в котором указано правильное использование графических и функциональных элементов платформы для разработки программного обеспечения под эту платформу.
Продакшн (production) – выпуск готового продукта.
Профит (profit) – польза, доход.
Регрессионное тестирование (regression testing) — проверка на наличие ошибок после выполнения определенных действий или внесения изменений в систему.
Релиз (Release to manufacturing) — выпуск продукта.
Релиз-кандидат (Release candidate) — предварительный релиз, который имеет потенциал стать окончательным, если не будут выявлены значительные нарушения.
Репозиторий (repository) – хранилище; специальный сервер, на котором хранится доступное для загрузки ПО.
Ручное тестирование (manual testing) — процесс ручной проверки программного обеспечения на наличие ошибок.
Санитарное тестирование (Sanity testing) — тестирование определенной функции с целью проверки, соответствует ли ее работа заявленным требованиям.
Система отслеживания ошибок (bug tracking system) — система контроля багов.
Скрам (scrum) – подход управления проектами для гибкой разработки программного обеспечения.
Скрипт (script) – сценарий; программа, содержащая последовательность действий, предназначенных для автоматического выполнения определенной задачи.
Скриншот (screen shot) – копия изображения экрана, хранящаяся и распространяемая в графическом формате.
Сравнительное тестирование (Back-To-Back Testing) — анализ плюсов и минусов продукта в сравнении с его ближайшими конкурентами.
Стадии разработки ПО — определенные этапы, которые проходит команда разработчиков от старта до того, как продукт станет доступен широкой аудитории.
Стейт транзишн тейбл (state transition table) – таблица переходов системы из одного состояния в другое.
Стрессовое тестирование — проверка работоспособности продукта во время и после работы с гораздо большей нагрузкой, чем было запланировано.
Тестирование взаимодействия (Interoperability Testing) — функциональное тестирование, цель которого проверить, как может приложение взаимодействовать с одними или несколькими элементами/системами.
Тестирование восстановления (recovery testing) — проверка способности продукта восстанавливать свои функции после незапланированной ситуации.
Тестирование доступности (Accessibility Testing) — используется для выявления возможности использования системы и удобства для людей с ограниченными возможностями.
Тестирование сборки (Build Verification Test) — предварительная проверка разрабатываемого программного продукта перед запуском полномасштабного тестирования по всем параметрам, проведенного QA-командой.
Тестирование интернационализации/локализации — проверка готовности продукта к использованию его на разных языках, учитывая национальные и культурные особенности.
Тестирование пользовательского интерфейса (UI Testing) — тестирование, основная цель которого выявить, удобный ли определенный элемент для использования.
Тестирование масштабирования (Scalability Test) — изучение возможности увеличивать показатели производительности по мере увеличения количества доступных приложением ресурсов.
Тестирование сборки (Build Verification Test) — тестирование, цель которого выявить, соответствуют ли требования выпущенной версии критериям качества для начала тестирования.
Тестирование совместимости (Compatibility testing) — проверка возможности продукта работать в заданных условиях.
Фрилансер (freelancer) – специалист, который сам ищет проекты, компании для работы, часто работает в удаленном формате.
Функциональное тестирование (Functional Testing) — процесс проверки с целью определения функциональных возможностей приложения.
Эджайл (agile) – метод управления проектами, направленный на предоставление конечного результата на каждом этапе работы с возможным изменением конечного результата.
ISTQB (International Software Testing Qualification Board) – Международная коллегия тестирования программного обеспечения.
Software architecture document – документ, описывающий архитектуру программы, подходы и технологии, которые будут использоваться для ее разработки.
💻💻💻🖥
Можно ли выучить QA самостоятельно? Методы/Советы/Материал/План обучения