Тест на тему "технология разработки программного обеспечения". Требования к тестировщику ч.4: этапы тестирования ПО Общая схема процесса разработки тестов

24.06.2020

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

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

Каскадная модель (Линейная последовательная модель жизненного цикла ПО)

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

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

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

Узнайте больше о каскадной модели из предыдущей статьи .

V-Model (Модель верификации и валидации)

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

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

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

  • Этап определения требований . Приемочное тестирование относится к этому этапу. Его основная задача состоит в оценке готовности системы к финальному использованию
  • Этап, на котором происходит высокоуровневое проектирование, или High-Level Design (HDL) . Этот этап относится к системному тестированию и включает оценку соблюдения требований к интегрированным системам
  • Фаза детального дизайна (Detailed Design) параллельна фазе интеграционного тестирования, во время которой происходит проверка взаимодействий между различными компонентами системы
  • После этапа написания кода начинается другой важный шаг — юнит-тестирование. Очень важно убедиться в том, что поведение отдельных частей и компонентов ПО корректно и соответствует требованиям

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

Инкрементная модель

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

  1. дизайн и разработка
  2. тестирование
  3. реализация.

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

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

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

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

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

  1. Планирование
  2. Анализ рисков
  3. Разработка
  4. Оценка

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

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

Читайте подробнее o спиральной модели в предыдущем блог посте .

Agile

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

Узнайте больше об Agile (прим. — статья на английском языке) .

Экстремальное программирование (XP, Extreme Programming)

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

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

Scrum

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

  • Участие в Scrum планировании
  • Поддержка в юнит-тестировании
  • Тестирование пользовательских историй
  • Сотрудничество с заказчиком и владельцем продукта для определения критериев приемлемости
  • Предоставление автоматического тестировании

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

В то же время принципы Agile методологии в Scrum к появлению специфических особенностей:

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

Узнайте больше о методологии Scrum из предыдущей статьи .

Заключение

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

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

Вариант 1

1. Упорядоченная последовательность команд (инструкций) компьютера для решения конкретной задачи.

A. Свойство программы

B. Программное обеспечение

C. Постановка задачи

D. Программа

E. Язык программирования

2. С позиции специфики разработки и вида программного обеспечения, на какие два класса делятся задачи?

A. Позиционные и функциональные

B. Технологические и функциональные

C. Позиционные и непозиционные

D. Технологические и параметрические

E. Нет верного ответа

3. Какими последовательными действиями можно представить процесс создания программ?

A. Программирование, постановка задачи, построение алгоритма

B. Построение алгоритма, решение задачи

C. Построение алгоритма, программирование

D. Программирование, построение алгоритма, постановка задачи

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

4. Постановка задачи - это …

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

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

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

D. система точно сформулированных правил

E. Все ответы верны

5. Алгоритм - это …

A. разбиение процесса обработки информации на более простые этапы

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

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

E. нет верного ответа

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

A. Дискретность

B. Определенность

C. Массовость

D. Алгоритм

E. Все ответы верны

7. Выполнимость - это …

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

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

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

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

Е. нет верного ответа

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

A. Системный программист

B. Программист-аналитик

C. Прикладной программист

D. Администратор

E. Постановщик задач

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

A. Прикладной программист

B Программист-аналитик

C. Системный программист

D. Администратор БД

E. нет верного ответа

A. Прикладной программист

B. Программист-аналитик

C. Системный программист

D. Постановщик задач

E. Администратор

A. Администратор БД

B. Прикладной программист

C. Постановщик задач

D. Системный программист

E. все ответы верны

A. Прикладной программист

B. Программист-аналитик

C. Системный программист

D. Конечный пользователь

E. Нет верного ответа

A. Дискретность

B. Экономичность

C. Готовность

D. Работоспособность

E. Надежность

A. Определенность

B. Работоспособность

C. Надежность

D. Экономичность

E. Готовность

A. Экономичность

B. Готовность

C. Надежность

D. Определенность

E. Работоспособность

16. Устойчивость - …

E. Нет верного ответа

A. Устойчивость

B. Перезапуск

C. Готовность

D. Надежность

E. Все ответы верны

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

18.Процесса обработки данных, детализацией функций обработки, разработкой структуры ПП, выбором методов и средств создания программ?

A. Документирование

B. Программирование

C. Сопровождение

D. Проектирование

E. нет верного ответа

A. Документирование

D. Сопровождение ПП

E. Все ответы верны

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

A. Проектирование

B. Эксплуатация

C. Документирование

D. Программирование

E. нет верного объекта

21. Жизненный цикл ПО - …

E. Нет верного ответа

E. Нет верного ответа

B. Процесс поставки, процесс обеспечения качества, процесс верификации

C. Процесс управления, процесс создания инфраструктуры, процесс обучения

E. Процесс управления, процесс разработки, процесс обучения

Процесс документирования, процесс обеспечения качества, процесс верификации

E. нет верного ответа

27.На какие две группы делится документация, создаваемая в процессе разработки программных средств?

28. Код группы 1 стандарта ЕСПД означает …

A. Общие положения

D. Резервные группы

E. нет верного ответа

29. Код группы 0 стандарта ЕСПД означает …

A. Прочие стандарты

B. Резервные группы

C. Основополагающие стандарты

E. Общие положения

30. ЕСПД - это …

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

B. упорядоченная последовательность команд (инструкций) компьютера для решения конкретной задачи

C. система точно сформулированных правил

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

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

31. Расшифруйте ЕСПД

A. Единственная связь программной документации

В. Единая свобода программной документации

C. Единая система программной документации

D. Единство системной программной документации

Е. Нет верного ответа

32. Для чего предназначено Руководство по управлению ПС?

A. Руководство по управлению дает краткую характеристику функциональных возможностей ПС

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

C. Руководство по управлению дельно предписывает, как устанавливать системы в конкретной среде

D. Руководство по управлению содержит необходимую информацию по применению ПС

E. нет верного ответа

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

A. Документация, помогающая вносить изменения в ПС и документация по сопровождению ПС

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

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

D. Документы управления разработкой ПС и пользовательская документация

E. Пользовательская документация ПС и документация по сопровождению ПС

34. Документы, которые фиксируют различные детали взаимодействия между менеджерами и разработчиками

A. Стандарты

B. Планы, оценки, расписания

C. Отчеты

D. Рабочие документы

E. Заметки и переписка

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

A. Отчеты

B. Стандарты

C. Планы, оценки, расписания

D. Рабочие документы

Е. Заметки, переписка

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

A. Стандарты

B. Планы, оценки, расписания

C. Рабочие документы

D. Заметки

E. Отчеты

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

A. Отчеты

В. Рабочие документы

C. Планы, оценки, расписания

D. Стандарты

Е. Заметки и переписка

38. Для чего необходимы документы, входящие в состав ПС?

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

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

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

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

39. Для чего необходимы документы управления разработкой ПС?

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

40. B. Обеспечивают связь внутри коллектива разработчиков и между коллективом разработчиков и менеджерами

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

D. Обеспечивают связь между самой программой и входными данными

E. нет верного ответа

Вариант 2

1. Код группы 2 стандарта ЕСПД означает …

A. Прочие стандарты

C. Правила выполнения документации разработки

Е. Резервные группы

2. Пояснительная записка. Требования к содержанию и оформлению

A. ГОСТ 19.508-79

B. ГОСТ 19.501-78

C. ГОСТ 19.402-78

D. ГОСТ 19.202-78

Е. ГОСТ 19.404-79

3.Техническое задание. Требования к содержанию и оформлению

A. ГОСТ 19.203-78

B. ГОСТ 19.201-78

C. ГОСТ 19.106-78

D. ГОСТ 19.404-79

E. нет верного ответа

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

A. ГОСТ 19.105-78

B. ГОСТ 19.106-78

C. ГОСТ 19.201-78

D. ГОСТ 19.101-77

E. ГОСТ 19.301-79

5. Общие положения

A. ГОСТ 19.101-77

B. ГОСТ 19.002-77

C. ГОСТ 19.001-77

