Кто такой тестировщик и как им стать с нуля

Содержание:

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

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

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

Проверка программного продукта по каждому из сценариев требует достаточно глубоких знаний. К примеру, об особенностях тестирования «чёрного ящика» в своей книге подробно рассказал Борис Бейзер. Это фундаментальная работа, с которой полезно ознакомиться каждому на старте работы в QA. Об этой и других полезных книгах мы рассказали в статье.

ClassMarker

В ClassMarker можно делать опросы с разными форматами ответов — помимо привычных вариантов, есть даже эссе. Для начала работы преподавателю нужно создать виртуальный класс и разослать пригласительные коды ученикам. ClassMarker хранит результаты всех проведенных тестов, ведя статистику успеваемости. Если у преподавателя есть собственная веб-страница, он может встраивать тестовые задания на нее.

В бесплатном варианте ClassMarker позволяет создать не более 100 тестов. 400 тестов в месяц обойдутся в $16.50, а 1000 тестов — уже $33. У сервиса есть ежегодные пакеты для тех, кто редко проводит онлайн-тестирования. Минимальное количество тестов (50 в год) будет стоить $25 в год, а максимум (5000 в год) обойдется в $1000.

Приемочное тестирование

Приемочное тестирование фокусируется на готовности всей системы в целом.

Существуют несколько форм приемочного тестирования:

Пользовательское приемочное тестирование (User Acceptance testing, UAT) — проверяет пригодность системы к эксплуатации конечными пользователями.

Контрактное приемочное тестирование — проводится в соответствии с критериями, указанными в контракте приемки специального ПО.

Альфа-тестирование (alpha testing) и бета-тестирование (beta-testing) — используются для получения обратной связи от потенциальных или существующих клиентов. 

Альфа-тестирование проводится “внутри” компании, без участия разработчиков / тестировщиков продукта. 

Бета-тестирование проводится реальными пользователями системы.

Acceptance testing A test level that focuses on determining whether to accept the system.

User acceptance testing (UAT) A type of acceptance testing performed to determine if intended users accept the system.

Contractual acceptance testing A type of acceptance testing performed to verify whether a system satisfies its contractual requirements.

Alpha testing A type of acceptance testing performed in the developer’s test environment by roles outside the development organization.

Beta testing A type of acceptance testing performed at an external site to the developer’s test environment by roles outside the development organization.

Характеристики приемочного тестирования

Цель: проверка готовности системы

Объект: система, конфигурация системы, бизнес процессы, отчеты, аналитика

Базис: системные требования, бизнес требования, сценарии использования, User Stories

Типичные ошибки: бизнес-требования неправильно реализованы, система не соответствует требованиям контракта

Ответственный: заказчик / клиент / бизнес-аналитик / product owner и тестировщик

Завершая рассмотрение примера можем написать приемочный тест, который выполнит заказчик:


Приемочное тестирование системы Contact Us

  1. Заказчик заполняет форму, нажимает на кнопку «Отправить»
  2. Через 1 секунду он видит сообщение об успешной отправке формы
  3. В течении минуты на почту поддержки приходит письмо содержащее данные отправленные с формы

Количество тестов на приемочном уровне намного меньше, чем на других уровнях, потому что в этот момент времени вся система уже проверена. Приемочные тесты практически никогда не автоматизируются.

В Agile разработке, конкретно в Scrum, для всех User Stories обязательно прописываются Acceptance Criteria. Именно они являются основой для приемочных тестов и показывают, что команда сделала именно то, что было нужно.

После завершения приемочного тестирования задача передается клиенту.

Типы тестирования

Мануальное (ручное) ― непосредственная проверка работы ПО тестировщиком.

Автоматизированное ― оценка качества программного продукта с применением программных средств (автотесты).

Тестирование производительности (performance testing) ― анализ работы приложений под различными нагрузками.

Функциональное тестирование (functional testing) ― проверка возможности ПО в заданных условиях решать необходимые пользователю задачи.

Тестирование безопасности (security testing) ― определение безопасности ПО: защищено ли оно от атак хакеров, несанкционированного доступа к данным и т. д.

UX-тестирование (usability testing, юзабилити-тестирование) ― исследование логики и удобства использования ПО.

Подробнее о различных подходах оценки качества ПО вы узнаете из нашего материала по классификации видов тестирования.

