Подпишись и читай
самые интересные
статьи первым!

Юзабилити-тестирование. Что же такое тестирование? Кто проводит тестирование

Перевод: Ольга Алифанова

Если бы вам пришлось ответить на вопрос "Что такое тестирование?", что бы вы сказали? Это понятие довольно трудно впихнуть в пару-тройку коротких предложений.

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

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

Расследование

Расследование определяется как "наблюдение или изучение путем близкого наблюдения и систематического изучения" .

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

Исследование

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

Тестирование не должно восприниматься, как прогон списка готовых тестов или тест-кейсов, дающих твердый "pass/fail" результат. Если у вас есть юзер-стори или набор требований, конечно, важно иметь их в виду. Однако критерии приемки бывает полезно переформулировать как "критерии отказа ". Когда критерии приемки не удовлетворены, продукт не принят, но если они в порядке, это не значит, что в ПО нет багов.

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

Снижение рисков

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

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

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

Ценность

Тестирование – это ценная часть разработки ПО, но его часто недооценивают из-за его непредсказуемой и креативной природы.

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

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

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

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

  • Требования
  • Дизайн
  • Предположения
  • Документацию
  • Инфраструктуру
  • Процессы.

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

Коммуникация

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

Человек может начать работать тестировщиком, имея слабые технические навыки, но если он силен в коммуникации и может внятно донести свою мысль – это куда важнее.

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

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

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

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

Потенциальная бесконечность

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

Часть нашей работы – принятие решений о том, что тестировать, понимание последствий того, что будет протестировано только это, и способность обосновать свой выбор.

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

Простота

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

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

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

Автоматизируемость

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

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

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

Повышение качества

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

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

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

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

Фиксированная, не требующая воображения деятельность, подчиняющаяся строгим правилам

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

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

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

Жизненно необходимо для успеха продукта

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

Никогда не заканчивается

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

Часть работы тестировщика – это принятие решений, что именно тестировать, и понимание последствий этих решений и связанных с нимирисков.

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

Тестирование – это многое, многое другое

Я перечислила только некоторые аспекты того, что же такое тестирование. Эта статья могла бы быть значительно длиннее! Нет единого определения, что подразумевается под тестированием, а впихнуть в одно предложение все то, чем занимаются тестировщики, просто невозможно! Если поискать определение тестирования в Интернете, можно наткнуться на фразы вроде "поиск багов в приложениях" – но как мы уже выяснили, это не только и не столько поиск багов.

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

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

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

Как проводится тестирование?

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

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

Второй шаг – провести тестирование:

  1. Раздайте тесты с вопросами и заданиями, бланки для ответов.
  2. Объясните, с какой целью вы будете проводить тестирование.
  3. Зачитайте инструкцию или дайте отпечатанный текст.
  4. Тесты должны состоять из 20-25 заданий .
  5. Уточните, что на каждое задание даётся по одной минуте . По истечении времени тестирование сразу прекращается.
  6. Если человек не понимает, приведите пример выполнения подобных заданий.
  7. Отвечайте на вопросы кандидатов .
  8. Принятие ответов и их проверка. С результатами обработки можно ознакомить кандидата, но это необязательно.

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

Другие тесты при приеме на работу с ответами можно найти в сети Интернет.

Виды

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

Давайте подробно остановимся на каждом из них.

Профессиональные

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


составляют вопросы и несколько вариантов ответов: да, нет, в некоторых случаях.

При этом дается интерпретация ответов.

По таким объяснениям можно сразу увидеть ответ.

А с помощью готовых ключей к тесту определить количество правильных ответов и вынести своё решение.

Работодатель может предложить пройти тест для соискателей на знание некоторых приёмов работы excel(эксель).

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

Личностные или психологические

Интеллектуальные


Если работа требует умственных затрат , то работодатель вправе знать, насколько высоки интеллектуальные способности его работников.

Именно с этой целью используют такой вид тестирования, чтобы объективно оценить интеллектуальный уровень (IQ) соискателей.

Для правильного подбора заданий подойдет книга английского психолога Г. Айзенка .

Можно воспользоваться тестом Амтхауэра . Он определяет уровень умственных способностей по девяти критериям.

По результатам можно точно установить математического склада ума кандидат или гуманитарий и даже определить, к какой из 49 профессий подходит.

Онлайн тестирование на уровень интеллекта можно пройти .

Математические

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

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

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

Пройти онлайн тест по математике можно .

Логические

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