D. ГОСТ 19.001-78

E. Нет верного ответа

6. Код группы 9 стандарта ЕСПД означает …

A. Резервные группы

B. Основополагающие стандарты

C. Правила выполнения эксплуатационной документации

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

Е. Нет верного ответа

7. Код группы 8 стандарта ЕСПД означает …

A. Прочие стандарты

C. Резервные группы

D. Правила обращения программной документации

Е. Нет верного ответа

8. Код группы 7 стандарта ЕСПД означает …

A. Основополагающие стандарты

B. Правила обращения программной документации

C. Прочие стандарты

E. Резервные группы

9. Код группы 6 стандарта ЕСПД означает …

A. Правила обращения программной документации

В. Общие положения

C. Правила выполнения документации изготовления

D. Резервные группы

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

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

A. Прикладной программист

B. Программист-аналитик

C. Системный программист

D. Постановщик задач

E. Администратор

11. Участвует в процессе создания программ на начальной стадии работ

A. Администратор БД

B. Прикладной программист

C. Постановщик задач

D. Системный программист

E. все ответы верны

12. Является основным потребителем программ

A. Прикладной программист

B. Программист-аналитик

C. Системный программист

D. Конечный пользователь

E. Нет верного ответа

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

A. Дискретность

B. Экономичность

C. Готовность

D. Работоспособность

E. Надежность

14. Возможность доступа к услугам АИС с использованием соответствующих технологий всегда, когда в ней возникает необходимость

A. Определенность

B. Работоспособность

C. Надежность

D. Экономичность

E. Готовность

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

A. Экономичность

B. Готовность

C. Надежность

D. Определенность

E. Работоспособность

16. Устойчивость - …

A. характеризует способность к безотказному функционированию при наличии сбоев

B. возможность доступа к услугам АИС с использованием соответствующих технологий всегда, когда в ней возникает необходимость

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

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

E. Нет верного ответа

17. Процесс обеспечивает возобновления нормально функционирования АИС

A. Устойчивость

B. Перезапуск

C. Готовность

D. Надежность

E. Все ответы верны

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

A. Документирование

B. Программирование

C. Сопровождение

D. Проектирование

E. нет верного ответа

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

A. Документирование

B. Проектирование структуры ПП

C. Программирование, тестирование и отладка

D. Сопровождение ПП

E. Все ответы верны

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

A. Проектирование

B. Эксплуатация

C. Документирование

D. Программирование

E. нет верного объекта

21. Жизненный цикл ПО - …

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

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

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

D. прерывающийся процесс, который начинается с момента написания структуры программы и заканчивается в момент его полного изъятия из эксплуатации

E. Нет верного ответа

22. На какие три группы процессов делится структура жизненного цикла ПО по стандарту ISO/IEC 12207?

A. Составные, действующие и вспомогательные процессы

B. Основные, дополнительные и остальные процессы

C. Вспомогательные, основные и дополнительные процессы

D. Основные, вспомогательные и организационные процессы

E. Нет верного ответа

23. Основные процессы жизненного цикла ПО делятся на …

A. Процесс документирования, процесс обеспечения качества, процесс верификации

B. Процесс поставки, процесс обеспечения качества, процесс верификации

C. Процесс управления, процесс создания инфраструктуры, процесс обучения

D. Процесс приобретения, процесс поставки, процесс разработки*

E. Процесс управления, процесс разработки, процесс обучения

24. Вспомогательные процессы жизненного цикла ПО делятся на …

A. Процесс документирования, процесс обеспечения качества, процесс верификации*

B. Процесс поставки, процесс обеспечения качества, процесс верификации

C. Процесс управления, процесс создания инфраструктуры, процесс обучения

D. Процесс приобретения, процесс поставки, процесс разработки

E. Процесс управления, процесс разработки, процесс обучения

25. Организационные процессы жизненного цикла ПО делятся на …

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

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

C. Процесс приобретения, процесс поставки, процесс разработки

D. Процесс управления, процесс создания инфраструктуры, процесс документирования

E. нет верного ответа

26. Что подразумевает собой процесс документирования?

A. Процесс состоит из действий и задач заказчика, приобретающего ПП

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

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

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

Е. Процесс предусматривает формализованное описание информации, созданной в течение ЖЦ ПО

27. На какие две группы делится документация, создаваемая в процессе разработки программных средств?

A. Документы, входящие в состав ПС и документы, помогающие вносить изменения в ПС

B. Пользовательская документация и документация по сопровождению ПС

C. Документы управления разработкой ПС и документы, входящие в состав ПС

D. Общая документация и вспомогательная документация

E. Документы управления разработкой ПС и документы по сопровождению ПС

28. Код группы 1 стандарта ЕСПД означает …

A. Общие положения

B. Правила выполнения эксплуатационной документации

C. Основополагающие стандарты

D. Резервные группы

E. нет верного ответа

29. Код группы 0 стандарта ЕСПД означает …

A. Прочие стандарты

B. Резервные группы

C. Основополагающие стандарты

D. Правила выполнения документации разработки

E. Общие положения

30. ЕСПД - это …

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

B. Упорядоченная последовательность команд (инструкций) компьютера для решения конкретной задачи

C. Система точно сформулированных правил

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

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

31. Код группы 5 стандарта ЕСПД означает …

A. Правила выполнения документации разработки

B. Резервные группы

C. Основополагающие стандарты

D. Правила выполнения эксплуатационной документации

Е.Правила обращения программной документации

32. Код группы 4 стандарта ЕСПД означает …

A. Резервные группы

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

C. Общие положения

D. Правила выполнения документации изготовления

E. Правила выполнения документации разработки

33. Код группы 3 стандарта ЕСПД означает …

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

B. Правила выполнения документации разработки

C. Правила обращения программной документации

D. Правила выполнения документации изготовления

E. Правила эксплуатационной документации

34. Руководство программиста

A. ГОСТ 19.506-79

B. ГОСТ 19.404-79

C. ГОСТ 19.505-79

D. ГОСТ 19.604-78

E. нет верного ответа

35. Заголовки разделов записывают …

A. Строчными буквами и размещают по правому краю

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

C. Прописными буквами и размещают по левому краю

D. С абзаца строчными буквами (кроме первой прописной)

E. Прописными буквами и размещают симметрично относительно правой и левой границ текста

36. Что не входит в основную часть программного документа?

A. Текст документа

B. Перечень сокращений

C. Лист содержания

D. Приложения

E. Предметный указатель

37. Информационная часть программного документа содержит:

A. Предметный указатель и лист содержания

B. Лист утверждения и лист содержания

C. Титульный лист и лист утверждения

D. Аннотацию и лист содержания

E. Лист утверждения и аннотацию

38. Титульная часть программного документа содержит:

A. Титульный лист

B. Лист утверждения и титульный лист

C. Титульный лист и аннотацию

D. Титульный лист и лист содержания

E. Нет верного ответа

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

A. Требования к составу и параметрам технических средств

B. Требования к функциональным характеристикам

C. Требования к информационной и программной совместимости

D. Требования к надежности

E. Специальные требования

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

A. Требования к функциональным характеристикам

B. Требования к составу и параметрам технических средств

C. Требования к надежности

D. Специальные требования

E. нет верного ответа

Паспорт

1 вариант

Сұрақтың № № вопроса

Қиындықтың дәрежесі

Уровень сложности

Дұрыс жауабы

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

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

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

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

