Методы тестирования программного обеспечения и их сравнение. Тестирование методом "черного ящика" и тестирование методом "белого ящика"

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


Тестирование (англ. test - испытание, проверка) - эксперементальный метод психродиагностики, применяемый в эмпирических социологических исследованиях, а также метод измерения и оценки различных психологических качеств и состояний индивида.

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

Основоположники тестирования - Ф.Гальтон, Ч.Спирман, Дж.Каттел, А.Бине, Т.Симон. Сам термин "умственный тест" придумал Кеттел в 1890 г. Начало развития современной тестологии массового применения тестов на практике связано с именем французского врача Бине, разработавшего в соавторстве с Симоном метрическую шкалу умственного развития, известную под названием "тест Бине-Симона".

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

Тесты предъявляют требования:

Строгая формализация всех этапов тестирования,

Стандартизация заданий и условий их выполнения,

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

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

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

1) стандартная инструкция для испытуемого о цели и правилах выполнения заданий,

2) ключ шкалирования - соотнесение пунктов заданий со шкалами измеряемых качеств, указывающее, какой пункт заданий к какой шкале относится,

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

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

Для преодоления основного недостатка большинства тестов применяются различные приемы:

1) увеличение базовой выборки с целью повышения ее репрезентативности по большему числу параметров,

2) введение поправочных коэффициетнов с учетом характеристик выборки,

3)введение в практику тестирования невербального способа предъявления материала.

Тест состоит из двух частей:

а) стимулирующего материала (задача, инструкция или вопрос)

б) указаний относительно регистрации или интнграции полученых ответов.

Типичная для тестов стандартизация ситуации обеспечивает им в отличие от "свободного" наблюдения поведения большуюю объективность результатов.

Тесты классифицируются по разным признакам.

По виду свойств личности они делятся на тесты достижений и личностные. К первым относятся тесты интеллекта, школьной успеваемости, тесты на творчество, тесты на способности, сенсорные и моторные тесты. Ко вторым - тесты на установки, на интересы, на темперамент, характерологические тесты, мотивационные тесты. Однако не все тесты (например, тесты развития, графические тесты) можно упорядочить по данному признаку. По виду инструкции и способу применения различаются индивидуальные и групповые тесты. При групповом тестировании одновременно обследуется группа испытуемых. Если в тестах уровня временных ограничений нет, то в тестах на скорость они обязательны. В зависимости от того, насколько в результате тестирования проявляется субъективность исследователя различают тесты объективные и субъективные.

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

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

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

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

Разработка теста состоит из четырех этапов.

На первомэтапе развивается исходная концепция с формулировкой основных пунктов испытания или основных вопросов, носящих предварительный характер;

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

На третьем этапе тест проверяется повторно на той же самой популяции;

На четвертом - калибруется по отношению к возрасту, уровню образования и другим признакам популяции.

На всех этапах разработки теста необходимо учитывать:

а) диагностируемое свойство личности (размер, положение, индикатор) или только наблюдаемые его пpоявления (напpимеp, способности, уpовень знаний, темпеpамент, интеpесы, установки);

б) связанную с этим валидизацию метода, т.е. опpеделение того, насколько он измеpяет тpебуемое свойство;

в) величину выбоpки из популяции, на котоpой должна пpоводиться оценка метода;

г) стимулиpующий матеpиал (таблички, изобpажения, игpушки, фильмы);

д) влияние исследователя в пpоцессе инстpуктиpования, постановки задач, pазъяснений, ответов на вопpосы;

е) условия ситуации;

ж) такие фоpмы поведения испытуеого, котоpые свидетельствуют об измеpяемом свойстве;

з) шкалиpование pелевантных фоpм поведения;

и) сведение pезультатов по отдельным измеpяемым пунктам в общие значения (напpимеp, суммиpование ответов типа "Да");

к) фоpмулиpовку pезультатов в ноpмиpованной шкале оценок.