Технология составления теста

На первый взгляд может показаться, что разработать тест достаточно просто — придумал вопрос, набросал варианты ответов и готово. На практике же многие испытывают сложности с разработкой. Чтобы быстро составить эффективный тест, мы рекомендуем следующие этапы разработки теста: выбрать правильный ответ, поставить к нему вопрос, подобрать неправильные ответы (или дистракторы). Разберем это подробней.

Правильный ответ

Разработка тестов начинается с постановки правильного ответа. Правильный ответ вы формулируете на основании выбранной смысловой единицы

Смысловая единица — это то самое важное, что студент должен вынести из пройденного урока. Главное ключевое данное урока

Тесты мы всегда делаем на смысловые единицы. По-хорошему на каждую смысловую единицу нужно делать минимум по 3 теста.

Постановка вопроса

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

Дистракторы

Или раздражители. Так называют неправильные варианты ответов в тесте. Как составить дистракторы? Чтобы придумать неверные варианты ответов, попробуйте сначала сделать простое противопоставление правильному ответу. Затем можно поменять одну деталь формулировки из нескольких и сделать погранично верный ответ. И так далее. На разработку дистракторов можно привлечь самих студентов, оставив ответ незаполненным и попросив их закончить фразу.

Тестирование пользовательского интерфейса

Нужно проверить, правильно ли осуществляется связь с сервером. Следует проверить совместимость сервера с используемым программным обеспечением, аппаратными средствами, сетью и базой данных.

Основные интерфейсы:

  • Интерфейсы веб-сервера и приложения.
  • Интерфейсы сервера базы данных и сервера приложения.

Если база данных или веб-сервер для какого-либо запроса, исходящего от сервера приложения, возвращает сообщение об ошибке, сервер приложения должен фиксировать его и отображать пользователю.

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

Тестирование локализации

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

Качество программного обеспечения

Каждый день в своей работе мы сталкиваемся с достаточно абстрактным понятием «качество ПО» и если задать вопрос тестировщику или программисту «что такое качество?», то у каждого найдется своё толкование. Рассмотрим определение «качества ПО» в контексте международных стандартов:

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

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

Характеристики качества ПО

Функциональность (Functionality) — определяется способностью ПО решать задачи, которые соответствуют зафиксированным и предполагаемым потребностям пользователя, при заданных условиях использования ПО. Т.е. эта характеристика отвечает то, что ПО работает исправно и точно, функционально совместимо соответствует стандартам отрасли и защищено от несанкционированного доступа.

Надежность (Reliability) – способность ПО выполнять требуемые задачи в обозначенных условиях на протяжении заданного промежутка времени или указанное количество операций. Атрибуты данной характеристики – это завершенность и целостность всей системы, способность самостоятельно и корректно восстанавливаться после сбоев в работе, отказоустойчивость.

Удобство использования (Usability) – возможность легкого понимания, изучения, использования и привлекательности ПО для пользователя.

Эффективность (Efficiency) – способность ПО обеспечивать требуемый уровень производительности, в соответствии с выделенными ресурсами, временем и другими обозначенными условиями.

Удобство сопровождения (Maintainability) – легкость, с которой ПО может анализироваться, тестироваться, изменяться для исправления дефектов для реализации новых требований, для облегчения дальнейшего обслуживания и адаптирования к имеющемуся окружению.

Портативность (Portability) – характеризует ПО с точки зрения легкости его переноса из одного окружения (software/ hardware) в другое.

Модель качества программного обеспечения

На данный момент, наиболее распространена и используется многоуровневая модель качества программного обеспечения, представленная в наборе стандартов ISO 9126. На верхнем уровне выделено 6 основных характеристик качества ПО, каждую из которых определяют набором атрибутов, имеющих соответствующие метрики для последующей оценки.Рис.1. Модель качества программного обеспечения (ISO 9126-1)

Правила составления тестов

Когда студент проходит тестирование, он остается один на один с заданиями. Если ему что-то непонятно — спросить не у кого. Приходится отвечать наугад, а это снижает объективность результата. Ниже мы подготовили правила составления тестов, следуя которым вы сможете существенно повысить качество своих тестов.

Как составлять вопросы для теста