Логические тесты на работу первый взгляд абсурдны. В одной из задач сказано, что некоторые улитки — горы. Горы обожают кошек. Значит, все улитки обожают кошек.

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

Тест на логику можно пройти онлайн .

Вербальные


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

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

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

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

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

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

Пройти вербальный тест онлайн можно .

На обучаемость

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

По механике

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

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

Онлайн тестирование по механике предложено .

На Полиграфе

Крупные компании при приеме на работу пользуются мобильным аппаратным комплексом .

Может ли работодатель применить детектор лжи ?

Закон не запрещает.

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

В чём заключается процесс тестирования? Вопросы трёх видов: настраивающие, коррекционные и фактические .

Если ответы на последние два честны, физиологические параметры человека одинаковы. Они трансформируются, если человек говорит неправду. Это фиксируется аппаратом.

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

Ответы дают безошибочное суждение о кандидате . По окончании проверки работодатель решает: будет кандидат работать или нет.

«Продайте ручку»

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

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

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

Резюме


Так стоит ли стараться применять тесты при подборе персонала?

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

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

Ошибки обходятся дорого. Умение брать на работу – настоящий талант, который еще и не часто встречается.

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

В. Что такое динамическое тестирование?

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

В. Что такое GUI-тестирование (GUI Testing)?

О. Тестирование GUI (графического интерфейса пользователя): интерфейс программного обеспечения проверяется на предмет соответствия требованиям.

В. Что такое формальное тестирование?

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

В. Что такое тестирование на основе рисков?

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

В. Что такое раннее тестирование?

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

В. Что такое исчерпывающее тестирование?

О. Тестирование функциональности, с использованием неверных и верных данных ввода и входных условий.

В. Что такое скопление дефектов?

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

В. Что такое «парадокс пестицида»?

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

В. Что такое статическое тестирование?

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

В. Что такое позитивное тестирование?

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

В. Что такое негативное тестирование?

О. Тестирование негативных сценариев в ПО: высвечивает ли система ошибку, когда она должна это делать, или не должна.

В. Что такое сквозное тестирование (еnd-to-end)?

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

В. Что такое исследовательское тестирование?

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

В. Что такое «обезьянье тестирование» (Monkey Testing)?

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

В. Что такое нефункциональное тестирование?

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

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

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

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

В. Что такое нагрузочное тестирование?

О. Анализ функциональности и производительности приложения в разных условиях.

В. Что такое стресс -тестирование?

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

В. Что такое процесс?

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

В. Что такое конфигурационное управление?

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

О. Составление:

  • Тест-плана
  • Тест-сценариев
  • Тест-кейсов
  • Выполнение тест-кейсов
  • Проверка результатов
  • Составление отчетов о дефектах
  • Дефект-трекинг
  • Закрытие дефектов
  • Тестовый релиз

В. Как расшифровывается CMMI?

О. Capability Maturity Model Integration (Модель зрелости процессов разработки).

В. Что такое разбор программы?

О. Неформальный анализ исходного кода программы с целью выявить дефекты и верифицировать техники программирования.

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

В. Что такое тестирование уровня интеграции?

О. Тестирование соответствующих программ, модулей (или) единиц кода.

В. Что такое тестирование на уровне системы?

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

В. Что такое альфа-тестирование?

О. Тестирование всей компьютерной системы перед этапом пользовательского тестирования (UAT).

В . Что такое UAT?

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

В. Что такое тестовый план?

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

В. Что такое сценарий тестирования?

О. Идентификация всех возможных зон тестирования.

В. Что такое ECP (Equivalence Class Partition)?

О. Метод генерации тест-кейсов.

В. Что такое дефект?

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

В. Что такое критичность?

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

В. Что такое приоритет?

О. Указывает на срочность устранения дефекта.

В. Что такое повторное тестирование?

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

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

В. Что такое тестирование восстановления?

О. Проверяется возможность системы справиться с некоторыми неожиданными ситуациями.

В. Что такое тестирование глобализации (Globalization Testing)?

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

В. Что такое тестирование локализации?

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

В. Что такое тестирование установки?

О. Проверяется возможность успешной установки ПО, в соответствии с документацией по установке.

В. Что такое тестирование удаления?

О. Проверка возможности удаления ПО.

В. Что такое тестирование на совместимость?

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

В. Что такое стратегия тестирования?

О. Это часть тест-плана, описывающая, как проводится тестирование и какие разновидности тестирования необходимо сделать.

В. Что такое тест-кейс?

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

В. Что такое тест-кейс для валидации бизнес-процессов?