Одним из вариантов теста может быть опросник, но при условии, что он отвечает требованиям, предъявляемым к тестам. Опросник - это сборник вопросов, которые выбираются и располагаются по отношению друг к другу в соответствии с требуемым содержанием. Опросники используются, например, в целях психодиагностики, когда от испытуемого требуется самооценка его поведения, привычек, мнений и т.д. При этом испытуемый, отвечаяя на вопросы, выражает свои положительные и отрицательные предпочтения. С помощью опросников можно измерять у испытуемых и оценки ими других людей. Задание обычно выступает, как прямая реакция на вопросы, на которые надо ответить путем сожаления или опровержения. Возможности для ответа в большинстве случаев заданы и требуют лишь отметки в виде крестика, крижочка и т.п. Недостаток опросника состоит в том, что испытуемый может симулировать или диссимулировать те или иные свойства личности. Преодолеть указанный недостаток (хотя и не полностью) исследователь может посредством контрольных вопросов, контрольных шкал, шкал "лжи". Опросники применяются преимущественно для диагностики характера, диагностики личности (например, экстроверсии - интроверсии, интересов, установок, мотивов).

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

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

Использованная литература:

1.Соц.справочник,Киев,1990.

2.Соц.словарь,Минск,1991.

3.Фонд времени и мероприятия в соц.сфере,М:Наука,1989.

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

Ad-hoc тестирование

Этот вид тестирования ПО является неформальным и неструктурированным и может выполняться любым заинтересованным лицом, без ссылок на какие-либо тестовые сценарии или тестовые документы.

Лицо, проводящее Ad-hoc-тестирование, хорошо понимает рабочие процессы приложения, при этом пытается найти дефекты и взломать ПО . Специальные проверки предназначены для обнаружения дефектов, которые не были обнаружены в существующих тестовых случаях.

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

Приемочное тестирование — это формальный вид тестирования программного обеспечения, который выполняется конечным потребителем, когда разработчики предоставили запрашиваемые услуги. Целью этого тестирования является проверка соответствия ПО бизнес-требованиям потребителей и требованиям, представленным ранее. Приемочные тестирования обычно документируются в начале работы (в agile) и помогают тестировщикам и разработчикам улучшить свои знания и умения в данной области.

Что такое приемочное тестирование в Agile?

Тестирование доступности

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

Agile тестирование

Agile Testing — это вид тестирования программного обеспечения, который учитывает гибкий подход и методы разработки программного обеспечения. В среде разработки Agile тестирование является неотъемлемой частью разработки ПО и выполняется параллельно с написанием кода. Agile тестирование позволяет проводить постепенное написание кода и его тестирование.

Тестирование API

Тестирование API — это вид тестирования, который похож на модульное тестирование. Каждый из программных интерфейсов API тестируется в соответствии со спецификацией API. Тестирование API в основном выполняется командой тестировщиков. Требует понимания как функциональности API, так и наличия хороших навыков в программировании.

Автоматизированное тестирование

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

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

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

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

Это формальный вид тестирования программного обеспечения, который выполняется конечными потребителями перед выпуском или передачей программного обеспечения пользователям. Успешное завершение бета-тестирования означает согласие пользователя с программным обеспечением.

Тестирование Черного Ящика

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

Тестирование обратной совместимости

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

Тестирование граничных значений

Тестирование граничных значений — это вид тестирования, основанный на концепции «агрегации ошибок на границах». Тестирование проводится методом тщательного тестирования дефектов в граничных значениях. Если в поле принимается значение от 1 до 100, то тестирование выполняется для значений 0, 1, 2, 99, 100 и 101.

Метод тестирования «большой взрыв»

Это один из подходов интеграционного тестирования. Метод тестирования «большой взрыв» основывается на том, что все или большинство модулей разрабатываются и затем соединяются вместе.

Интеграционное тестирование Снизу вверх (восходящее тестирование)

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

Тестирование ветвей