Ключевые мыслиВопросы нужно ставить к основным логическим заключениям, передача которых являлась целью данного обучения. Тестовые задания должны проверять какую-то существенную часть пройденной теории. Заведомо глупые и бесполезные вопросы стоит исключать.

НедвусмысленностьЧеловек после прочтения вопроса сразу должен понять, что именно от него хотят. Тестовые задания не должен содержать двусмысленности. Нужно исключать из текста неопределенные слова, которые могут трактоваться студентом субъективно.

Простой языкФормулировка вопроса должна быть четкой, ясной, простой и понятной. Использование сложных текстовых конструкций необходимо минимизировать. Не перегружайте текст вопроса ненужной информацией. Исключайте из текста обороты, не несущие в себе смысловой нагрузки. Например, фразы “Как вы думаете”, “на ваш взгляд”, “по желанию”. Не используете в формулировке непонятные термины или сокращения.

Без подсказокОдни тестовые задания не должны содержать подсказки к другим. Испытуемый не должен использовать знание, полученное им из предыдущего задания, для решения следующего.

Сократите отрицанияИзбегайте использования негативных суждений в формулировке задания. При использовании отрицания четко обозначьте его — например, выделите строчными буквами «НЕ», «НЕТ», «НАИМЕНЬШЕЕ», «КРОМЕ».

Как составлять ответы для теста

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

Внешний видПравильные и неправильные ответы должны быть однозначны по содержанию и структуре. Желательно, чтобы все ответы были краткими и одинаковыми по своей длине. Старайтесь максимум текста выносить в тело вопроса. Длинный вопрос и короткие ответы предпочтительнее, чем короткий вопрос и развернутые ответы.

В пределах знанийОтвет на вопрос должен находиться в пределах переданных уроком знаний. То есть, нужно убедиться, что в пройденном студентом уроке действительно и однозначно дается ответ на вопрос теста.

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

ОбоснованностьНельзя включать дистракторы, неправильность которых на момент тестирования не может быть обоснована учащимися. Неправильные ответы должны конструироваться на основе типичных ошибок и должны быть правдоподобными. Неправильные ответы должны быть основаны на фактах.

Случайный порядокПравильные ответы должны располагаться среди всех предлагаемых ответов в случайном порядке.

Количество ответовРекомендуемое количество вариантов ответа для теста с одиночным выбором — 4, для теста с множественным выбором 5-6.

Нет подсказокПравильный ответ не должен содержать грамматической подсказки (выделения, однокоренные слова). Все варианты ответов должны грамматически верно сочетаться с вопросом. Каждый вариант ответа должен логично продолжать изначальное предложение. То есть, если их склеить, то должно каждый раз получаться нормальное предложение без пропущенных слов.

Нет обобщенийНе используйте варианты ответов: «все вышеперечисленное верно», «все указанные ответы неверны», «ни одного». Это вводит ученика в заблуждение. Если вы хотите, чтобы студент выбрал все варианты ответа в задании, то используйте вид теста с множественным выбором (чек-бокс).

Нет одинаковых фразОтветы на вопрос не должны начинаться или заканчиваться одинаковыми словами или фразами. Если такое произошло, то нужно переформулировать вопрос так, чтобы перенести эти слова или фразы в тело самого вопроса.

Когда составлены вопросы и ответы, нужно поместить их в уроки электронного курса.

Зачем нужны онлайн-тесты

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

Во-вторых, тесты можно использовать при приёме на работу новых сотрудников. Наверняка слышали о таком.

В-третьих, если вы ведёте тренинги онлайн и даже оффлайн, то попробуйте тестировать своих учащихся. Ниже вы узнаете про сервис, подходящий для этих целей. Контроль знаний помогает понять, какие темы были усвоены плохо, и что стоит подтянуть. Согласны?

А теперь собственно о сервисах, которые помогают создавать онлайн-тесты.

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

Нагрузочное тестирование

