Добрый день. Вопрос №1 Какова стоимость получения диплома о мини-МБА по данному курсу? Или ориентироваться на указанную на сайте? Вопрос №2 Возможно ли начать обучение без потери результатов, не отправив документы на зачисление, а отправку выполнить позже? |
Реализация задачи по разработке
Тестирование требования к качеству
Задача реализации требования к качеству передается на тестирование, когда в текущей сборке отражены ограничения, накладываемые данным требованием. Для проверки упомянутых ограничений нужно понимать, с чем они связаны. Зачастую с требованием связаны сценарии, которые демонстрируют эти ограничения. Тестирование требования к качеству подразумевает успешное завершение тестов на производительность, безопасность, стресс и нагрузку. На основании результатов тестирования создаются описатели дефектов, в которых документируются обнаруженные проблемы.
Операция: Определение подхода к тестированию
Подход к тестированию - это документ, определяющий стратегию создания и выполнения тестов. В нем также определены стандарты качества для поставляемого продукта. Подход к тестированию служит отправной точкой для планирования тестов в начале проекта, но продолжает существовать и меняться по ходу проекта. Подход должен описывать различные методики, например тесты, как ручные, так и автоматические. Формулирование подхода к тестированию включает определение контекста теста и его конечной цели (или целей), а также выбор подходящих методик, с учетом целей и в контексте проекта. Перед началом очередной итерации данный документ нужно слегка корректировать, отражая цели тестирования в предстоящей итерации и добавляя описание используемых тестовых данных.
Определите контекст проекта | Определите риски проекта, а также пользователей, на которых может сказаться их воздействие. Найдите особые ситуации, которые могут повлиять на уровень необходимого тестирования. Например, действующие в предметной области нормы могут влиять на направления тестирования |
---|---|
Определение цели теста | Определите цели проекта, достижению которых будет способствовать тест |
Оценка возможных методов тестирования | Рассмотрите различные инструментальные средства для тестирования |
Определение показателей тестирования | Совместно с разработчиками определите реалистические пороговые значения, которые будут критериями прохождения теста. Это обязательный показатель |
Операция: Создание теста производительности
С помощью теста производительности определяется время реакции приложения и проверяется соответствие требованиям к качеству. Тестирование производительности необходимо проводить в каждой итерации и резервировать время для устранения основных проблем и для проведения повторного тестирования.
Определение назначения теста | Необходимо четко сформулировать назначение теста. Например, с помощью теста проверяется отсутствие существенных различий во времени отклика системы для пользователей с различными способами подключения к Интернету |
---|---|
Описание конфигурации теста | Определите конфигурацию теста |
Проектирование теста | Систематизируйте тестируемые события и соответствующие им сценарии. Разделите сценарии на области, критичные и не критичные к производительности. Совместно с архитектором постройте модель производительности, которая будет основой для кодирования |
Документирование этапов тестирования | Выделите и опишите этапы тестирования, чтобы тестировщики могли единообразно выполнять и интерпретировать тесты. Ошибки на этом шаге могут привести к неверной оценке производительности. Везде, где это возможно, автоматизируйте создание тестовых заданий |
Операция: Создание теста безопасности
Тесты безопасности или испытания на проникновение (penetration tests) имеют дело с угрозами, выявленными при проектировании. Тестирование этого типа делится на три части: изучение, определение нарушений и розыск. В результате испытания на проникновение могут быть обнаружены новые уязвимости, что повлечет за собой формулирование новых требований к качеству или идентификацию дефекта. В результате реализации такого требования или устранения дефекта должны быть заблокированы соответствующие точки входа и доступ к ресурсам. Из этого следует, что тестировщики должны быть осведомлены об элементах модели угроз не хуже архитекторов. Данный вид тестирования требует специальных навыков: нужно уметь имитировать действия потенциального злоумышленника. Доступ к модели угроз дает тестировщикам возможность систематически атаковать систему в целях проверки, не нарушая ее работу.
Операция: Создание стрессового теста
Стресс-тесты позволяют определить предельные возможности приложения. С их помощью выясняют верхнюю границу, перейдя которую приложение не обеспечивает приемлемого уровня реактивности и полностью прекращает работу. Например, можно дать приложению высокую нагрузку и посмотреть, нет ли утечек памяти и нормально ли освобождаются объекты сборщиком мусора.
Стресс-тесты должны проводиться в каждой итерации. Они являются разновидностью тестов производительности и позволяют проверять экстремальные условия работы приложения, например, когда нагрузка превышает типичную или длится дольше обычного. Стресс-тесты позволяют спрогнозировать поведение приложения при превышении максимально возможной нагрузки. Также они служат для проверки устойчивости и надежности приложения.
Определение назначения теста | Назначение стресс-теста должно быть четко сформулировано, наряду с описанием конкретных параметров и условий, таких как предельные значения |
---|---|
Проектирование автоматизированного теста | Систематизируйте особенности тестовой среды, условия тестирования, включая предпосылки, число виртуальных пользователей, сценарий и ресурсы. Разберитесь с распределением действий и сценариев |
Создание теста | Задокументируйте выполняемые пользователем действия. Добавьте проверку корректности получаемых результатов в стрессовых условиях. Чтобы тесты были динамичными, используйте привязку к данным - обращение к таким источникам данных, как SQL Server, Microsoft Excel или Microsoft Access |
Операция: Создание нагрузочного теста
Нагрузочный тест является разновидностью теста производительности. Нагрузочные тесты позволяют проверить соответствие приложения требованиям к качеству в условиях нагрузки. С их помощью измеряется производительность приложения в типичных сценариях работы пользователей. Нагрузочные тесты позволяют спрогнозировать поведение приложения при достижении максимальной нагрузки. Нагрузочными тестами целесообразно проверять те 20% кода приложения, на которые приходится 80% его работы.
Определение назначения теста | Назначение нагрузочного теста должно быть четко сформулировано, наряду с описанием конкретных параметров и условий, таких как допустимый диапазон значений |
---|---|
Проектирование автоматизированного теста | Систематизируйте особенности тестовой среды, условия тестирования, включая предпосылки, число виртуальных пользователей, сценарий и ресурсы. Разберитесь с распределением действий и сценариев |
Создание теста | Задокументируйте выполняемые пользователем действия. Добавьте проверку корректности получаемых результатов в стрессовых условиях. Чтобы тесты были динамичными, используйте привязку к данным - обращение к таким источникам данных, как SQL Server, Microsoft Excel или Microsoft Access |
Операция: Выбор и запуск тестового задания
Самый важный момент в тестировании - это собственно выполнение тестов соответствующей сборки. Результаты тестов могут быть совершенно разными: от успешного завершения до полного выхода системы из строя. Нельзя забывать фиксировать результаты тестов в описателе соответствующего сценария или требования к качеству.
Операция: Документирование дефекта
Прежде чем создавать описатель нового дефекта, проверьте, не регистрировалась ли прежде подобная проблема. В противном случае, зафиксируйте все подробности в системе отслеживания дефектов. Необходимо описать последовательность воссоздания проблемы, после чего, в процессе классификации, ей будет назначен приоритет. Опишите дефект как можно подробней - это поможет специалистам определить оптимальный путь его устранения. Каждому открытому дефекту должен быть назначен владелец.
Проверка повторения дефекта | Прежде чем создавать описатель нового дефекта, проверьте, нет ли описания аналогичного дефекта в базе данных |
---|---|
Описание дефекта | Если аналогов у дефекта нет и он может быть воспроизведен, выполните последовательность действий, приводящую к его появлению и подробно обрисуйте происходящее в описателе |
Назначение дефекта | Определите основную область проблемы. Если затрагивается несколько областей, выберите одну |
Операция: Выполнение исследовательских тестов
Исследовательское тестирование - это способ проверки продукта без определенного набора тестов. Для исследовательского тестирования подходят многие эвристические методы. Среди них - использование собирательных образов, прилагательные и наречия, анализ переменных, поиск диапазона и тестирование различных состояний.
Представленный в данном руководстве эвристический метод описывает, как продукт тестируется с точки зрения собирательного образа с целью сбора новых требований. Для проведения подобного тестирования представьте собирательный образ и выполняйте функции системы, пытаясь достичь определенной цели. Если вы обнаружите новые потенциальные цели или выясните, что существующие функции не удовлетворяют требованиям собирательного образа, добавьте новые или измените существующие сценарии. Ограничивайте сеансы исследовательского тестирования двумя часами.
Установка продолжительности сеанса | Продолжительность сеанса исследовательского тестирования не должна быть меньше получаса и больше двух часов |
---|---|
Удовлетворение потребностей собирательного образа | Выберите собирательный образ из опубликованного списка персонажей |
Обнаружение новых целей | Проанализируйте трудности, с которыми сталкивается собирательный образ. Если преодолеть их очень сложно, откройте новый дефект или добавьте в список сценариев новый сценарий или требование к качеству |