Является методом тестирования белого ящика для разработки тестовых сценариев для тестирования кода для каждого условия ветвления. Применяется во время модульного тестирования.

Тестирование совместимости браузера

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

Тестирование совместимости

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

Тестирование компонентов

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

Тестирование покрытия условий

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

Динамическое тестирование

Тестирование может быть выполнено методом статического тестирования и динамического тестирования. Динамическое тестирование — это подход к тестированию, когда тестирование может быть выполнено только при извлечении кода.

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

Это методика тестирования, которая используется в модульном тестировании. Цель тестирования покрытия решения состоит в том, чтобы осуществить и проверить каждый блок принятия решения в коде, например. If, if-else, case.

Сквозное тестирование

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

Исследовательское тестирование

Исследовательское тестирование — это неофициальный вид тестирования, проводимый для изучения ПО, в то же время ищущего ошибки или поведение приложения, которое кажется неочевидным. Тестирование обычно проводится тестировщиками, но может быть сделано другими заинтересованными лицами, а также бизнес-аналитиками, разработчиками, конечными пользователями и т. д., которые заинтересованы в изучении функций программного обеспечения и в то же время ищут ошибки или поведение, которое кажется неочевидным.

Эквивалентное разбиение

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

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

Функциональное тестирование — формальный тип тестирования, выполняемый тестировщиками. Функциональное тестирование сосредоточено на тестировании программного обеспечения на основе документа о состоянии, случаев и требований. Функциональное тестирование является типом тестирования «черного ящика» и не требует знаний внутренней работы программного обеспечения, в отличие от тестирования «белого ящика».

Fuzz тестирование

Fuzz testing или fuzzing — это методика тестирования программного обеспечения, которая включает тестирование с непредвиденными или случайными исходными данными. Программное обеспечение тестируется на предмет ошибок или сообщений об ошибках, которые появляются из-за ошибок при вводе данных.

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

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

Тестирование методом «стеклянного ящика»

Тестирование стеклянного ящика — еще одно название для тестирования белого ящика. Тестирование стеклянных ящиков — это метод тестирования, который включает в себя тестирование отдельных утверждений, функций и т. д. Модульное тестирование является одним из методов тестирования стеклянного ящика.

Gorilla тестирование (хаотическое тестирование)

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

Тестирование благоприятного пути

Также известный как тестирование Золотого пути, этот вид тестирования фокусируется на успешном прохождении тестов, которые не приведут к ошибкам.

Интеграционное тестирование

Интеграционное тестирование является одним из наиболее распространенных и важных видов тестирования программного обеспечения. После того, как отдельные подразделения или компоненты будут проверены разработчиками как работающие, группа тестировщиков проведет тесты, которые проведут тестирование связи между этими единицами / компонентами или несколькими устройствами / компонентами. Существуют различные подходы к интеграционному тестированию, а именно: интеграционное тестирование сверху вниз, интеграционное тестирование снизу вверх и комбинация этих двух тестов Sand witch.

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

Тестирование интерфейса необходимо, когда программное обеспечение обеспечивает поддержку одного или нескольких интерфейсов, таких как «Графический интерфейс пользователя», «Интерфейс командной строки» или «Интерфейс прикладного программирования», чтобы взаимодействовать со своими пользователями или другим программным обеспечением. Интерфейсы служат средой для ПО, чтобы принимать входные данные от пользователя и предоставлять выходные данные пользователю. Подход к тестированию интерфейса зависит от типа тестируемого интерфейса, такого как GUI или API или CLI.

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

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

Тестирование на основе ключевых слов

Тестирование на основе ключевого слова — это скорее автоматизированный подход к тестированию программного обеспечения, чем сам вид тестирования. Тестирование на основе ключевых слов известно как тестирование на основе действий или тестирование на основе таблиц.

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

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

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

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

Отрицательное тестирование

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

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

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

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

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

Тестирование производительности

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

Тестирование безопасности

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

Регрессионное тестирование