О. Этот тест-кейс составляется для того, что проверить определенное условие или требование.

В. Как определяется хороший тест?

О. Тест-кейс, у которого высокий приоритет обнаружения дефектов.

В. Что такое тестирование по сценарию использования?

О. Такое тестирование определяет, было ли ПО разработано согласно случаю использования.

В. Что такое возраст дефекта?

О. Время между датой обнаружения и датой закрытия дефекта.

В. Что такое дефект Showstopper?

О. Дефект, который вынуждает остановить ход тестирования.

О. Это последний этап STLC. Руководство составляет отчеты по тестам, разъясняет статистику проекта, исходя из имеющихся данных.

В. Что такое Bucket Testing?

О. Bucket Testing, или A/B-тестирование. Чаще всего исследуется эффект разного дизайна, используется метрика для веб-сайтов. Две версии сайта запускаются на одной или нескольких веб-страницах, чтобы определить разницу в кликах.

В. Что такое критерии запуска и завершения тестирования?

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

  • SRS – ПО
  • Случай использования
  • Тест-кейс
  • План тестирования

Критерий завершенности определяет готовность приложения к релизу. Это может быть:

  • Отчет по тестированию
  • Метрики
  • Отчет по анализу теста

В. Что такое тестирование валюты?

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

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

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

В. Что такое тестирование интерфейса?

О. Тестирование интерфейса проверяет взаимодействие отдельных модулей. Чаще всего используется для тестирования пользовательского интерфейса приложений с GUI.

В. Что такое гамма-тестирование?

О. Гамма-тестирование проводится когда ПО уже готово к релизу, проверяется соответствие требованиям.

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

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

Что такое тестирование программного обеспечения?

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

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

Методика тестирования

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

3) Системное тестирование

4) Приемочные испытания

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


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

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

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

Приемочные испытания

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

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

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

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

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

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

Тестирование методом "Белого ящика", в отличие от "черного ящика", учитывает внутреннее функционирование и логику работы кода. Для выполнения этого теста, тестер должен иметь знания кода, чтобы узнать точную часть кода, имеющую ошибки. Этот тест также известен как White-box, Open-Box или Glass box тестирование.

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

Тестирование методом серого ящика или Gray box тестирование, это что-то среднее между White Box и Black Box тестированием, где тестер обладает лишь общими знаниями данного продукта, необходимыми для выполнения теста. Эта проверка осуществляется посредством документации и схемы информационных потоков. Тестирование проводится конечным пользователем, или пользователям, которые представляются как конечные.

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

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

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


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


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

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

Тесты в процессе разработки программного обеспечения

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

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

  • Анализ потребностей
  • Тест дизайна
  • Тест реализации
  • Тестирование, отладка и проверка кода или продукта
  • Внедрение и обслуживание

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

Agile Model

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

Rapid Application Development (RAD). Методология быстрой разработки приложений

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

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

Спиральная модель

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

Rational Unified Process (RUP). Рациональный унифицированный процесс

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

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

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

Что такое онлайн-тестирование?

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

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

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


Онлайн-тестирование для учебных центров

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

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

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

Online Assessment для HR-отделов

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

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

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

Организация онлайн-тестирования

Для проведения экзаменации на базе компании или учебного центра, необходимо развернуть соответствующий модуль в системе дистанционного обучения. Чаще всего используются коммерческие расширения (модули) для СДО Moodle – эта система является бесплатной и установка на сервер занимает не более 10 минут. Есть и готовые онлайн-сервисы для проведения проверки знаний, однако нельзя дать полную гарантию объективности систем, которые вы не администрируете.


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

Как оценить модуль Online Assessment?

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

  • Доступ к тестированию и администрированию через обычный веб-браузер.
  • Возможность добавлять файлы любого формата со ссылкой на них из статей.
  • Качественная система отчетности по результатам тестирования с выводом диаграмм.
  • Возможность создания психологических тестов.
  • Поддержка стандарта ipv6 .
  • Настраиваемая система оценок для каждого теста (баллы, проценты).
  • Использование медиа-контента в вопросах тестов.
  • Наличие различных типов вопросов: множественный выбор, одиночный выбор, произвольный ввод.
  • Автоматическая проверка тестов.
  • Удобный и русифицированный интерфейс.

Контроль результатов

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

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

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

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

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

Включайся в дискуссию
Читайте также
Свет в конце туннеля. К чему снится туннель
К чему снится Бог во сне, сонник видеть Бога что означает
Значение старших арканов таро и их сочетание