Собственно вопросы:

    Объясните термин «жизненный цикл программного обеспечения».

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

    Объясните термин «жизненный цикл разработки программного обеспечения».

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

    Объясните преимущество использования модели жизненного цикла разработки ПО (SDLC).

    • обеспечение основы проекта (методологии, активность...);
    • обеспечение визуализации хода реализации проекта;
    • помощь компании в эффективности и успешного завершения проекта (сокращение затрат, уменьшение сроков разработки и тестирования, повышение качества конечного продукта);
    • уменьшение рисков, связанных с процессом разработки ПО;
    • обеспечение специальным механизмом отслеживания прогресса проекта.
  1. Каковы основные фазы модели жизненного цикла разработки ПО?

    1. Принятия решения (идея) о необходимости создания ПО;
    2. Сбор и анализ требований;
    3. Дизайн (Системы и ПО) на основе требований;
    4. Кодирование на основе дизайна системы;
    5. Тестирование;
    6. Внедрение в пользовательскую среду;
    7. Сопровождение (в том числе фиксация найденных в пользовательской среде ошибок);
    8. Изъятие из эксплуатации (редко);
  2. Объясните, что такое Обеспечение качества (Quality Assurance)?

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

    Обеспечение качества определено в стандарте ISO 9000:2005 «Системы менеджмента качества. Основные положения и словарь» как «часть менеджмента качества, направленная на создание уверенности в том, что требования к качеству будут выполнены».

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

    Объясните, что такое Контроль качества (Quality Control)?

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

    Объясните, что такое тестирование ПО?

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

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

    Какие основные цели тестирования ПО?

    Цель тестирования (test objective, test target) - это причина или цель разработки и выполнения теста.

    Основные цели:

    • обеспечить очищения ПО от ошибок (Вы не можете предоставить 100% покрытие, но Вы должны сделать все возможное, и гарантировать, что очевидные ошибки исправлены);
    • убедить, что ПО отвечает оригинальным требованиям и спецификации;
    • обеспечить уверенность в ПО (пользователям, заказчикам и т.д.).
  3. Когда следует начинать тестировать ПО?

    Простой ответ - как только это возможно! Более детально:

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

    Простой ответ - управленческое решение, которое вероятней всего будет принято на основе:

    • тестового покрытия;
    • анализа рисков;
    • ухудшения тестирования.
    Более детальному изучению данного вопроса поможет Майкла Болтона в его блоге с разными там эвристиками «пиньяты» и «мертвой лошади».
  5. Какие основные уровни тестирования ПО?

    1. Компонентное (component)/ модульное тестирование (module, unit testing) - это тестирование отдельных компонентов ПО ;
    2. Интеграционное тестирование (integration testing) - это тестирование, выполняемое для обнаружения дефектов в интерфейсах и во взаимодействии между интегрированными компонентами или системами.

      Следует также понимать что такое big-bang тестирование, тестирование «сверху вниз», восходящие и инкрементное тестирование;

    3. Системное тестирование (system testing) - это процесс тестирования системы в целом с целью проверки того, что она соответствует установленным требованиям;
    4. Приёмочное тестирование (acceptance testing) - это формальное тестирование по отношению к потребностям, требованиям и бизнес процессам пользователя, проводимое с целью определения соответствия системы критериям приёмки (критерии выхода, которым должны соответствовать компонент или система, для того, чтобы быть принятыми пользователем, заказчиком или другим уполномоченным лицом) , с чего следуют такие виды , о которых желательно не забывать:
      • пользовательское приёмочное тестирование (user acceptance testing);
      • производственное приемочное тестирование (factory acceptance testing) - это приемочное тестирование, проводимое на стороне разработчика программного продукта и проводящееся сотрудниками компании-поставщика с целью определить, соответствует или нет компонент или система как программным, так и аппаратным требованиям;
      • стороннее приемочное тестирование (site acceptance testing) - это приёмочное тестирование пользователями или заказчиком на своей стороне. Проводится с целью определить как соответствие бизнес-процессу, так и удостовериться, что данная система или компонент удовлетворяет потребностям пользователей или заказчика. Обычно включает в себя проверку как программного обеспечения, так и технической базы;
      • эксплуатационное приемочное тестирование (operational acceptance testing) - это эксплуатационное тестирование в фазе приемочного тестирования, обычно выполняемое пользователем и/или сотрудниками с администраторским доступом, в рабочей среде (возможно, симулированой), фокусируясь на функциональных аспектах (восстанавливаемость, поведение ресурсов, устанавливаемость и техническое соответствие).
    5. Альфа-тестирование (alpha testing) - это моделируемое или действительное эксплуатационное тестирование потенциальными пользователями/заказчиками или независимой командой тестирования на стороне разработчиков, но вне разрабатывающей организации. Альфа-тестирование часто применяется к коробочному ПО в качестве внутреннего приёмочного тестирования;
    6. Бета-тестирование (beta testing) - это эксплуатационное тестирование потенциальными и/или существующими клиентами/заказчиками на внешней стороне никак не связанными с разработчиками, с целью определения действительно ли компонент или система удовлетворяет требованиям клиента/заказчика и вписывается в бизнес-процессы. Бета-тестирование часто проводится как форма внешнего приёмочного тестирования готового программного обеспечения для того чтобы получить отзывы рынка;
  6. Что такое критерии входа?

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

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

    Приведите несколько примеров, которые объясняют критерии входа для тестирования ПО.

    • все дефекты, которые относятся к ранним стадиям (проектирования) закрыты и проверены;
    • код проверенный с помощью осуществления «Unit» тестов;
    • основные функциональные возможности ПО готовы для тестирования;
    • имеется документация, которая определяет требования;
    • все тестировщики ознакомлены с архитектурой ПО;
    • все тестировщики ознакомлены с целями проекта;
    • готова среда тестирования;
    • доступные для использования билды;
    • утверждены план тестирования и/или тестовые случаи.
  7. Что такое критерии выхода?

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

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

    Как вы объясните Bug/Defect/Error в ПО?

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

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

    строим ли мы продукт правильно?

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

    Опишите различные мероприятия процесса верификации.

    • анализ различных аспектов тестирования (сроки, ресурсы, персонал, стоимость, инструменты тестирования и т.д.);
    • покрытие операторов (statement coverage) - процентное отношение операторов, исполняемых набором тестов, к их общему количеству; покрытие условий (condition coverage) - процент исходов условий, которые были проверены набором тестов. 100% покрытие условий требует, чтобы каждое отдельное условие в каждом выражении решения было проверено как Истина и Ложь; покрытие альтернатив (decision coverage) - процент результатов альтернативы, который был проверен набором тестов. Стопроцентное покрытие решений подразумевает стопроцентное покрытие ветвей и стопроцентное покрытие операторов;
    • рецензирование (review) - это оценка состояния продукта или проекта с целью установления расхождений с запланированными результатами и для выдвижения предложений по улучшению. Примерами рецензирования могут служить: управленческое рецензирование, неформальное рецензирование, технический анализ, инспекция и разбор;
    • разбор (walkthrough) - это пошаговый разбор, проводимый автором документа для сбора информации и обеспечения одинакового понимания содержания документа;
    • инспекция (inspection) - это тип равноправного анализа, основанный на визуальной проверке документов для поиска ошибок. Например, нарушение стандартов разработки и несоответствие документации более высокого уровня. Наиболее формальная методика рецензирования и поэтому всегда основывается на документированной процедуре.
  9. Приведите примеры верификации в зависимости от уровней тестирования. (см. № 11)

    1. Модульное тестирование (unit testing):
      -проверка осуществления проектирования программного обеспечения.
    2. Интеграционное тестирование (integration testing):
      -тестирование на интеграцию между всеми соответствующими компонентами до того как ПО перейдет к следующему уровню (system).
    3. Системное тестирование (system testing):
      -обеспечение соответствия системы предопределенным требованиям и спецификации.
    4. Приёмочное тестирование (acceptance testing):
      -убедитесь, что система отвечает требованиям клиента.
  10. Объясните процесс валидации.

    Реальный вопрос, на который мы ищем ответ: строим ли мы правильный продукт?

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

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

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

    • человеческие ошибки (процесс проектирования и процесс реализации);
    • изменение требований в то время как ПО под испытанием;
    • непонимание требований и спецификаций;
    • отсутствие времени;
    • плохая приоритизация тестирования;
    • плохая ориентация в версиях ПО;
    • сложность самого ПО.
  11. Что такое процедура тестирования (Test Procedure)?

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

    Что такое программный компонент?

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

    Объясните Покрытие кода.

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

    Объясните Инспекцию кода.

    Инспекция кода (code inspection) или просмотр кода (code review) - это систематическая проверка исходного кода программы с целью обнаружения и исправления ошибок, которые остались незамеченными в начальной фазе разработки. Целью просмотра является улучшение качества программного продукта и совершенствование навыков разработчика.
    В процессе инспекции могут быть найдены и устранены такие проблемы, как ошибки в форматировании строк, состояние гонки (race condition), утечка памяти (memory leak) и переполнение буфера (buffer overflow), что улучшает безопасность программного продукта. Системы контроля версий дают возможность проведения совместной инспекции кода. Кроме того, существуют специальные инструментальные средства для совместной инспекции кода.
    Программное обеспечение для автоматизированной инспекции кода упрощает задачу просмотра больших кусков кода, систематически сканируя его на предмет обнаружения наиболее известных уязвимостей.

    Что значит фраза Код завершен?

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

    Что такое разбор (walkthrough) кода?

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

    Что такое отладка?

    Отладка (debugging) - это процесс поиска, анализа, и устранения причин отказов и ошибок в ПО.

    Чтобы понять, где возникла ошибка, приходится:

    • узнавать текущие значения переменных;
    • выяснять, по какому пути выполнялась программа.
    Существуют две взаимодополняющие технологии отладки.
    • Использование отладчиков - программ, которые включают в себя пользовательский интерфейс для пошагового выполнения программы: оператор за оператором, функция за функцией, с остановками на некоторых строках исходного кода или при достижении определённого условия.
    • Вывод текущего состояния программы с помощью расположенных в критических точках программы операторов вывода - на экран, принтер, громкоговоритель или в файл. Вывод отладочных сведений в файл называется журналированием.
  12. Что такое эмулятор и симулятор?

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

    Симуляция - это воспроизведение работы программы-оригинала сугубо виртуально, на движке специальной программы (средство разработки курсов, к примеру). Симуляция лишь имитирует выполнение кода, а не копирует его, всё виртуально на 100%, всё «понарошку».

    Следовательно:

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

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

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

    Что такое спецификация ПО?

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

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

    Что такое кодирование?

    Кодирование (coding) - это процесс написания программного кода, скриптов, с целью реализации определённого алгоритма на определённом языке программирования.

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

    Что такое требование?

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

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

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

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

    Что такое тестирование стабильности?

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

    Расскажите про критичность (серьезность) бага и общепринятые уровни такой критичности.

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

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

    • Как эта ошибка будет влиять на процесс тестирования?
    • Как эта ошибка будет влиять на клиента?
    • Как эта ошибка влияет на систему?
    • Как эта ошибка влияет на сроки тестирования?
    • Блокирует ли эта ошибка другие тесты?
    • И т.д.
    Каждая компания может определить свою собственную шкалу для степени критичности (серьезности), но есть несколько уровней, которые используются почти всеми командами:
    • Blocker/show-stopper (блокирование) - ПО или конкретный компонент не подходит для использования/тестирования (полный отказ, краш системы и т.д.) и нет обхода.
      Примеры: система рухнет, когда пользователь нажимает кнопку «Пуск»; система не запускается после повреждения инсталлятора; отключение ПО, вызванное аппаратными сбоями.
    • Critical (критический) - главная функциональность не работает как надо, есть обходной путь, который может повлиять на целостность испытаний.
      Пример: ПО может рандомно крашиться, используя различные функциональные возможности; ПО вырабатывает противоречивые результаты, основные требования не удается подтвердить.
    • Major (важный) - поражение незначительных функциональностей, нет влияния на другие компоненты, и есть быстрый и действующий обход.
      Пример: Пользователь не может использовать определенную функциональность напрямую, но может использовать ее же, воспользовавшись доступом к ней из разных модулей.
    • Minor (второстепенный, незначительный) - незначительное воздействие на определенном месте, нет необходимости создавать обходной путь, целостность ПО не затронута.
      Примеры: ошибки орфографии, улучшения, запрос на изменение
  13. Расскажите про приоритет бага.

    Приоритет (priority) - это степень важности, присваиваемая багу. Другими словами определяется, насколько срочно это ошибка должна быть исправлена.

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

    • Как баг влияет на сроки?
    • Как баг влияет на процесс тестирования?
    • Как баг влияет на работу остальных тестировщиков?
    • Каковы затраты необходимы на устранение бага?
    • Должны ли мы изменить требования к ПО?
  14. Что такое Сборка?

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

    Предположим, что номер версии сборки выглядит так: 1.35.6.2

    1. Первый идентификатор - основной номер версии.
    2. Второй идентификатор - дополнительный номер версии.
    3. Третий идентификатор - номер сборки.
    4. Четвёртый идентификатор - номер редакции.
  15. Можно ли начинать тестирование без рабочей сборки?

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

    Что такое статический анализ?

    Статический анализ (static analysis) - это анализ программных артефактов, таких как требования или программный код, проводимый без исполнения этих программных артефактов.

    Что такое тестовый драйвер и тестовая обвязка?

    Драйвер (driver) - это компонент ПО или средство тестирования, которое заменяет компонент, обеспечивающий управление и/или вызов компонента или системы.

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

    Что такое матрицы трассировки?

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

    Тесты не связанные с требованиями не имеют смысла. Требования, не связанные с тестами - это «белые пятна», т.е. выполнив все созданные тест кейсы, нельзя дать ответ реализовано данное требование в продукте или нет.

    Что такое тестирование End-to-End?

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

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

    • запуск ПО в среде с задержками связи сети;
    • запуск ПО в среде с низкими ресурсами;
    • Запуск ПО на другом серверном оборудовании;
    • Запустите ПО в той же среде, что имеет некоторые другие приложения, которые потребляют ресурсы сервера.
  16. Что такое функциональное тестирование? Какие основные типы функционального тестирования? Какие виды функциональных тестов вы знаете?

    Функциональное тестирование (functional testing) - это тестирование, основанное на анализе спецификации функциональности компонента или системы.

    Функциональные тесты базируются на функциях и особенностях, а также взаимодействии с другими системами, и могут быть представлены на всех уровнях тестирования: компонентном или модульном (Component/Unit testing), интеграционном (Integration testing), системном (System testing) иприемочном (Acceptance testing). Функциональные виды тестирования рассматривают внешнее поведение системы.

    1. Функциональные тесты основываются на функциях, выполняемых системой, и могут проводиться на всех уровнях тестирования (компонентном, интеграционном, системном, приемочном). Как правило, эти функции описываются в требованиях, функциональных спецификациях или в виде случаев использования системы (use cases). Тестирование функциональности может проводиться в двух аспектах:
      • тестирование в перспективе «требования» (requirement-based testing) использует спецификацию функциональных требований к системе как основу для дизайна тестовых случаев (Test Cases). В этом случае необходимо сделать список того, что будет тестироваться, а что нет; приоритезировать требования на основе рисков (если это не сделано в документе с требованиями), а на основе этого приоритезировать тестовые сценарии (test cases). Это позволит сфокусироваться и не упустить при тестировании наиболее важный функционал.
      • тестирование в перспективе «бизнес-процессы» (business-process-based testing) использует знание этих самых бизнес-процессов, которые описывают сценарии ежедневного использования системы. В этой перспективе тестовые сценарии (test scripts), как правило, основываются на случаях использования системы (use cases).
    2. Tестирование защищенности (security testing) - это тестирование с целью оценить защищенность ПО. Общая стратегия безопасности основывается на трех основных принципах:
      • конфиденциальность;
      • целостность;
      • доступность;
      В настоящее время наиболее распространенными видами уязвимости в безопасности программного обеспечения являются:
      • xss (cross-site scripting) - это вид уязвимости программного обеспечения (Web приложений), при которой, на генерированной сервером странице, выполняются вредоносные скрипты, с целью атаки клиента;
      • xsrf / csrf (request forgery) - это вид уязвимости, позволяющий использовать недостатки HTTP протокола, при этом злоумышленники работают по следующей схеме: ссылка на вредоносный сайт установливается на странице, пользующейся доверием у пользователя, при переходе по вредоносной ссылке выполняется скрипт, сохраняющий личные данные пользователя (пароли, платежные данные и т.д.), либо отправляющий СПАМ сообщения от лица пользователя, либо изменяет доступ к учетной записи пользователя, для получения полного контроля над ней;
      • code injections (sql, php, asp и т.д.) - это вид уязвимости, при котором становится возможно осуществить запуск исполняемого кода с целью получения доступа к системным ресурсам, несанкционированного доступа к данным либо выведения системы из строя;
      • server-side includes (ssi) injection - это вид уязвимости, использующий вставку серверных команд в HTML код или запуск их напрямую с сервера;
      • authorization bypass - это вид уязвимости, при котором возможно получить несанкционированный доступ к учетной записи или документам другого пользователя.
    3. (interoperability testing) - это процесс тестирования для определения возможности взаимодействия программного продукта.
    Функциональное тестирование разделяются по ожидаемому результату на позитивные и негативные тесты:
    • Позитивный тест использует только корректные данные и проверяет, что приложение правильно выполнило вызываемую функцию.
    • Негативный тест оперирует как корректными так и некорректными данными (минимум 1 некорректный параметр) и ставит целью проверку исключительных ситуаций (срабатывание валидаторов), а также проверяет, что вызываемая приложением функция не выполняется при срабатывании валидатора.
  17. Что такое нефункциональное тестирование?

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

    Несколько примеров тестов, которые включает в себе нефункциональное тестирование?

    1. Тестирование переносимости (portability testing) это процесс тестирования с целью определить переносимость программного продукта.
    2. Тестирование возможности взаимодействия (interoperability testing) - это Процесс тестирования для определения возможности взаимодействия программного продукта.
    3. Тестирование производительности (performance testing) - это процесс тестирования с целью определить производительность программного продукта.
    4. Тестирование надежности (reliability testing) - это процесс тестирования, исследующий надежность программного продукта.
    5. Тестирование практичности (usability testing) - это тестирование с целью определения степени понятности, легкости в изучении и использовании, привлекательности программного продукта для пользователя при условии использования в заданных условиях эксплуатации.
    6. Тестирование безопасности (safety testing) - это тестирование программного продукта с целью определить его безопасность.
    7. Стрессовое тестирование (stress testing) - это вид тестирования производительности, оценивающий систему или компонент на граничных значениях рабочих нагрузок или за их пределами, или же в состоянии ограниченных ресурсов, таких как память или доступ к серверу.
    8. Нагрузочное тестирование (load testing) - это вид тестирования производительности, проводимый с целью оценить поведение компонента или системы под увеличивающейся нагрузкой (число одновременно работающих пользователей и/или число транзакций) для определения максимально допустимого уровня нагрузки для исследуемого компонента или системы.
  18. Что такое тестирование Белого ящика?

    Белый ящик - это тестирование кода на предмет логики работы программы и корректности её работы с точки зрения компилятора того языка, на котором она писалась.

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

    Техника Белого ящика включает в себя следующие методы тестирования:

    • покрытие решений;
    • покрытие условий;
    • покрытие решений и условий;
    • комбинаторное покрытие условий;
  19. Что такое тестирование Чёрного ящика?

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

    Некоторые приёмы тестирования чёрного ящика:

    • эквивалентное разбиение;
    • анализ граничных значений;
    • анализ причинно-следственных связей;
    • предположение об ошибке;
  20. Что такое Конверсионное тестирование?

    Конверсионное тестирование (сonversion testing) - это методика тестирования, что используется для проверки того, как имеющие в системе А данные будут преобразовываться и становиться доступными для использования в системе Б.

    Что такое Конформационное тестирование?

    Конформационное тестирование - это тестирование с целью убедиться, что ПО отвечает определенным отраслевым стандартам (IEEE, W3C и т.д.) для разработки ПО.