— это вид тестирования ПО, который выполняется тестировщиками ПО в качестве функциональных регрессионных тестов, а разработчики — в виде единичных регрессионных тестов. Целью регрессионных тестов является выявление дефектов, которые были введены для исправления дефектов или внедрения новых функций. Регрессионные тесты являются идеальными вариантами для автоматизации тестирования.

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

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

Тестирование на основе рисков

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

Smoke тестирование (тестирование «на дым»)

Это вид тестирования, который выполняется тестировщиками ПО для проверки, является ли новая сборка, предоставленная командой разработчиков, достаточно стабильной, т. е. работают так ли основные функции, как ожидается, для проведения дальнейшего или подробного тестирования. Smoke тестирование предназначено для обнаружения дефектов «show stopper», которые могут препятствовать тестированию приложения в деталях. Smoke тестирование также известно как тестирование проверки сборки.

Тестирование защищенности

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

Тестирование работоспособности

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

Тестирование масштабируемости

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

Тестирование стабильности

Является нефункциональным тестом, предназначенным для тестирования одного из атрибутов качества ПО, то есть «Стабильности». Тестирование стабильности фокусируется на тестировании стабильного ПО, когда оно подвергается нагрузкам на приемлемых уровнях, пиковым нагрузкам, нагрузкам, генерируемым в пиках с большим количеством обрабатываемых данных. Тестирование масштабируемости будет включать в себя выполнение различных видов тестов производительности, таких как нагрузочное тестирование, стресс-тестирование, тестирование спайков, тестирование выдержки.

Статическое тестирование

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

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

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

Тестирование системы

Включает в себя несколько видов тестирования ПО, которые позволят проверить программное обеспечение в целом (программное обеспечение, аппаратное обеспечение и сеть) в соответствии с требованиями, для которых он был создан. Для завершения тестирования системы выполняются различные виды тестов (GUI-тестирование, функциональное тестирование, регрессионное тестирование, тестирование дыма, нагрузочное тестирование, стресс-тестирование, тестирование безопасности, стресс-тестирование, ad-hoc тестирование и т. д.).

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

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

Тестирование интеграции системы

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

Модульное тестирование

Это вид тестирования, который выполняется разработчиками ПО. Модульное тестирование следует методу тестирования белых полей, где разработчик будет тестировать модули исходного кода, такие как операторы, ветви, функции, методы, интерфейс в ООП (объектно-ориентированное программирование). Модульное тестирование обычно включает в себя разработку драйверов. Модульные тесты — идеальные варианты для автоматизации. Автоматизированные тесты могут выполняться как единичные регрессионные тесты для новых версий или новых версий ПО. Существует множество полезных фреймов, таких как Junit, Nunit и т. д., которые могут сделать модульное тестирование более эффективным.

Тестирование удобства использования

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

Приемочное тестирование пользователя

Приемочное тестирование пользователя является обязательным для любого проекта. Оно выполняется клиентами / конечными пользователями ПО. Приемочное тестирование позволяет специалистам от клиента тестировать ПО в соответствии с реальными бизнес-сценариями или реальными сценариями и проверять соответствие ПО их бизнес-требованиям.

Тестирование объема

Является нефункциональным видом тестирования, выполняемым группой инженеров по производительности. Тестирование объема — один из видов тестирования производительности. Тестирование объема выполняется для того, чтобы проверить ПО на надежность при работе с различными размерами данных, которые принимаются и обрабатываются программным обеспечением. Например, если вы собираетесь тестировать слово Microsoft, то проверка объема будет заключаться в том, чтобы увидеть, может ли MS Word открыть, сохранить и работать с файлами разных размеров (от 10 до 100 МБ).

Тестирование уязвимости

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

Тестирование методом «белого ящика»

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

Хочу отметить, что помогут познакомиться с данными методами тестирования наши .

Запишитесь прямо сейчас или закажите звонок с бесплатной консультацией!

