Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПЗ МО417 Ибрагимова КБ 24.06.docx
Скачиваний:
53
Добавлен:
14.09.2022
Размер:
4.85 Mб
Скачать
  1. Формальная постановка задачи

Формальной постановке задачи соответствует контекстная диаграмма методологии IDEF0, приведенная на рисунке.

Рисунок 1.2 – Формальная постановка задачи

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

  1. Структура решения задачи, декомпозиция задачи на подзадачи

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

Рисунок 1.3 – Структура решения задачи

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

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

Затем выполняются модульные тесты согласно структуре. Все результаты прохождения фиксируются.

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

Глава 2. Анализ моделей и методов решения

2.1. Ручное тестирование.

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

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

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

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

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

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

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

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

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

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

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

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