Тестирование программного обеспечения – это сложный и многогранный процесс, включающий в себя множество различных понятий и терминов. В первой части нашего словаря тестировщика мы рассмотрели базовые термины, такие как тест-кейсы, баги, позитивное и негативное тестирование. Если вы не знакомы с первым списком или хотите освежить память, обязательно ознакомьтесь с первой частью.
Сегодня мы продолжим погружение в мир тестирования, добавив ещё больше полезных и нужных понятий, которые каждый тестировщик должен знать. Это поможет вам не только улучшить свои знания, но и ускорит процесс адаптации к новым проектам, будь то в рамках команды или как фрилансер.
Эта часть будет посложнее , обещаю, ваш мозг немного вскипит.
Термины
- Ошибка (error) – действие человека, которое приводит к неправильному результату.
- Отказ (failure) – событие, при котором компонент или система не выполняют требуемую функцию в соответствии со спецификацией.
- Тестовый случай (test case) - набор предусловий, входных данных, действий (где применимо), ожидаемых результатов и постусловий, разработанных на основе тестовых условий.
- Тестовый сценарий (test scenario) - последовательность действий над продуктом, которые связаны единым ограниченным бизнес-процессом использования, и сообразных им проверок корректности поведения продукта в ходе этих действий.
- Позитивное тестирование (positive testing) - исследование приложения в ситуации, когда все действия выполняются строго по инструкции без каких бы то ни было ошибок, отклонений, ввода неверных данных и т.д.
- Негативное тестирование (negative testing, invalid testing) — направлено на исследование работы приложения в ситуациях, когда с ним выполняются (некорректные) операции и/или используются данные, потенциально приводящие к ошибкам (классика жанра — деление на ноль).
- Регрессионное тестирование (regression testing) - тип тестирования, связанного с изменениями, чтобы найти привнесенные или ранее не обнаруженные дефекты в не менявшихся областях программного обеспечения.
- Подтверждающее (re-testing) - тип тестирования, связанного с изменениями, которое выполняется после исправления дефекта для подтверждения того, что отказ, вызванный этим дефектом, не воспроизводится.
- План тестирования (test plan) - документация, описывающая цели тестирования, которые должны быть достигнуты, средства и график их достижения, организованная для координации тестовой деятельности.
- Тестирование белого ящика (white-box) – тестирование, основанное на анализе внутренней структуры компонента или системы.
- Тестирование черного ящика (black-box) – методика тестирования, основанная на анализе спецификации компонента или системы.
- Ручное тестирование (manual testing) - тестирование, в котором тест-кейсы выполняются человеком вручную без использования средств автоматизации.
- Чек-лист (checklist) - набор идей: идей по тестированию, идей по разработке, идей по планированию и управлению — любых идей.
- Нормализация - это процесс организации данных для снижения избыточности и улучшения целостности.
- Нормальная форма — это уровень, на котором организованы данные, чтобы минимизировать избыточность и улучшить целостность.
- Функциональное тестирование системы (functional testing) включает тесты по оценке функций, которые должна выполнять система.
- Тестирование на основе тест-кейсов (scripted testing) — формализованный подход, в котором тестирование производится на основе заранее подготовленных тест-кейсов, наборов тест-кейсов и иной документации.
- Тестирование на основе чек-листов (checklist-based testing) - техника тестирования на основе опыта, при которой тестовые сценарии разрабатываются для выполнения пунктов чек-листа.
- Ручное тестирование (manual testing) - тестирование, в котором тест-кейсы выполняются человеком вручную без использования средств автоматизации.
- Тестирование критического пути (critical pathtest) направлено на исследование функциональности, используемой типичными пользователями в типичной повседневной деятельности.
- Нагрузочное тестирование — исследование способности приложения сохранять заданные показатели качества при нагрузке в допустимых пределах и некотором превышении этих пределов (определение «запаса прочности»).
- Отчёт о дефекте (defect report, bug report) — документ, описывающий и приоритизирующий обнаруженный дефект, а также содействующий его устранению.
- Тестирование доступности (accessibility testing) — тестирование, направленное на исследование пригодности продукта к использованию людьми с ограниченными возможностями , например слабовидящие.
- Тестирование безопасности (security testing) — тестирование, направленное на проверку способности приложения противостоять злонамеренным попыткам получения доступа к данным или функциям, права на доступ к которым у злоумышленника нет.
- Тестирование совместимости (compatibility testing) — тестирование, направленное на проверку способности приложения работать в указанном окружении.
- Система контроля версий позволяет сохранять историю изменений в файлах и возвращаться к предыдущим состояниям.
- Тестирование производительности (performance testing) — исследование показателей скорости реакции приложения на внешние воздействия при различной по характеру и интенсивности нагрузке.
- Репозиторий — это хранилище данных, содержащее все файлы проекта и их историю изменений.
- Производительность команды (Velocity) - это величина, отражающая количество работы, которое Скрам-команда может выполнить за один Спринт. Скорость.
- Тестирование с использованием моков (Mock Testing) - это техника, при которой создаются поддельные объекты или компоненты, имитирующие работу реальных зависимостей системы. Моки используются для изоляции тестируемой компоненты и проверки её работы без зависимости от других частей системы.
- Scrum Team — небольшая команда людей, не более 10 человек.
- Scrum Master несет ответственность за применение Scrum в соответствии с Руководством по Scrum.
- Sprint — это контейнер для всех остальных событий. (в Scrum)
- Sprint Backlog состоит из Sprint Goal (почему), набора выбранных на Sprint элементов Product Backlog (что), а также осуществимого плана действий по поставке Increment (как). (в Scrum)
- Sprint Planning инициирует Sprint, планируя работу, которую необходимо выполнить в этом Sprint.
- Нефункциональные требования (non-functional requirements) описывают свойства системы (удобство использования, безопасность, надежность, расширяемость и т.д.), которыми она должна обладать при реализации своего поведения.
- Объёмное тестирование — исследование производительности приложения при обработке различных (как правило, больших) объёмов данных.
- Стрессовое тестирование — исследование поведения приложения при нештатных изменениях нагрузки, значительно превышающих расчётный уровень, или в ситуациях недоступности значительной части необходимых приложению ресурсов.
- Обеспечение качества (QA) - активности, направленные на обеспечение уверенности в том, что требования к качеству будут выполнены
- Нормализация - это процесс организации данных для снижения избыточности и улучшения целостности.
- Нефункциональные требования (non-functional requirements) описывают свойства системы (удобство использования, безопасность, надежность, расширяемость и т.д.), которыми она должна обладать при реализации своего поведения.
- Расширенное тестирование (extended test) направлено на исследование всей заявленной в требованиях функциональности — даже той, которая низко проранжирована по степени важности.
- Тестирование локализации (localization testing) — тестирование, направленное на проверку корректности и качества адаптации продукта к использованию на том или ином языке с учётом национальных и культурных особенностей.
- Системное тестирование означает тестирование всей системы в целом, оно выполняется после интеграционного тестирования, чтобы проверить, работает ли вся система целиком должным образом.
- Тестирование интернационализации (internationalization testing) — тестирование, направленное на проверку готовности продукта к работе с использованием различных языков и с учётом различных национальных и культурных особенностей.
- Пирамида тестов - метафора, которая означает группировку динамических тестов программного обеспечения по разным уровням.
- Модель OSI и TCP/IP представляет собой набор протоколов, которые служат для обмена информацией между компьютерами в локальной сети и интернет.
- HTTP (HyperText Transfer Protocol) — протокол прикладного уровня передачи данных, изначально — в виде гипертекстовых документов в формате HTML, в настоящее время используется для передачи произвольных данных.
- HTTP-метод - глагол или существительное, описывающее требуемое действие.
- HTTPs — это расширение для протокола HTTP, которое делает его безопасным
- **Эксплуатационное приемочное тестирование (operational acceptance testing) –**приемочное тестирование системы сотрудниками или администраторами систем, которое проводится в (имитируемой) среде эксплуатации.
- Отладка (debugging) – процесс поиска, анализа, и устранения причин отказов в компоненте или системе.
- Нормативное приемочное тестирование (regulatory acceptance testing) – проводится в соответствии с любыми нормативами, которые должны соблюдаться, например, в отношении правительственных или юридических норм, а также норм безопасности.
- Оценка затрат на тестирование (test estimation) – аппроксимация объема трудозатрат, связанная с различными аспектами тестирования.
- Распределенность означает, что каждый разработчик работает с локальной копией репозитория, которая включает всю историю проекта. (GIT)
Ну, что ребята? Вы еще тут ? Надеюсь ваша голова кипит от объема информации. Не волнуйтесь, если вам сложно, значит вы на правильном пути. Уже через месяц активной работы, все эти термины не будут казаться такими страшными.
Заключение
Тестирование программного обеспечения — это не просто выявление багов. Это целая наука, которая требует постоянного обучения и применения новых методов и подходов. На протяжении всего пути тестировщик использует множество понятий, которые помогают анализировать и улучшать качество приложений.
Если вы, хотите продолжить изучение терминов и узнать больше о том, как стать отличным тестировщиком, не забудьте подписаться на мои социальные сети. Там я делюсь полезными статьями, интересными фактами и личным опытом в сфере тестирования.
Чтобы вам было удобнее, все темины я собрала в одном файле, который можно скачать у меня в телегам канале.