Спасибо за внимание и удачи в ваших начинаниях!

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

Призываю к активному и обоснованному холивару!

ВВЕДЕНИЕ

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

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

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


ПЕДАГОГИЧЕСКИЙ ТЕСТ КАК КОНТРОЛЬНО-ИЗМЕРИТЕЛЬНЫЙ МАТЕРИАЛ

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

Педагогический тест рассматривается как система, как упорядоченное множество тестовых заданий. Задания – это те элементы, «кирпичики» из которых составляется педагогический тест.

Почему именно тестирование становится все более массовым явлением в процессе педагогического оценивания?

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

· это более качественный и объективный способ оценивания, что достигается путем стандартизации процедуры проведения (отсутствие субъективной оценки на всех этапах тестирования) и стандартизации заданий;

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

· позволяют включить в экзаменационную работу гораздо большее количество заданий;

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

· широкий инструмент – и с точки зрения интервала оценивания;

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

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

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

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

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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

ЭТАПЫ СОСТАВЛЕНИЯ И ОБЩИЕ ТРЕБОВАНИЯ К РАЗРАБОТКЕ ТЕСТА

В данном разделе представлены основные этапы составления теста.

В разработке педагогических тестов можно выделить три этапа: планирование, написание заданий и анализ заданий (см. Рис. 1).

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

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