Нагрузочное тестирование – это особый тип стресс-тестирования, как обсуждалось выше, при котором большое количество одновременных пользовательских подключений и обращений автоматизировано для создания имитации эффекта одновременного доступа большого количества подлинных пользователей к вашей программной системе. Цель состоит в том, чтобы выяснить, сколько пользователей могут получить доступ к вашей системе одновременно без нарушения работы вашей программной системы. Если ваша система может легко обрабатывать обычный трафик 10 000 пользователей, что произойдет, если ваш веб-сайт или программное обеспечение станут вирусными и привлекут 1 миллион пользователей? Сможет ли эта неожиданная «НАГРУЗКА» сломать ваш сайт или систему? Нагрузочное тестирование будет имитировать это, поэтому вы можете быть уверены в будущем увеличении числа пользователей, потому что знаете, что ваша система может выдержать возросшую нагрузку.

Тестирование ПО. Основные виды

Тестирование программного обеспечения может быть ручным (мануальным) и автоматизированным. По направлению тестирование делится на нагрузочное и инсталляционное. Также не забываем про тестирование безопасности и удобства пользователя.

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

Автоматизированное тестирование проводится с использованием программных средств. Тестировщик или программист пишет специальный код для проверки ПО.

Нагрузочное ещё называют тестированием надежности. С его помощью проверяется работоспособность ПО при длительных нагрузках на систему или базу данных.

Инсталляционное тестирование проверяет правильность процессов загрузки, установки и удаления программы.

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

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

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

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

Чтобы заниматься автоматизированным тестированием, тебе нужно изучить языки программирования и разобраться в кухне разработки ИТ-продуктов. В обоих случаях, тебе пригодятся теоретические знания. Черпай их из полезных ресурсов.

Функциональное тестирование

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

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

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

Функциональное тестирование — цель данного тестирования состоит в том, чтобы убедиться в надлежащем функционировании объекта тестирования. Тестируется правильность навигации по объекту, а также ввод, обработка и вывод данных.

Тестирование БД — проверка работоспособности БД при нормальной работе приложения, в моменты перегрузок и многопользовательском режиме. 

Unit-тестирование

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

В выходную документацию данных тестов входят тестовые процедуры, входные данные, код, исполняющий тест, выходные данные. Далее представлен вид выходной документации. 

Функциональное тестирование

Функциональное тестирование объекта тестирования планируется и проводится на основе требований к тестированию, заданных на этапе определения требований. В качестве требований выступают бизнес-правила, диаграммы use-case, бизнес-функции, а также при наличии, диаграммы активности. Цель функциональных тестов состоит в том, чтобы проверить соответствие разработанных графических компонентов установленным требованиям.

Данный вид тестирования не может быть полностью автоматизирован. Следовательно, он подразделяется на:

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

Цель: протестировать ввод, обработку и вывод данных;

Ручное тестирование (в остальных случаях).

Цель: тестируется правильность выполнения пользовательских требований.

Необходимо исполнить (проиграть) каждый из use-case, используя как верные значения, так и заведомо ошибочные, для подтверждения правильного функционирования, по следующим критериям:

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

Тестирование БД

Цель данного тестирования — убедиться в надежности методов доступа к базам данных, в их правильном исполнении, без нарушения целостности данных.

Необходимо последовательно использовать максимально возможное число обращений к базе данных. Используется подход, при котором тест составляется таким образом, чтобы «нагрузить» базу последовательностью, как верных значений, так и заведомо ошибочных. Определяется реакция БД на ввод данных, оцениваются временные интервалы их обработки.

Tags:

  • модели жизненного цикла
  • начинающему тестировщику
  • общие вопросы
  • теория тестирования

View the discussion thread.

blog comments powered by DISQUS

Модульное / Компонентное / Unit тестирование

Модульное / Компонентное / Unit тестирование фокусируется на компонентах / модулях, которые должны быть проверены в изоляции, как самостоятельные, независимые блоки.

Module / Component / Unit testing: A test level that focuses on individual hardware or software components

Характеристики модульного тестирования

Цель: проверка правильности реализации функциональных / нефункциональных требований в модуле, раннее обнаружение ошибок

Объект: модуль / компонент / unit

Базис: дизайн системы, код, спецификация компонента

Типичные ошибки: ошибка в реализации требований, ошибка в коде

Ответственный: разработчик (редко тестировщик)

На этом уровне тестирования создаются модульные тесты (unit тесты), которые проверяют правильность работы модуля в тестовых условиях. Эти проверки всегда автоматизированы и выполняются очень быстро (несколько тысяч тестов в минуту).

Unit тесты, кроме поиска ошибок, также помогают оценивать качество кода, измерять покрытие кода тестами, сокращать время и затраты на тестирование.