Существуют различные методологии динамического тестирования ПО. В зависимости от наличия у тестировщика доступа к исходному коду программы, выделяют следующие методы тестирования:

  • · Метод черного ящика
  • · Метод белого ящика
  • · Метод серого ящика

Метод черного ящика.

Впервые термин «черный ящик» упоминается психиатром У. Р. Эшби в книге "Введение в кибернетику" в 1959 г. Он писал, что метод черного ящика позволяет изучать поведение системы абстрагируясь от ее внутреннего устройства.

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

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

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

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

Метод белого ящика.

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

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

Метод серого ящика.

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

Особым методом исследования управления, наиболее популярным в со­временных условиях и, пожалуй, достаточно эффективным является метод тестирования.

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

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

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

Большую роль в исследовании при помощи тестирования играет конст­рукция теста.

Тест включает набор высказываний и оценок по определенной проблеме или ситуации. Оценки могут быть упрощенные (типа "согласен" - "не со­гласен" или шкалированные (типа "совершенно верно", "верно", "скорее верно, чем неверно", "трудно сказать", "скорее неверно, чем верно", "неверно", "совсем неверно"). Шкала может иметь цифровые оценки в виде рейтинговых коэффициентов или выбора степени согласия.

Конструкция теста должна предполагать возможность обработки его ре­зультатов по определенным статистическим программам.

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

Существуют правила формулировки высказываний. Они включают сле­дующие положения(схема 34 ).

А) высказывания должны быть короткими, не более одного придаточного предложения;

Б) понятны для всех без исключения исследуемых (респондентов);

В) в высказываниях не должно быть намека на правильный, одобряемый или ожидаемый ответ;

Г) структурированные ответы по каждому из высказываний желательно иметь с одним и тем же числом альтернатив (не менее 5 и не более 11);

Д) тест не может состоять целиком из предложений, в которых высказываются только позитивные или только негативные суждения;

е) в каждом высказывании теста следует утверждать что-нибудь одно.

При составлении теста необходимо учитывать его основные характерис­тики.

Надежность - одна из главных и важнейших характеристик. Ее связы­вают с точностью, определяющей возможность измерения, перевода в ко­личественные показатели. Надежность определяется целью, задачами и ха­рактером тестового исследования, качеством высказываний.

Существуют приемы проверки надежности тестов. Они включают по­вторное тестирование, параллельное тестирование, прием раздельного коррелирования (внутренняя корреляция высказываний), использование диспер­сионного анализа, факторный анализ.

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

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

Тестирование.

Тестирование (англ. test - испытание, проверка) - эксперементальный метод психродиагностики, применяемый в эмпирических социологических исследованиях, а также метод измерения и оценки различных психологических качеств и состояний индивида.

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

Основоположники тестирования - Ф.Гальтон, Ч.Спирман, Дж.Каттел, А.Бине, Т.Симон. Сам термин "умственный тест" придумал Кеттел в 1890 г. Начало развития современной тестологии массового применения тестов на практике связано с именем французского врача Бине, разработавшего в соавторстве с Симоном метрическую шкалу умственного развития, известную под названием "тест Бине-Симона".

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

Тесты предъявляют требования:

Строгая формализация всех этапов тестирования,

Стандартизация заданий и условий их выполнения,

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

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

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

1) стандартная инструкция для испытуемого о цели и правилах выполнения заданий,

2) ключ шкалирования - соотнесение пунктов заданий со шкалами измеряемых качеств, указывающее, какой пункт заданий к какой шкале относится,

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

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

Для преодоления основного недостатка большинства тестов применяются различные приемы:

1) увеличение базовой выборки с целью повышения ее репрезентативности по большему числу параметров,

2) введение поправочных коэффициетнов с учетом характеристик выборки,

3)введение в практику тестирования невербального способа предъявления материала.

Тест состоит из двух частей:

а) стимулирующего материала (задача, инструкция или вопрос)

б) указаний относительно регистрации или интнграции полученых ответов.

Типичная для тестов стандартизация ситуации обеспечивает им в отличие от "свободного" наблюдения поведения большуюю объективность результатов.

Тесты классифицируются по разным признакам.

По виду свойств личности они делятся на тесты достижений и личностные. К первым относятся тесты интеллекта, школьной успеваемости, тесты на творчество, тесты на способности, сенсорные и моторные тесты. Ко вторым - тесты на установки, на интересы, на темперамент, характерологические тесты, мотивационные тесты. Однако не все тесты (например, тесты развития, графические тесты) можно упорядочить по данному признаку. По виду инструкции и способу применения различаются индивидуальные и групповые тесты. При групповом тестировании одновременно обследуется группа испытуемых. Если в тестах уровня временных ограничений нет, то в тестах на скорость они обязательны. В зависимости от того, насколько в результате тестирования проявляется субъективность исследователя различают тесты объективные и субъективные.

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

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

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

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

Разработка теста состоит из четырех этапов.

На первомэтапе развивается исходная концепция с формулировкой основных пунктов испытания или основных вопросов, носящих предварительный характер;

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

На третьем этапе тест проверяется повторно на той же самой популяции;

На четвертом - калибруется по отношению к возрасту, уровню образования и другим признакам популяции.

На всех этапах разработки теста необходимо учитывать:

а) диагностируемое свойство личности (размер, положение, индикатор) или только наблюдаемые его пpоявления (напpимеp, способности, уpовень знаний, темпеpамент, интеpесы, установки);

б) связанную с этим валидизацию метода, т.е. опpеделение того, насколько он измеpяет тpебуемое свойство;

в) величину выбоpки из популяции, на котоpой должна пpоводиться оценка метода;

г) стимулиpующий матеpиал (таблички, изобpажения, игpушки, фильмы);

д) влияние исследователя в пpоцессе инстpуктиpования, постановки задач, pазъяснений, ответов на вопpосы;

е) условия ситуации;

ж) такие фоpмы поведения испытуеого, котоpые свидетельствуют об измеpяемом свойстве;

з) шкалиpование pелевантных фоpм поведения;

и) сведение pезультатов по отдельным измеpяемым пунктам в общие значения (напpимеp, суммиpование ответов типа "Да");

к) фоpмулиpовку pезультатов в ноpмиpованной шкале оценок.

Одним из вариантов теста может быть опросник, но при условии, что он отвечает требованиям, предъявляемым к тестам. Опросник - это сборник вопросов, которые выбираются и располагаются по отношению друг к другу в соответствии с требуемым содержанием. Опросники используются, например, в целях психодиагностики, когда от испытуемого требуется самооценка его поведения, привычек, мнений и т.д. При этом испытуемый, отвечаяя на вопросы, выражает свои положительные и отрицательные предпочтения. С помощью опросников можно измерять у испытуемых и оценки ими других людей. Задание обычно выступает, как прямая реакция на вопросы, на которые надо ответить путем сожаления или опровержения. Возможности для ответа в большинстве случаев заданы и требуют лишь отметки в виде крестика, крижочка и т.п. Недостаток опросника состоит в том, что испытуемый может симулировать или диссимулировать те или иные свойства личности. Преодолеть указанный недостаток (хотя и не полностью) исследователь может посредством контрольных вопросов, контрольных шкал, шкал "лжи". Опросники применяются преимущественно для диагностики характера, диагностики личности (например, экстроверсии - интроверсии, интересов, установок, мотивов).

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

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

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

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

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

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

дним из видов эмпирических методов является тестирование.

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

Тесты – более или менее стандартизированные кратковременные испытания свойств личности. Существуют тесты, направленные на оценку интеллектуальных, перцептивных способностей, двигательных функций, личностных особенностей, порога возникновения тревоги, досады в определенной ситуации или интереса, проявляемого к тому или иному виду активности. Хороший тест – результат большой предварительной экспериментальной проверки. Теоретически обоснованные и экспериментально апробированные тесты имеют научное (дифференциация испытуемых по уровню развития того или иного свойства, особенностей и т. п.) и, главное, практическое (профотбор) значение.

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

При разработке первых тестов были выдвинуты два основных требования, которым должны удовлетворять «хорошие» тесты: валидность и надежность.

Валидность теста заключается в том, что он должен оценивать именно то качество, для которого предназначен.

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

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

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

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

Тестирование позволяет с известной вероятностью определить актуальный уровень развития у индивида необходимых навыков, знаний, личностных характеристик. Сам процесс тестирования может быть разделен на следующие этапы: 1) выбор теста с учетом цели и степени его достоверности; 2) его проведение определяется инструкцией к тесту; 3) интерпретация результатов. На всех трех этапах нужен профессионализм, участие или консультация психолога.

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

Существуют разнообразные классификации тестов. Они могут подразделяться:

1) по особенностям используемых тестовых задач на тесты вербальные и тесты практические;

2) по формам процедуры обследования - на тесты групповые и индивидуальные;

3) по направленности - на тесты интеллекта и тесты личности;

4) в зависимости от наличия или отсутствия временных ограничений - на тесты скорости и тесты результативности;

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

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

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

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

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

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

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

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

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

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

Тесты скорости (англ. speed tests) - тип психодиагностических методик, в которых основным показателем продуктивности работы испытуемых является время выполнения (объем) задач тестовых. Такие тесты обычно включают большое количество однородных заданий (пунктов).

Тесты достижений направлены на оценку достигнутого уровня развития навыков, знаний и умений индивида, как правило, после завершения обучения. Они относятся к наиболее многочисленной группе психодиагностических методик (по числу конкретных тестов и их разновидностей).

Кроме того, существуют и тесты, ориентированные на социально-психологический норматив или общественно заданный объективный содержательный эталон (например, ШТУР - школьный тест умственного развития).

В последнее время все большую популярность приобретает выделившийся из лабораторного психологического экспериментаметод тестирования.
Термин "тест" (по-английски - задача, или проба) был введен в 1890 г. в Англии. Тесты получили широкое распространение в детской психологии после 1905 г., когда во Франции были разработаны серии тестов для определения одаренности детей, и в практике психодиагностики после 1910 г., когда в Германии была разработана серия тестов для профессионального отбора.

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

Наиболее распространенные варианты теста: тест-опросник, тест-задание, проективный тест.

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

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

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

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

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

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

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

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

Сами задачи и задания (тесты различных типов) могут при правильном их применении давать весьма ценный материал для психологического анализа, однако неподготовленный в профессиональном отношении исследователь не сможет дать ему адекватную оценку и эффективно применить главный принцип практического психолога "не навреди".

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

Таким образом, порочным является не сам тест, а его неправильное использование.

Социометрия: исследование межличностных отношений в группе.

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

Социометрическая процедура может иметь целью:

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

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

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

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

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

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

С чего же начинать организацию процесса тестирования?

Я выделяю 11 основных критериев в организации процесса тестирования:

  1. Цели и область тестирования
  2. Команда
  3. Управление
  4. Коммуникация и взаимодействие
  5. Методология тестирования
  6. Документированность процесса
  7. Управление рисками
  8. Измерение процесса
  9. Инструменты
  10. Тестовые среды
  11. Совершенствование процесса

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

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

  • Зачем нам нужно тестирование?
  • Что мы имеем, чтобы сделать тестирование?
  • Какие процессы нужно формализовать или создать?
  • Как и что мы должны тестировать?

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

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

  • ISO 29119
  • IEEE 829\1008
  • TPI Next&TMap
  • ISTQB

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

Любой ИТ процесс всегда должен удовлетворять потребностям бизнеса!

Мы разберем основные критерии построения процесса тестирования.

Цели и область тестирования

Целью тестирования является обнаружение дефектов, проверка соответствия ПО заявленным требованиям, а также предоставление обратной связи о дефектах всем заинтересованным сторонам.

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

Говоря об области тестирования, мы должны прекрасно понимать, что именно нам предстоит тестировать. Это могут быть системы, компоненты, бизнес процессы. Для того, чтобы это понять, то нужно просто ответить на два вопроса:

  • Что надо тестировать?
  • Что будем тестировать?

Зачастую, то что надо тестировать и то что будем может сильно различаться. Это зависит от возможностей вашего процесса тестирования. «Что надо» часто диктуется бизнесом и руководством, поэтому хороший руководитель должен всегда понимать, «что нужно» тестировать. Как говорится в поговорке: «За двумя зайцами погонишься, ни одного не поймаешь», так и тут. Всегда лучше качественно тестировать то, что действительно вы можете тестировать вашей командой, чем хвататься за все, что просит бизнес и ничего не успевать в срок, да еще и пропускать критичные дефекты.

Команда и управление

Команда — это самая важная составляющая процесса тестирования. Без команды вы, как руководитель, ничего не сделаете. Зачастую к формированию команды подходят несколькими подходами:

Инструменты и инфраструктура

Какой же процесс тестирования без инструментов? Это получается ручной труд ради ручного труда 🙂 Я думаю многие из вас часто слышали о написании тест-кейсов в документах ворд, о построения графиков и диаграмм в экселе. Но, зачем тратить усилия, если рынок предлагает нам готовые продукты управления тестирования, такие как HP ALM, MS TFS, TestRail, TestLink, JIRA Zephyr и многие другие.
Поэтому, если вы приступили к организации процесса тестирования, то делайте этот процесс удобным и эффективным. Пишите тест-кейсы в удобных формах готовых продуктов, интегрируйте инструменты с системой управления задачами, настраивайте и т.д.

Подходя к выбору инструмента нужно всегда понимать:

  • Какие задачи вы планируете выполнять?
  • Какой у вас бюджет на инструменты?

Получив ответы на эти вопросы вы сможете определить наиболее удобные для вас инструменты тестирования, а возможно и разработать собственные.

Помимо инструментов управления тестирования, к инструментам тестирования также можно отнести:

  • Система управления дефектами и задачами (может включаться в систему управления тестированием)
  • Вспомогательные инструменты (для скриншотов, снятия логов, работы с БД, SOUP UI для XML и т.д.)
  • Инструменты автоматизации ( , Selenium и т.д.)
  • Системы управления знаниями (на wiki движке)

Теперь поговорим об инфраструктуре. В текущем контексте своего повествования я подразумеваю тестовые среды.

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

Стандартно я выделяю следующие типы тестовых сред:

  • Среда разработки (можно ли ее относить к тестовой?, но тем не менее)
  • Среда тестирования системы (может быть развернута одна или несколько систем, компонент, не требует серьезных мощностей)
  • Среда интеграции (полноценный интеграционная среда для проверки работоспособности сквозных бизнес процессов)
  • Среда (основное требования — соответствие мощностями боевому контуру)
  • Среда ПродЛайк/ПреПрод (среда для отладки готового протестированного билда, проведение инсталяционного тестирования)

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

Совершенствование процесса

Я очень часто говорю такую фразу, что «Любой процесс, неважно какой, всегда должен постоянно совершенствоваться», на что очень часто слышу «Зачем, наш процесс и так хорошо работает».

Но это не так. Почему мы должны постоянно совершенствовать процесс тестирования:

1. Цели тестирования не могут быть одинаковыми, они постоянно меняются в зависимости от потребностей бизнеса, что диктуется рынком.

2. ИТ сфера постоянно развивается. Приходят новые технологи подходы, которые всегда позволяются совершенствовать процесс тестирования.

Как говорится, совершенству нет предела!

Ну а как совершенствовать — это стандартный цикл Демминга.

Запланировали — .Сделали — Проанализировали — Скорректировали

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