Выбор типа тестового задания


Рисунок 1. Этапы разработки теста

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

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

· номера заданий и их принадлежность к субтестам;

· направленность заданий;

· сложность, трудоемкость, вес заданий;

· какую из характеристик каждое из заданий конкретно диагностирует.

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

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

а) простого воспроизведения знаний, анализа и сравнения данных. Постановка таких вопросов в заданиях позволяет проверить усвоение слушателями материала на уровне запоминания, тренирует память;

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

в) умения распознавать схемы, рисунки;

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

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

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

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

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

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

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

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

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

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

ВИДЫ ТЕСТОВЫХ ЗАДАНИЙ

Существует ряд требований к тесту организационного характера:

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

Оценка результатов производится по ранее разработанной шкале;

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

При разработке теста целесообразно использовать различные виды тестовых заданий. В частности:

Задания с выбором одного правильного ответа (ВО)

Задания с выбором нескольких правильных ответов (MB)

Задания на установление правильной последовательности (УП)

Задания на установление соответствия (УС)

Задания с кратким ответом (КО)

Общие требования к тестовым заданиям разного типа

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

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

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

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

В тексте задания исключается двойное отрицание.

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

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

Требования к дистракторам:

По возможности, не следует делать ответы длинными;

Одно и то же слово (или словосочетание, или однокоренное слово) не должно находиться в тексте задания и правильном ответе;

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

В вариантах ответа на задания желательна краткость;

Ответы на основу задания должны быть сформулированы достаточно просто, чтобы были понятны существенные различия между ними;

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

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

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

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

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

Из дистракторов, как правило, исключаются все повторяющиеся слова путем ввода их в основной текст задания;

Все ответы должны быть грамматически согласованными с основной частью задания;

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

Задания с выбором одного верного ответа (ВО)

Общие требования

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

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

В заданиях базового уровня не должно требоваться выбрать один НЕПРАВИЛЬНЫЙ ответ при наличии нескольких правильных.

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

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

Задания должны иметь одинаково правдоподобные дистракторы (ответы), одинаково привлекательные для выбора.

Исключаются ответы, вытекающие один из другого или дополняющие друг друга.

Задания с выбором одного верного ответа (ВО)

Примеры заданий:

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

A. средообразующей

D. концентрационной.

Различные типы заданий с выбором ответа

Примеры заданий ВО в повествовательной форме (в виде суждений)

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

2)скруббер

3)волокнистый фильтр

4)электрофильтр

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

1)мониторингом

2)аудитом

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

4) нормированием.

Задания на отрицание

В архейскую эру НЕ существовало...

A. беспозвоночных животных

C. анаэробных бактерий

Примеры заданий с рисунком

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

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

2)очистки газовых выбросов ТЭС

Примеры заданий формы множественный выбор «два из пяти» ( MB ):

К цветковым растениям относятся...

A. одуванчик лекарственный

B. рябина обыкновенная

C. ель европейская

D. сосна обыкновенная

E. плаун булавовидный

Примеры заданий формы множественный выбор «три из шести»(МВ):

выделял такие виды веществ в биосфере , как...

3) биоксное

4)твердое

5)мертвое

6)автотрофное

Пример задания формы установление последовательности (УП):

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

1)пожарище

2)кустарник

3)смешанный лес

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

1)поставить центрифужные пробирки в центрифугу

2)измельчить лист растения ножницами

3)растереть растительную навеску в ступке при помощи пестика

4)уравновесить центрифужные пробирки

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

Задания на установление соответствия (УС)

Общие требования

Задания контролируют умение установить соответствие между объектами или процессами и описанием их свойств и признаков. Задания на установление однозначного или множественного соответствия начинаются со слов: «Установите соответствие...».

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

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

Пример задания формы УС:

Установите соответствие между группами растений по отношению к свету и признаками растений:

ПРИЗНАКИ ЭКОЛОГИЧЕСКИЕ

ГРУППЫ РАСТЕНИЙ

1) Имеют темно-зеленый цвет; А) Светолюбивые

2) Не выносят малейшего затенения; Б) Тенелюбивые.

3) Процесс фотосинтеза преобладает над дыханием;

4) Не выносят сильной освещенности;

5) Растут под пологом леса;

6) Обитают на освещенных местах.

Задания открытой формы

Общие требования

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

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

Задания открытой формы подразделяются на задания с коротким ответом и задания с развернутым ответом или эссе.

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

Задания с коротким ответом (КО);

Задания на завершение утверждения (ЗУ);

Задания на заполнение пробела (ЗП);

Задания на завершение (или на конструирование) графического объекта (диаграммы, графика, схемы).

Примеры заданий формы КО:

1). Если ПДК нитратов для человека составляет 3,05 мг/кг в сутки, то для человека массой 68 кг допустимо поступление в организм этих веществ до___ мг.

2). Если норматив платы за выброс 1 тонны фенола в атмосферу в пределах установленных лимитов составляет 3,415 тыс. руб., то при выбросе предприятием 22 тонн данного загрязняющего вещества, выплаты составят___ тыс. рублей.

Задания на завершение утверждения

Представленный ниже график иллюстрирует закон __________________.

Изображенная на рисунке модель иллюстрирует закон ___________. ­­­­­­­­­ ­­­­­­­

ТИПИЧНЫЕ ОШИБКИ, ДОПУСКАЕМЫЕ ПРИ СОСТАВЛЕНИИ ВОПРОСОВ К ТЕСТУ

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

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

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

1) кислотные осадки и парниковый эффект

2)демографические параметры

3)извержения вулканов

4)естественные сукцессии

В правильном ответе и дистракторах содержится разное количество элементов ответа: В ходе световой фазы фотосинтеза происходит...

1) фотолиз воды и выделение свободного кислорода

2)фиксация углекислого газа

3)использование энергии АТФ

4)синтез глюкозы

К липидам относятся...

1) стероиды, терпены, воска и фосфолипиды

2)только стероиды

3)только терпены

4) только фосфолипиды.

Из дистракторов, как правило, исключаются все повторяющиеся слова путем ввода их в основной текст задания, например:

Неправильно Правильно

Области концентрации живого Области концентрации живого

вещества на границе двух сред вещества на границе двух сред

обитания обитания

назвал… назвал ________жизни.

1) узлами жизни 1) узлами

2)очагами жизни 2) очагами

3)рубежами жизни 3) рубежами

4)точками жизни 4) точками

Часть ответа лучше вынести в вопрос, например:
Неправильно Правильно

Для изучения тонкой структуры Для изучения тонкой структуры

клеточных органелл наиболее клеточных органелл наиболее эффективным оказался эффективным оказался метод

метод … ………. микроскопии.

1) электронной просвечивающей 1) электронной просвечивающей

микроскопии 2) электронной сканирующей

2)электронной сканирующей 3) флуоресцентной

микроскопии 4)световой

3)флуоресцентной микроскопии

4)световой микроскопии

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

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

1)биологическим

2)большом

3)геологический

4) антропогенным.

Не все иностранные фамилии можно склонять по падежам.

Неправильно Правильно

Роль микроорганизмов в Роль микроорганизмов в питании растений была питании растений была

выявлена в опытах, проведенных… выявлена в опытах, которые

4)Саксом Ю 4)

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

Неправильно Правильно

Пространство, на котором Пространство, на котором

популяция или вид в целом популяция или вид в целом

встречается в течение всей встречается в течение всей

своей жизнедеятельности, своей жизнедеятельности,

называется... называет(ют)ся...

1)ареалом 1) ареалом

2)площадью 2) площадью

3)зонами 3) зонами

4)территориями 4) территориями

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

Основные способы приспособления организмов к условиям окружающей среды - это...

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

2) все перечисленные, кроме активного пути

3) только активный путь

4) ни один из перечисленных вариантов ответа не верен.

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

Для защиты атмосферы от загрязнения проводят...

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

2)интродукцию растений

3)рекультивацию земель

4)мелиоративные мероприятия

Не следует в качестве дистракторов приводить понятия, явно не имеющие отношения к предмету тестирования:

Основы конституционного строя Российской Федерации

Правовой статус личности в Российской Федерации

Органы государственной власти в Российской Федерации

Основы гражданского права Российской Федерации

Граждане и юридические лица как субъекты гражданского права

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

Обязательства и договоры

Наследственное право Российской Федерации

Система наказаний по уголовному праву

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

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

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

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

Достоинства компьютерного тестирования:

объективность тестирования - персональный компьютер «беспристрастен» при предъявлении тестовых заданий и подсчете результатов их выполнения.

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

Удобство реализации процедур индивидуально-ориентированного тестирования.

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

Недостаток компьютерного тестирования:

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

В вузах существуют тестовые оболочки, куда заносятся вопросы и варианты ответов тестовых заданий (например «iTest», «My test» и др.). При подготовке компьютерного тестирования следует учитывать следующую (рекомендуемую) схему взаимодействия подразделений вуза (см. рис. 2).

43">



Рисунок 2. Схема взаимодействия подразделений в разработке и реализации компьютерного теста

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

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

Оценка «удовлетворительно» ставится, если студент ответил на от 55 до 70% вопросов.

Оценка «хорошо» ставится, если студент получил от 71 до 85%.

Оценка «отлично» ставится, если студент получил 86% и более правильных ответов.

1. Аванесов, B. C. Композиция тестовых заданий/ B. C. Аванесов. - М.: АДЕПТ, 1998.-216 с.

2. Воскресенская, качества подготовки студентов по дисциплине «Физиология растений» на основе результатов Интернет-экзамена/ , /Материалы Всероссийской конференции «Преподавание современной физиологии растений в университетах и вузах страны: проблемы и решения». - М., 2008.

3. Геворкян, Е. Н., Комплексная оценка высших учебных заведений/ , М. В.Петропавловский . - М.: Центр государственной аккредитации , 20с.

4. Ефремова, тестовые технологии в образовании/ . - Ростов-на-Дону: Издательский центр ДГТУ, 20с.

5. Киселева, определения уровня подготовки студентов по результатам аттестационных педагогических измерений/ , В. Г Наводнов. - Йошкар-Ола: Центр государственной аккредитации, 20с.

6. Клайн, П. Справочное руководство по конструированию тестов/ П. Клайн. - Киев, 1994.-238 с.

7. Майоров, и практика создания тестов для системы образования. / . - М: Народное образование, 20с.

8. Масленников, уровня обученное™ студентов в целях аттестации образовательного учреждения профессионального образования : Учебное пособие/, . - М.: Логос, 20с.

9. Мельников, использования и разработки тестов и обучающих программ: Методическое пособие / . - Домодедово: ВИПК МВД России, 19с.

10. Ю. Михайлычев, тестология / . - М.: Народное образование, 20с.

11. П. Морев, информационные технологии . Часть 2. Педагогические измерения: Учебное пособие/ . - Владивосток: Изд-во Дальневост. ун-та, 20с.

12. Переверзев, -ориентированное педагогическое тестирование: Учеб. Пособие/ . - М.: Логос, 20с.

1З. Родионов, и тесты в образовании / Б. У Родионов, . - М.: Б. и., 19с.

14.Н. Челышкова, и практика конструирования педагогических тестов: Учебное пособие/ . - М.: Исследовательский центр проблем качества подготовки специалистов, 20с.

Приложение 1

Классификация тестов

1. По процедуре создания:

Стандартизованные (в образовании, для целей итоговой аттестации);

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

2. По средствам предъявления:

Бланковые;

Предметные (манипулируем материальными объектами);

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

Компьютерные.

В рамках компьютерного тестирования B. C. Аванесов предлагает адаптивные тесты - задания, в которых предъявляются по одному, в зависимости от ответа испытуемого на предыдущий вопрос.

3. По направленности:

Тесты интеллекта;

Личностные тесты;

Тесты достижений.

4. По характеру действий:

Вербальные (с использованием умственных действий);

Невербальные (связанные с практическим манипулированием предметов).

5. По ведущей ориентации:

Тесты скорости (содержат простые задачи; время решения ограничено);

Тесты мощности или результативности (содержат трудные задачи, время решения не ограничено, или мягко лимитировано);

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

6. По степени однородности задач:

Гомогенные (задачи, сходные по характеру, но различающиеся конкретным содержанием);

Гетерогенные (задания отличаются и по характеру, и по содержанию).

7. По объективности оценивания:

Объективные (в процессе обработки результатов тестирования не предусматривается использование субъективных толкований тестирующим);

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

8. По специализации:

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

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

9. По целям использования

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

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

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

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

10. По широте использования (только для тестов в системе образования):

Для использования преподавателем;

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

Для целей отбора и формирования групп;

Для аттестации обучающихся.

11. По форме:

Тесты закрытого типа (задания с выбором верного ответа (или нескольких верных) из набора предлагаемых;

Тесты открытого типа (ввод предполагаемого ответа на задание самим тестируемым)

Приложение 2

Образец оформления титульного листа теста по дисциплине

Приложение 3

Образец оформления первого листа тестовых заданий

ОБЩИЕ СВЕДЕНИЯ О ТЕСТОВЫХ ЗАДАНИЯХ

2. Название цикла дисциплин учебного плана_ ________________________

3. Дисциплина (или дисциплины комплексного задания) __________________

4.Цель контроля ____________________________________________________

5.Общее количество тестовых заданий _________________________________

7.Форма (ы) заданий

Открытая_________________________________________________________

Закрытая (с выбором одного или нескольких заключений) _______________

На установление правильной последовательности ______________________

На установление соответствия _______________________________________

На конструирование и др. ___________________________________________

8. Время, на которое рассчитан тест____________________________________

9.Уровень сложности:

Легкие __________________________________________________________

Среднейтрудности_________________________________________________
- трудные _________________________________________________________

10. Критерии оценки:

Оценка 3 (удовлетворительно) 25-49 баллов ________% правильных ответов

Оценка 4 (хорошо) 50-74 баллов ________% правильных ответов

Оценка 5 (отлично) 75-100 баллов_______% правильных ответов

10.Кафедра(ы) – разработчик (и) контролирующих материалов ________________

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

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

I) Прочитать и понять эту книгу Роман Савин. Тестирование Дот Ком ;
II) Разобраться с SQL — запросами;
III) Разослать резюме;
IV) Показать свои знания и адекватность на собеседовании.

Теперь подробнее.

I) Прочитать и понять книгу

В книге около 300 страниц. За 1-2 дня прочитать несложно. Для тех, у кого нет времени на чтение, попробую изложить коротко основные моменты. Но рекомендую прочитать её полностью.

Участники разработки ПО:
1. Менеджер проекта — специалист, занимающийся вопросами поиска заказчиков проектов и исполнителей
2. QA-инженер — специалист, задача которого организовать процесс разработки таким образом, чтобы работа была выполнена в срок и на надлежащем уровне качества.
3. Продюсер — специалист, задача которого составить спецификацию (spec)
4. Программист — специалист, занимающийся написанием или корректировкой кода программы
5. Тестировщик — специалист, занимающийся поиском багов

Цикл разработки ПО состоит из:
1. Идея.
2. Разработка дизайна продукта и создание документации.
3. Кодирование или создание кода.
4. Исполнение тестирования и ремонт багов.
5. Релиз.

Цикл тестирования ПО состоит из трех этапов:
1. Изучение и анализ предмета тестирования.
2. Планирование тестирования.
3. Исполнение тестирования.

Основные понятия:

1. Тестирование — это сравнение фактического результата с ожидаемым.
2. Цели тестирования — нахождение багов до того, как их найдут пользователи.
3. Баг (bug) — это отклонение фактического результата от ожидаемого.
4. Спецификация (spec) — это детальное описание того, как должно работать ПО. Так же, это детальное описание ожидаемого результата. (В спецификации тоже могут быть баги, например, двусмысленные предложения).
5. Тест-кейс — это инструмент тестировщика, предназначенный для документирования и проверки одного или более ожидаемых результатов.
6. Тест-комплект — совокупность тест-кейсов находящихся, как правило, в одном документе, которые проверяют какую-то определенную часть нашего проекта.
7. Шаги тест-кейса (procedure) — это часть тест-кейса, ведущая исполнителя тест-кейса к фактическому результату. (Излишняя детализация может осложнить поддержку, а излишнее абстрагирование привести к непониманию того, как исполнить тест-кейс).
8. Front end — это непосредственный интерфейс пользователя (текст, картинки, кнопки, линки и прочие вещи, которые видно в окне приложения)
9. Back end — это то что на заднем фоне приложения (веб-сервер, код приложения, база данных и т.д.).
10. New feature testing — тестирование новых компонентов.
11. Regression testing — исполнение старых тест-кейсов для проверки того, что старые компоненты ПО еще работают.
12. СТБ (Bug Tracking System) — Система в которую заносятся баги.
13. Git — распределённая система управления версиями файлов (для управления коллекцией исправлений, патчей).

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

1. По знанию внутренностей системы:
черный ящик (black box testing) — тестирование программы без доступа к коду;
белый ящик (white box testing) — тестирование программы только по коду;
серый ящик (grey box testing) — тестирование без кода+тестирование по коду.

2. По объекту тестирования:
функциональное тестирование (functional testing) — например, проверка выводимого результата;
тестирование интерфейса пользователя (UI testing) — из названия понятно;
тестирование локализации (localization testing) — например, проверка шрифтов и другая адаптация приложения для пользователей;
тестирование скорости и надежности (load/stress/performance testing) — например, проверка скорости загрузки сайта при определенном количестве пользователей;
тестирование безопасности (security testing) — суть в том, чтобы усложнить условия для кражи данных (например телефонов и др. личной информации);
тестирование опыта пользователя (usability testing) — суть в том, чтобы интерфейс был интуитивно понятен даже непродвинутым пользователям;
тестирование совместимости (compatibility testing) — запуск на разных операционках и браузерах.

3. По субъекту тестирования:
альфа-тестировщик (alpha tester) — тестирование сотрудниками фирмы;
бета-тестировщик (beta tester) — тестирование пользователями.

4. По важности тестирования:
сначала тестирование новых функциональностей (new feature testing) — тестирование новых функциональностей;
потом регрессивное тестирование (regression testing) — повторное тестирование старых функций.

5. По критерию «позитивности»сценариев:
позитивное тестирование (positive testing) — тестируем ожидаемыми методами;
негативное тестирование (negative testing) — тестируем нестандартными методами(например вводим вместо 9 цифр — 11 букв).

6. По степени изолированности тестируемых компонентов:
компонентное тестирование (component testing) — это тестирование одного логического компонента;
интеграционное тестирование (integration testing) — это тестирование на уровне двух или больше логических компонентов;
системное тестирование (system or end- to-end testing) — это проверка всей системы от начала до конца.

7. По степени автоматизированности тестирования:
ручное тестирование (manual testing) — это исполнение тест-кейсов без помощи каких-либо программ, автоматизирующих вашу работу (например, создаем аккаунт вручную);
автоматизированное тестирование (automated testing)- акаунт создается программой автоматически;
смешанное/полуавтоматизированное тестирование (semi automated testing) — создаем акаунт вручную, но закупки сделаются автоматически.

8. По степени подготовки к тестированию:
тестирование по документации (formal/documented testing) — тестирование по тест-кейсам;
эд хок-тестирование (ad hoc testing) — интуитивное тестирование без документации (например, когда что-то нужно быстро проверить).

Пример тест-кейса:

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

II) Разобраться с SQL запросами

SQL (structured query language) — структурированный язык запросов.
С помощью SQL- запросов можно создавать и работать с реляционными базами данных.
Реляционная база данных — это таблица, в которой в качестве столбцов выступают поля данных, а каждая строка хранит данные.

SQL определяется Американским Национальным Институтом Стандартов и Международной Организацией по стандартизации (ISO)
Несмотря на это, некоторые производители баз данных вносят изменения и дополнения в этот язык. Эти изменения незначительны и основа остаётся совместимой со стандартом. (например ms sql, my sql, postgreSQL).

В каждой таблице должно быть одно уникальное поле, которое однозначно будет идентифицировать строку. Это поле назовем ключевым (Key1, Key2..).
В качестве ключа обычно используют численный тип и если позволяет база данных, то он будет типа «autoincrement» (автоматически увеличивающееся).

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

SQL может быть двух типов: интерактивный и вложенный. Интерактивный — это отдельный язык, он сам выполняет запросы и сразу показывает результат работы. Второй — это когда SQL язык вложен в другой, например в С++ или Delphi.

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

Представим, что у нас есть две таблицы:

Prog.db
Key1 / ProgName / Cost
1 / Windows 95 / 100
2 / Windows 98 / 120

User.db
Key1 / Key2 / LastName
1 / 1 / Иванов
2 / 1 / Петров
3 / 2 / Сидоров

Рассмотрим первый запрос:

SELECT *
FROM Prog, User
WHERE Prog.Key1= Key2
AND ProgName LIKE "Windows 95"

Выбрать (SELECT) все поля (*) из (FROM) баз данных Prog и User, где (WHERE) есть связь(Prog.Key1 и Key2) Prog.Key1= Key2 и ProgName LIKE "Windows 95".
LIKE это тоже самое что равно(=) только для строк

Результатом этого запроса будет:

Prog.db User.db
1 / Windows 95 / 100 / 1 / 1 / Иванов
1 / Windows 95 / 100 / 2 / 1 / Петров

Отредактируем немного запрос:
SELECT Prog.Key1, Prog.ProgName, Prog.Cost*2 "руб",
Cost.Key1, Cost.Key2, Cost.LastName
FROM Prog, User
WHERE Prog.Key1= Key2

Prog.Cost*2 "руб" — эта запись говорит, что к каждое значение надо умножить на 2 и прибавить строку "руб".

Результат:
Prog.db User.db
Key1 / ProgName / Cost / Key1 / Key2 / LastName
1 / Windows 95 / 200 руб / 1 / 1 / Иванов
1 / Windows 95 / 200 руб / 2 / 1 / Петров

Для сортировки используется команда ORDER BY. После этого пишутся поля, по которым надо отсортировать. В самом конце нужно поставить АSC (сортировать в порядке возрастания) или DESC (в порядке убывания). Если ты не ставишь АSC или DESC, то таблица сортируется по возрастанию и подразумевается параметр АSC.

Например:
SELECT *
FROM Prog
ORDER BY ProgName DESC

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

SQL калькулятор:
Вот несколько функций:
COUNT — подсчёт количества строк;
SUM — подсчёт суммы;
AVG — подсчёт среднего значения;
MAX — поиск максимального значения;
MIN — поиск минимального значения.

Этот запрос просто подсчитывает количество строк в базе:
SELECT COUNT(LecNumber)
FROM User

Этот запрос опять подсчитывает количество строк, но теперь результатом будет количество народу, у которых поле LecNumber = 1:
SELECT COUNT(LecNumber)
FROM User
WHERE LecNumber=1

Этот запрос выводит количество лицензий и единицу измерения в одном столбце. Здесь к числу прибавляется текст:
SELECT LecNumber+"шт."
FROM User

Работа с полями:
NSERT (вставить), UPDATE (модифицировать), DELETE (удалить).
После оператора VALUES идёт перечисление всех полей строки. Теперь рассмотрим пример:
INSERT INTO User1
VALUES ("Иванов", "Сергей", 34);

Этой командой мы вставили строку и присвоили значения полям. В таблице три поля: первые два поля строковые (Фамилия и Имя), последнее поле — целое число (возраст). Типы данных обязаны совпадать с теми, что установлены в таблице.

Если не надо задавать все поля, тогда можно оставить их пустыми с помощью NULL:
INSERT INTO User1
VALUES ("Иванов", NULL, 34);

Если таблица с большим количеством полей и нужно заполнить только два из них?
Решение:

INSERT INTO User1 (Family, Age)
VALUES ("Иванов", 35);

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

INSERT INTO User1
SELECT *
FROM User2
WHERE Age=10

В этом примере сначала выполнится запрос SELECT:

SELECT *
FROM User2
WHERE Age=10

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

Теперь рассмотрим такой запрос:

INSERT INTO User1(Name,Age)
SELECT Name,Age
FROM User2
WHERE Age=10

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

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

UPDATE User1
SET age=65

Первая строка говорит о том, что нам надо обновить базу User1. Вторая строка начинается с оператора SET (установить). После этого мы пишем поле, которое хотим обновить, и присваиваем ему значение.

Если нужно обновить только определённые строки, то ты должен написать так:
UPDATE User1
SET age=65
WHERE Name LIKE "Вася"

UPDATE User1
SET age=age+1

UPDATE User1
SET age=age+1, Name="Иван"
WHERE Family LIKE "Сидоров"

Этот запрос увеличит поле Age на единицу и установит поле Name в «Иван» во всех строках, где поле Family равно «Сидоров».

Теперь команда DELETE:

DELETE FROM User1

Эта конструкция удаляет абсолютно все строки из таблицы User1. Можно сказать, что этим мы очищаем таблицу.

Теперь рассмотрим другой пример:

DELETE FROM User1
WHERE Age=10

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

Понимания этих запросов будет достаточно.

III) Разослать резюме

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

IV) Показать свои знания и адекватность на собеседовании

Обычно собеседование делятся на 3 этапа:
1) Встреча с девушкой из отдела кадров. На этом этапе будет несколько вопросов по вашим знаниям, чтобы было понятно, что вы в «теме» и много общих вопросов, чтобы определить вашу адекватность.
2) Тестовое задание — обычно дается на дом
3) Встреча с руководителем где будут вопросы, касающиеся ваших навыков тестирования.

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

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

Рассмотрим основные вопросы и и примеры самых обычных ответов на них:

1) Почему вы решили стать тестировщиком?
Меня всегда тянуло в IT сферу, эта профессия больше всего подходит моему характеру и моим интересам.

2) Что больше всего вам нравится в тестировании?
Я обожаю анализировать и изучать программы, например на прошлом месте работы мне больше всего нравилось работать с 1с, я даже смог поставить одну из версий себе на домашний компьютер, для более детального изучения программы, без всяких ограничений.

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

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

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

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

7) Что бы вы пожелали усовершенствовать в себе? Что вы для этого делаете?
У меня есть хобби — программирование. Хочу совершенствовать свои навыки в этой области, они же в дальнейшем помогут улучшить мои навыки тестировщика.

8) Что вы ждете от нашей компании?
Хороший коллектив, и профессиональное развитие

9) Какой минимальный доход вас устроит?
Можно посмотреть средний доход по региону на эту вакансию и назвать его. Но, если вы проходите собеседование в 2гис, то говорите что готовы работать бесплатно 24/7/365, как рекомендует

Похожие статьи