Доступ к коду программного продукта




Виды тестирования

Классификаций есть много: по разным критериям, от разных авторов. Сегодня рассмотрим не самую обширную, довольно классическую классификацию.

Цель

Каждый программный продукт должен выполнять одну или несколько ключевых задач. От приложения с гео-картами мы ожидаем точной ориентации в пространстве, от сайта интернет-магазина ― корректного поиска товаров по заданным параметрам и т. д. Но те же программные продукты мы можем протестировать и с точки зрения дизайна.

Таким образом, анализ ПО с позиции его ключевых или вспомогательных функций определяет тип тестирования:

  • Функциональное
  • Нефункциональное

Функциональное тестирование направлено на проверку того, какие функции ПО реализованы, и того, насколько верно они реализованы.

Нефункциональное – проверка корректности работы нефункциональных требований. Оценивается, КАК программный продукт работает. Эта проверка включает в себя следующие виды:

  • Тестирование производительности – работа ПО под определённой нагрузкой.
  • Тестирование пользовательского интерфейса – удобство пользователя при взаимодействии с разными параметрами интерфейса (кнопки, цвета, выравнивание и т. д.).
  • Тестирование UX – правильность логики использования программного продукта.
  • Тестирование защищенности – определение безопасности ПО: защищено ли оно от атак хакеров, несанкционированного доступа к данным и т. д.
  • Инсталляционное тестирование – оценка вероятности возникновения проблем при установке, удалении, а также обновлении ПО.
  • Тестирование совместимости – тестирование работы программного продукта в определённом окружении.
  • Тестирование надежности – работа программы при длительной средней ожидаемой нагрузке.
  • Тестирование локализации –оценка правильности версии программного продукта (языковой и культурный аспекты).

Степень автоматизации

В зависимости от того, используют ли тестировщики дополнительные программные средства для тестирования приложений или программ, тестирование бывает:

  • Мануальное (ручное) – без использования дополнительных программных средств, т. е. «вручную».
  • Автоматизированное – с использованием программных средств (более детально в описании курса по автоматизации тестирования ПО).

Каждый из подходов имеет свои преимущества и недостатки. Ручное тестирование проще освоить, оно широко применяется на проектах всех типов, но мануальные проверки отличаются монотонностью. А вот написание тестов даёт больше возможностей для творческой реализации, но автоматизация требует базовых навыков программирования.

 

Позитивность сценария

Этот подход определяет поведение системы в привычных и экстремальных условиях.

  • Позитивная проверка – оценка ожидаемого поведения. Это тестирование проводится в первую очередь, ведь позволяет определить корректность работы программы.
  • Негативная – определение устойчивости системы в нестандартной ситуации. Например, неожиданный сценарий взаимодействия пользователя с интерфейсом.

Эти типы тестирования нередко проводятся параллельно. Ведь работая над некоторой функциональностью, тестировщику проще оценить её поведение и в стандартных, и в нестандартных условиях.

Доступ к коду программного продукта

В процессе тестирования инженер может работать с ПО, не обращаясь к его коду, а может определить правильность работы, взглянув на код. По доступу к коду программного продукта тестирование делится на:

  • Тестирование «белого ящика» – с доступом к коду.
  • Тестирование «черного ящика» – без доступа к коду продукта.
  • Тестирование «серого ящика» – на основе ограниченного знания внутренней структуры ПО. Часто говорят, что это смесь тестирования «белого ящика» и «чёрного ящика», но это в корне неверно. В данном случае тестировщик не работает с кодом программного продукта, но он знаком с внутренней структурой программы и взаимодействием между компонентами.

Уровень

Этот пункт определяет объект тестирования.

  • Модульное / юнит-тестирование – проверка корректной работы отдельных единиц ПО, модулей. Этот вид тестирования могут выполнять сами разработчики.
  • Интеграционное тестирование – проверка взаимодействия между несколькими единицами ПО.
  • Системное – проверка работы приложения целиком.
  • Приёмочное – оценка соответствия заявленным требованиям к программному продукту.

Исполнитель

От объекта тестирования движемся к его субъекту. Вы могли слышать об альфа- и бета-тестировании. А поучаствовать в одном из них можно, даже не будучи тестировщиком. Итак, по исполнителю тестирование делится на:

  • Альфа-тестирование – проверка программного продукта на поздней стадии разработки. Проводится разработчиками или тестировщиками.
  • Бета-тестирование – оценка ПО перед выходом на рынок в фокус-группе или добровольцами. Отзывы собираются, анализируются и учитываются при внесении правок.

Формальность

Этот пункт определяет подготовленность тестировщика перед началом проверки.

  • Тестирование по тестам – использование написанных заранее тест-кейсов.
  • Исследовательское тестирование – одновременная разработка тестов и их использование.
  • Свободное тестирование – проверка качества без разработки тестов и написания документации. Основывается на интуиции и опыте тестировщика.

Начинающие тестировщики редко работают на свободном уровне. А вот опытные QA-специалисты могут позволить себе проверку без дополнительной подготовки.

Важность

  • Дымовое тестирование – проверка самой важной функциональности программного продукта.
  • Тестирование критического пути – проверка функциональности, используемой типичными пользователями в повседневной деятельности.
  • Расширенное тестирование – проверка всей заявленной функциональности.

QA-область очень многообразна. Помимо отличий в технологии оценки качества, тип тестирования может отличаться индустрией или видом программного продукта.

 

Задание: Нарисовать карту знаний по видам и типам тестирования. Например, вот в таком виде:

Присылайте свои фото/скрины в л/с в пн на нашей паре(пока еще пара у меня будет с Вами удаленно, в следующий понедельник планирую выйти в очный режим).



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2021-04-06 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: