Биографии Характеристики Анализ

Нетрадиционные тесты. интегративные тесты

Интегративный тест тревожности - оригинальная клиническая тестовая методика, созданная в 2005 году в НИПНИ им. Бехтерева к.пс.н. А.П. Бизюком, д.м.н. профессором Л.И. Вассерманом и к.м.н. Б.В. Иовлевым для общей структурной экспресс-диагностики тревоги и тревожности, в том числе в клинике псхосоматических заболеваний.

Теоретические основы

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

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

Ещё одним недостатком многих инструментальных методов исследования является недифференцированность тревоги и тревожности. Тревога и тревожность – различные, но системно связанные понятия, анализировать которые следует сопряжено для того, чтобы понять их личностный смысл в реальной жизненной ситуации человека. Именно таким образом в комплексной многомерной диагностике нарушений психической адаптации исследуется патогенез формирующихся психогений и социогений, внутренней картины болезни, тенденций к саморазрушающему поведению и др. Особенно четко эти общие механизмы формирования клинической картины болезни, где тревога – тревожность играют существенную (а нередко и основополагающую) роль, прослеживаются преимущественно при невротических и неврозоподобных расстройствах соматоформного типа (F4 – МКБ-10). Универсальность тревоги как аффективного регулятора поведения заключается прежде всего в ее опосредующей значимости и включенности в другие психические феномены, поэтому позитивная диагностика этого феномена чрезвычайно важна для квалификации формирующейся клинической картины болезни при тревожно-фобических (F40), других тревожных расстройствах (F.41), особенно при смешанных тревожных и депрессивных расстройствах (F41.2), при посттравматических стрессовых расстройствах (F43.1) и расстройствах адаптации (F43.2), соматоформных вегетативных расстройствах (F45.3), при соматогенных и др. нарушениях аффективного круга. Более того, тревога как эмоциональное состояние и тревожность как фундаментальная личностная характеристика, должна анализироваться во многих сферах функционирования личности: в спорте, военной и операторской деятельности специалистов, профотборе, педагогическом процессе и других областях, где предъявляются специальные требования к адаптивным возможностям человека. Нарушения психической адаптации как сложной многомерной системы приспособительных механизмов личности возникают в силу различных причин и обстоятельств, и в настоящее время одной из наиболее практически значимых задач совместной деятельности психиатров и врачей общего профиля с клиническими психологами является диагностика, содержательная квалификация и комплексная коррекция состояний условно патологического типа, к которым относятся нарушения психической адаптации.

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

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

Внутренняя структура

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

С целью дифференцированного и детализации представления о влияниях различных компонентов самооценки испытуемого как носителя тревоги, в отношении накопленного эмпирического материала был применен метод факторного анализа, что позволило в структуре 15 признаков выделить 5 факторов, интерпретируемых, как уже говорилось, в качестве вспомогательных шкал, а именно “эмоциональный дискомфорт” (ЭД), “астенический компонент тревожности" (АСТ), “фобический компонент” (ФОБ), “тревожная оценка перспективы” (ОП) и “социальная защита" (СЗ) (факторы даны в порядке убывания объяснимой дисперсии – соответственно – 2,082; 1,512; 1,459; 1,458, 1,280). Подробное описание эквивалентных им вспомогательных шкал приводится ниже. Полученные факторные нагрузки по признакам используются в качестве диагностических коэффициентов новых вспомогательных шкал, построенных на базе извлеченных факторов, что повышает диагностический потенциал теста ИТТ. Прежде всего, это усиливает информативность методики в целом, а также повышает ее надежность в принятии решения, обеспечивая тем самым высокий уровень дифференцированности значений отдельных признаков как субкомпонентов тревоги-тревожности. Таким образом оказалось возможным рассматривать психологическую структуру тревоги – тревожности в экспериментально заданных рамках.

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

Таким образом, интегративный тест тревожности состоит из двух субтестов, предназначенных для раздельной оценки тревоги и тревожности. Каждый субтест содержит 15 утверждений, с каждым из которых испытуемый должен выразить своё согласие по 4-балльной шкале. Утверждения субтестов полностью идентичны, различается лишь инструкция. В итоге из теста можно извлечь общий балл по каждому субтесту и 5 шкальных значений (всего 12 показателей).

Валидность

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

Проверка эмпирической валидности, связанной, главным образом, с корреляционными соотношениями между проверяемым тестом и результатами исследований с помощью других методик, позволяющих оценивать исследуемые качества, показала следующие результаты. Параллельные исследования по СТ и 16-факторному опроснику Кеттелла продемонстрировали корреляцию на уровне r= + 0,43 (p<0,01) показателя шкалы общей тревожности и фактора “О” (уверенность в себе – тревожность), причем близкие к такого же уровня значимости корреляции с этим же фактором показали и все вспомогательные шкалы ИТТ (ЭД, АСТ, ФОБ, ОП и СЗ). Кроме того, выявилась отрицательная корреляция шкалы АСТ с фактором QЗ (низкий самоконтроль – высокий самоконтроль или низкая интеграция чувства “Я” – высокая интеграция) r= – 0,406 (р<0,01). Остальные шкалы также имели достаточно отчетливую отрицательную связь с показателем фактора Q3, но не достигшую уровня статистической достоверности. Подобные же на уровне выраженной тенденции отрицательные корреляции продемонстрировали все вспомогательные шкалы и с фактором “С” (эмоциональная неустойчивость – эмоциональная устойчивость или низкая сила “эго” – высокая сила “эго”). Определенный интерес с точки зрения эмпирической валидности представляет и связь шкалы ОП с фактором Q4 (раccлабленность – напряженность) (r= + 0,36; р<0,05), что свидетельствует о наличии общих корней тревожной оценки перспективы в ее содержательном значении по методике СТ и мотивационной неудовлетворенностью, репрезентируемой фактором Q4 теста Кеттелла.

В корреляционной матрице методик СТ и 16 РF обнаружилась еще одна корреляционная зависимость, подтверждающая эмпирическую валидность выделенных шкал – это положительная связь шкалы ЭД с фактором “L” (доверчивость – подозрительность), отражающим, главным образом, настороженно-эмоциональное отношение к людям (г = + 0.387; р<0,01).

Апробация методики

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

Прежде всего, наблюдалось общее, практически синхронное, совпадение профиля кривых динамики оценки тревожности по обеим методикам, отражающим один и тот же процесс эмоционального приспособления к экстремальным условиям как на уровне включения в специфическую природную среду, так и необычные социально-психологические условия, свойственные подобным экспедициям. С другой стороны, результат частного анализа изменения основной и вспомогательных шкал методики СТ и их пики полностью соответствуют ситуации, характеризовавшейся психологическим напряжением и спецификой различных этапов зимовки, ранее отписанных в литературе и наблюдаемых врачами экспедиций (первый месяц работы, вершина полярной ночи, период выхода судов за отзимовавшей партией и т.д.). При этом эмоциональная реактивность определялась как особенностями личностно-средового взаимодействия, так и фоном интерперсонального взаимодействия. Для подтверждения общей чувствительности методики к специфическим личностным особенностям, предрасполагающим или включающим в себя тревожность как один из основных компонентов клинико-психологического статуса, было проведено сравнительное исследование практически здоровых лиц и группы больных с различными формами неврозов и неврозоподобных расстройств с клинически подтвержденными диагнозами и наличием в структуре расстройств тревожного компонента. Исследования показали, что общий уровень самооценки изучаемых свойств среди группы больных статистически значимо отличается от контрольной – средний показатель ситуативной тревожности у них составил 20,0, а личностной 26,8 балла (в обоих случаях достоверность различий с р<0,001), что может свидетельствовать и о способности методики улавливать более общие характеристики адаптивности человека как многокомпонентного (системного) образования, биопсихосоциального по своей сущности.

В связи с задачами практической апробации методика ИТТ была включена в программу скринингового исследования педагогов общеобразовательных школ Челябинска в целях первичной психопрофилактики. Обследовано 7300 педагогов с помощью формализованных анкет, опросников и различных медико-психологических тестов. У 89% отмечались нарушения здоровья уровня “группы риска”, т.е. выявлялись признаки психической дезадаптации, у 43% выявлены нарушения уровня повышенного риска или начальных проявлений болезни. Среди них с признаками неврозов – 60%, патологии сердечно-сосудистой системы – 34 7%, сосудов головного мозга – 38,2%, пищеварительного тракта – 28,6% и др. У большинства из обследованных педагогов группы повышенного риска отмечались неврозоподобные расстройства в виде тревоги, астении, снижения настроения и работоспособности.

Исследование особенностей и уровня тревожности с помощью методики Ч. Спилбергера проведено у 349 педагогов, выявлены в среднем достоверно высокие уровни ситуативной и личностной тревожности (соответственно 49,3±5,4 балла и 47,0±5,9 баллов) при высоком уровне их взаимной корреляции. Для уточнения структуры тревожности была выделена репрезентативная группа из 86 человек с высокими показателями уровня тревожности. Эта группа была обследована с помощью теста ИТТ.

В целом у исследованной группы преобладала личностная тревожность, в особенности тревожная оценка перспектив. Это прослеживается и в оценке ситуативной тревоги. Характерно, что факторная структура личностной тревожности определяется также эмоциональным дискомфортом и астеническими нарушениями. Полученные данные на высоком статистическом уровне коррелируют с результатами тестирования по методике 16-РF Кеттелла и шкалой актуальной ригидности Томского опросника психической ригидности .

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

Интерпретация

Общие принципы

Оценки выраженности симптомов переводятся в числовые значения следующим образом: 0 – отсутствие данного признака, два других связываются с наличием слабо и умеренно выраженных признаков (баллы 1 и 2) и последний – как чрезвычайная, с точки зрения испытуемого, степень выраженности – 3 балла. Таким образом, по каждому субтесту испытуемый может набрать не более 45 баллов.

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

ЭД АСТ ФОБ ОП СЗ
0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3
1 0 25 49 74
2 0 24 49 73
3 0 37 74 110
4 0 27 53 80
5 0 32 65 98
6 0 24 49 73
7 0 37 74 111
8 0 30 61 91
9 0 28 56 85
10 0 57 114 171
11 0 43 86 129
12 0 29 58 87
13 0 41 81 122
14 0 29 58 87
15 0 31 61 92

Нормативные показатели

Средний фактический балл, полученный для нормативной группы из 540 практически здоровых лиц в возрасте от 22 до 55 лет равен 11,91 (стандартное отклонение – 4,58). Статистически достоверных различий для СТ-Л и СТ-С, а также отдельно для мужчин и женщин получено не было, хотя тенденцию более высокой тревожности женщин все же следует отметить, что, как известно, отмечается и в литературе.

Нормативные материалы для подростков (12-15 лет – 520 человек) дали средний балл 12,88 (сигма = 5,5), однако здесь, в отличие от взрослого контингента разница средних для юношей и девушек оказалась статистически достоверной с надежностью р<0,001 (соответственно, юноши – 11,64 и девушки – 14,13 балла).

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

Клиническая значимость

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

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

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

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

Перевод: Анна Радионова

Существует много видов ПО тестов. Практики BDD можно применять в любых аспектах тестирования, но BDD фреймворки используются далеко не во всех типах тестов. Поведенческие сценарии, по сути, являются функциональными тестами - они проверяют, что тестируемый продукт работает корректно. Для тестирования производительности могут использоваться инструменты, в то время как BDD фреймворки не предназначены для этих целей. Задача данной статьи, в основном, состоит в описании роли BDD автоматизации в Пирамиде Тестирования. Прочитайте статью BDD 101: Manual Testing для того, чтобы понимать как BDD применяется при ручном тестировании. (Всю информацию по BDD можно найти на странице Automation Panda BDD page)

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

Тем не менее, BDD практики могут применяться для юнит-тестов. Каждый юнит-тест должен быть направлен на основную составляющую: один вызов, единичная вариация, определенная комбинация ввода; на поведение .В дальнейшем при разработке спецификация поведения фичи четко отделяет юнит тесты от тестов более высокого уровня. Разработчик функционала также ответственен за написание юнит-тестов, в то время как за интеграционные и end-to-end тесты несет ответственность другой инженер. Спецификация поведения является, своего рода, джентльменским соглашением о том, что юнит-тесты будут являться отдельной сущностью.

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

Тестовые BDD фреймворки наиболее ярко проявляют себя на интеграционных и end-to-end уровнях тестирования .

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

Given a user is logged into the social media site
When the user writes a new post
Then the user"s home feed displays the new post
And the all friends" home feeds display the new post

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

Длительные End-to-End тесты

Термины часто понимаются разными людьми по-разному. Когда люди говорят “end-to-end тесты,” они подразумевают продолжительные последовательные тесты: тесты, которые покрывают различное поведение продукта одно за другим . Это утверждение заставляет содрогнуться приверженцев BDD, т.к это противоречит основному правилу BDD: один сценарий, одно поведение. Конечно, с помощью BDD фреймворков можно составлять длительные end-to-end тесты, но нужно хорошо подумать, стоит ли это делать и как именно.

Существует пять основных принципов написания длительных end-to-end сценариев в BDD:

  1. Не стоит беспокоиться на этот счет . Если BDD процесс поставлен правильно, то каждое отдельное поведение уже полностью покрыто тестовыми сценариями. Каждый сценарий должен покрывать все классы эквивалентности вводимых и выводимых данных. Таким образом, длительные end-to-end сценарии будут являться, в основном, дублированием тестового покрытия. Вместо того, чтобы тратить время на разработку, лучше отказаться от автоматизации длительных end-to-end сценариев, как от тех, которые не представляют большой ценности и уделить больше времени ручному и исследовательскому тестированию .
  2. Объединить существующие сценарии в новые . Каждая When-Then пара представляет собой индивидуальное поведение. Шаги из существующих сценариев могут быть переопределены в другие сценарии и для этого потребуется лишь незначительный рефакторинг. Это нарушает хорошие практики Gherkin и может привести к появлению длительных сценариев, но это наиболее практичный способ переиспользовать шаги для обширных end-to-end сценариев. Большинство BDD фреймворков не поддерживают пошаговый порядок, а если поддерживают, то шаги должны быть переписаны, чтобы код работал. (Этот подход является наиболее практичным, но менее традиционным .)
  3. Встраивайте проверки в Given и When шаги . Данная стратегия позволяет избежать дуплицирования When-Then пар и убедиться, что проверки производятся. Корректность каждого шага проверяется на протяжении всего процесса с помощью Gherkin текста. Однако, может потребоваться ряд новых шагов.
  4. Воспринимайте последовательность поведений как уникальное отдельное поведение . Это наилучший способ обдумывания длительных end-to-end сценариев, т.к. он усиливает поведенческое мышление. Продолжительный сценарий имеет ценность только в том случае, если он расценивается как уникальное поведение. Сценарий должен быть написан с целью подчеркнуть эту уникальность. В противном случае это не тот сценарий, который стоит использовать. Такие сценарии часто являются декларативными и высокоуровневыми.
  5. Не используйте BDD фреймворки и пишите тесты исключительно с помощью средств автоматизации . Gherkin предназначен для совместной работы в отношении поведения, в то время как продолжительные end-to-end тесты решают проблемы интенсивности работы QA. Бизнес может предоставить поведенческие спецификации, но никогда не станет писать end-to-end тесты. Переписывание поведенческих спецификаций в длинные end-to-end сценарии может блокировать разработку. Гораздо лучшим решением является сосуществование: приемочные тесты могут быть написаны при помощи Gherkin, а продолжительные end-to-end тесты - средствами программирования. Для автоматизации обоих наборов тестов можно использовать одну и ту же базу кода, у них могут быть единые модули поддержки и даже методы определения шагов.

Выберите подход, наиболее подходящий вашей команде.

12 ответов

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

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

Функциональное тестирование: Да, мы тестируем продукт или программное обеспечение в целом функционально независимо от того, работает ли он функционально или нет (кнопки тестирования, ссылки и т.д.)

Например: Страница входа

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

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

Например: Отправка электронной почты

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

Надеюсь, это помогло вам.

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

Единичное тестирование легко определить. Он тестирует CUT (Code Under Test ) и ничего больше. (Ну, как можно меньше.) Это значит, что это издевательства, подделки и светильники.

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

Но как насчет обширного пространства между?

  • Например, что, если вы проверите немного больше, чем CUT? Что делать, если вы включили функцию Фибоначчи вместо использования приспособления, которое вы ввели? Я бы назвал это функциональное тестирование, но мир не согласен со мной.
  • Что делать, если вы включили time() или rand() ? Или что, если вы вызываете http://google.com ? Я бы назвал это тестирование системы, но опять же, я один.

Почему это имеет значение? Потому что системные тесты ненадежны. Они необходимы, но иногда они могут потерпеть неудачу по причинам, не зависящим от вас. С другой стороны, функциональные тесты всегда должны проходить, а не случайным образом; если они бывают быстрыми, их можно также использовать с самого начала, чтобы использовать Test-Driven Development без написания слишком большого количества тестов для вашей внутренней реализации. Другими словами, я думаю, что модульные тесты могут быть более сложными, чем они того стоят, и у меня хорошая компания .

Я поставил тесты на 3 оси, со всеми их нулями при модульном тестировании:

  • Функциональное тестирование: использование реального кода глубже и глубже в вашем стеке вызовов.
  • Интеграция-тестирование: выше и выше ваш стек вызовов; другими словами, тестирование вашего CUT путем запуска кода, который будет использовать его.
  • Системное тестирование: все больше и больше неповторимых операций (планировщик O/S, часы, сеть и т.д.).

Тест может легко быть все 3 в разной степени.

Функциональное тестирование: это процесс тестирования, в котором тестируются каждый компонент модуля. Например: если веб-страница содержит текстовое поле, необходимо проверить флажки радиобота, кнопок и выпадающих и т.д.

Тестирование интеграции: процесс, в котором проверяется поток данных между двумя модулями.

Интеграционное тестирование. Тестирование интеграции - это не что иное, как тестирование различных модулей. Вы должны проверить взаимосвязь между модулями. Например, вы открываете facebook, после чего вы видите страницу входа в систему после ввода идентификатора входа и пароля, вы можете видеть домашнюю страницу facebook, поэтому страница входа - это один модуль, а домашняя страница - это еще один модуль. вы должны проверять только связь между ними, когда вы вошли в систему, тогда только домашняя страница должна быть открыта, а не поле сообщения или что-то еще. Существует два основных типа интеграционного тестирования: подход TOP-DOWN и подход BOTTOM UP.

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

В тесте функционального тестирования основное внимание уделяется функциональности и вспомогательной функциональности приложения. Функциональность приложения должна работать правильно или нет.

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

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

Функциональное тестирование: - Тестирование в основном разделено на две категории: 1.Функциональное тестирование 2. Нефункциональное тестирование ** Функциональное тестирование: - Проверить, работает ли программное обеспечение в соответствии с требованиями пользователя или нет. ** Нефункциональное тестирование: - Чтобы проверить, соответствует ли программное обеспечение критериям качества, таким как стресс-тест, тест безопасности и т.д.

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

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

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

Когда дело доходит до интеграционного тестирования, это взаимодействие между модулями. Если модуль отправляет вход, модуль B может обрабатывать его или нет.

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

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

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

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

Педагогический тест

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

Интегративный тест

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

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

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

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

Адаптивный тест

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

Главное преимущество адаптивного теста перед традиционным - эффективность. Адаптивный тест может определить уровень знаний тестируемого с помощью меньшего количества вопросов (иногда длина теста уменьшается до 60%).

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

Достоверность результатов адаптивного теста совпадает с достоверностью тестов фиксированной длины. Оба вида тестов одинаково точно оценивают уровень знаний.

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

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

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

На Рис. 15 приведена структура комплекса программ K, состоящего из оттестированных на этапе модульного тестирования модулей M1, M2, M11, M12, M21, M22. Задача, решаемая методом интеграционного тестирования, - тестирование межмодульных связей, реализующихся при исполнении программного обеспечения комплекса K.

Рис. 15. Пример структуры комплекса программ

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

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

Монолитный, характеризующийся одновременным объединением всех модулей в тестируемый комплекс;

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

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

1) «Сверху вниз» и соответствующее ему восходящее тестирование.

2) «Снизу вверх» и соответственно нисходящее тестирование.

Особенности монолитного тестирования заключаются в следующем: для замены неразработанных к моменту тестирования модулей, кроме самого верхнего (модуль К на Рис. 15), необходимо дополнительно разрабатывать драйверы (test driver) и/или заглушки (stub), замещающие отсутствующие на момент сеанса тестирования модули нижних уровней.

Сравнение монолитного и интегрального подхода дает следующее.

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

2. Пошаговое тестирование связано с меньшей трудоемкостью идентификации ошибок за счет постепенного наращивания объема тестируемого кода и соответственно локализации добавленной области тестируемого кода.

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

Например, порядок тестирования комплекса K (Рис. 15) при нисходящем тестировании может быть таким, как показано ниже, где тестовый набор, разработанный для модуля Mi, обозначен как XYi = (X, Y)i.

K->XYk
M1->XY1
M11->XY11
M2->XY2
M22->XY22
M21->XY21
M12->XY12

К недостаткам нисходящего тестирования следует отнести:

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

Сложность организации и разработки среды для реализации исполнения модулей в нужной последовательности;

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

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

Например, порядок тестирования комплекса K (Рис. 15) при нисходящем тестировании может быть следующим:

M11->XY11
M12->XY12
M1->XY1
M21->XY21
M2(M21, Stub(M22))->XY2
K(M1, M2(M21, Stub(M22)) ->XYk
M22->XY22
M2->XY2
K->XYk

А к недостаткам восходящего тестирования можно отнести:

Запаздывание проверки концептуальных особенностей тестируемого комплекса;

Необходимость в разработке и использовании драйверов.