Продолжая рассмотрение примера со страницей сайта, мы можем выделить следующие модули:


Компоненты и под-системы системы Contact Us

  1. Страница Contact Us отвечает за показ формы Contact Us
  2. Форма Contact Us отвечает за проверку и отправку данных на Backend
  3. Contact Us Controller является частью API и отвечает за обработку запросов с формы Contact Us
  4. Email Sender отвечает за отправку Email

Для примера, рассмотрим модуль «страница Contact Us». Требования:

  1. Открываться в браузере по указанному URL
  2. Содержать правильную информацию и тексты
  3. Содержать форму Contact Us (содержать, но не отвечать за ее работоспособность!)

В свою очередь, требования к модулю «Contact Us Controller»:

  1. Принимать данные по указанному URL (API endpoint)
  2. Проверять полученные данные
  3. Правильно формировать данные для компонента Email Sender (без фактической отправки)
  4. Возвращать правильные HTTP ответы в случае успешной отправки Email И (!!!) в случае возникновения ошибки

Все описанные выше требования должны проверяться Unit тестами.

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

Автотестирование интерфейсов

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

Есть много программ для тестирования интерфейсов, которые отличаются только способом их программирования. Дело в том, что эта программа сама не знает, куда нужно нажать и что должно получиться. Весь этот алгоритм должен задать тестировщик, а для этого хорошо бы знать язык, который для этого используется.

Puppeteer — пример такой программы для автотестирования интерфейсов. Она написана на Node.js, а значит, для программирования её работы достаточно знать JavaScript. Логика такая: пишете код → отправляете её в программу → она сама открывает страницу и нажимает на кнопки → выдаёт результат и найденные баги.

Пример кода для Puppeteer:

Результат запуска теста с Puppeteer и Jest: 8 тестов интерфейса за 4 секунды

Тестирование Black-Box

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

В следующей таблице перечислены преимущества и недостатки тестирования черного ящика.

Преимущества Недостатки
Хорошо подходит и эффективен для больших сегментов кода. Ограниченное покрытие, поскольку на самом деле выполняется только выбранное количество тестовых сценариев.
Кодовый доступ не требуется. Неэффективное тестирование, из-за того, что тестер только имеет ограниченные знания о приложении.
Четкое разделение перспективы пользователя с точки зрения разработчика с помощью явно определенных ролей. Слепой охват, поскольку тестер не может ориентироваться на определенные сегменты кода или области ошибок.
Большое количество умеренно квалифицированных тестировщиков может протестировать приложение без каких-либо знаний о реализации, языке программирования или операционных системах. Тестовые примеры трудно разработать.

Сравнение методов тестирования

В следующей таблице перечислены точки, которые различают тестирование «черного ящика», «серое окно» и «белый ящик».

Тестирование Black-Box Тестирование серых коробок Тестирование белого ящика
Не нужно знать внутреннюю работу приложения. Тестер имеет ограниченное знание внутренней работы приложения. Тестер имеет полное представление о внутренней работе приложения.
Также известен как тестирование с закрытым ящиком, тестирование с использованием данных или функциональное тестирование. Также известен как прозрачное тестирование, поскольку тестер имеет ограниченное знание внутренних аспектов приложения. Также известен как прозрачное тестирование, структурное тестирование или тестирование на основе кода.
Выполняется конечными пользователями, а также тестировщиками и разработчиками. Выполняется конечными пользователями, а также тестировщиками и разработчиками. Обычно выполняются тестировщиками и разработчиками.
Тестирование основано на внешних ожиданиях. Внутреннее поведение приложения неизвестно. Тестирование выполняется на основе диаграмм базы данных высокого уровня и диаграмм потоков данных. Внутренние работы полностью известны, и тестер может соответствующим образом создавать тестовые данные.
Он является исчерпывающим и наименее трудоемким. Частично трудоемкий и исчерпывающий. Самый исчерпывающий и трудоемкий тип тестирования.
Не подходит для тестирования алгоритмов. Не подходит для тестирования алгоритмов. Подходит для тестирования алгоритмов.
Это можно сделать только методом проб и ошибок. Домены данных и внутренние границы могут быть проверены, если они известны. Домены данных и внутренние границы могут быть лучше проверены.
Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector