Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Разработка через тестирование.Содержание книги
Поиск на нашем сайте } Не писать код, пока не будет написан автономный тест, который не проходит. } Не писать автономный тест большего объема, чем необходимо для неудачного завершения или неудачной компиляции. } Не писать больше кода, чем необходимо для того, чтобы ранее не проходивший тест завершился успешно. } Написание теста до кода способствует проектированию кода, который было бы удобно вызывать. } Предварительное написание тестов заставляет писать слабо связанные программы! } Тесты могут выступать как чрезвычайно полезная документация. Она всегда актуальна. Она не лжет.
Коллективное владение кодом Коллективное владение кодом стимулирует разработчиков подавать идеи для всех частей проекта, а не только для своих модулей. Любой разработчик может изменять любой код для расширения функциональности и исправления ошибок. С первого взгляда это выглядит как хаос. Однако, принимая во внимание, что как минимум любой код создан парой разработчиков, что тесты позволяют проверить корректность внесенных изменений и что в реальной жизни все равно так или иначе приходится разбираться в чужом коде, становится ясно, что коллективное владение кодом значительно упрощает внесение изменений и снижает риск, связанный с высокой специализацией того или иного члена команды.
Непрерывная интеграция Разработчики, по-возможности, должны интегрировать и выпускать свой код каждые несколько часов. В любом случае никогда нельзя держать изменения дольше одного дня. Частая интеграция позволяет избежать отчуждения и фрагментирования в разработке, когда разработчики не могут общаться в смысле обмена идеями или повторного использования кода. Каждый должен работать с самой последней версией. Каждая пара разработчиков должна отдавать свой код, как только для этого появляется разумная возможность. Это может быть, когда все UnitTest-ы проходят на 100%. Отдавая изменения несколько раз в день, Вы сводите проблемы интеграции практически к нулю. Интеграция — это деятельность вида «заплати сейчас или заплати больше позднее». Поэтому, интегрируя изменения ежедневно маленькими порциями, вы не окажетесь перед необходимостью тратить неделю, чтобы связать систему в одно целое непосредственно перед сдачей проекта. Всегда работайте над последней версией системы.
31. Раскрыть понятие тестирование и испытание ПО. Перечислить классы ошибок, этапы тестирования ПО. Дать понятие к ачество и критерии качества программного средства. Тестирование программного обеспечения — процесс, позволяющий определить корректность, полноту и качество разработанного программного обеспечения (ПО).
Испытание - техническая операция, заключающаяся в определении одной или нескольких характеристик данной продукции, процесса или услуги в соответствии с установленной процедурой.
Классы ошибок: - логические и функциональные ошибки - являются причиной нарушения логики алгоритма, внутренней несогласованности переменных и операторов, а также пра-вил программирования; - ошибки вычислений и времени выполнения - возникают по причине неточности исходных данных и реализованных формул, погрешностей методов, неправильного применения операций вычислений или операндов; - ошибки ввода–вывода и манипулирования данными - являются следствием некачественной подготовки данных для выполнения программы, сбоев при занесении их в базах данных или при выборке из нее; - ошибки интерфейсов - относятся к ошибкам взаимосвязи отдельных элементов друг с другом, что проявляется при передаче данных между ними, а также при взаимодействии со средой функционирования; - ошибки объема данных и др. - относятся к данным и являются следствием того, что реализованные методы доступа и размеры баз данных не удовлетворяют объемам информации системы или интенсивности ее обработки
Процесс тестирования состоит из следующих этапов: - Планирование тестирования - Мониторинг и контроль тестирования - Анализ тестирования - Проектирование тестов - Реализация тестов - Выполнение тестов - Завершение тестирования
Качество ПО – это совокупность характеристик программного обеспечения, относящихся к его способности удовлетворять установленные и предполагаемые потребности.
Критерии качества ПО: - Надежность - Сопровождаемость - Удобство использования - Эффективность - Универсальность - Функциональность
32. Раскрыть понятие тестирование и испытание ПО. Описать методы тестирования (метод классов, стратегии «белого и черного ящика»). Тестирование программного обеспечения — процесс, позволяющий определить корректность, полноту и качество разработанного программного обеспечения (ПО).
Испытание - техническая операция, заключающаяся в определении одной или нескольких характеристик данной продукции, процесса или услуги в соответствии с установленной процедурой.
Метод «Черного ящика» - это стратегия или метод тестирования, базируется только лишь на тестировании по функциональной спецификации и требованиям, при этом не смотря во внутреннюю структуру кода и без доступа к базе данных. - Фактически мы знаем какой должен быть результат при определенном наборе данных, которые подаются на вход. Результат проверяем с юзер интерфейса на уровне простого пользователя. - Суть заключается в том, что для тестирования черным ящиком чтобы протестировать программу, не заглядывая «внутрь» как же там все работает. Нам достаточно знать, что должно быть при таком-то поведении пользователя и при таких-то наборах данных (зависит от специфики проекта).
Метод «Белого ящика»: - метод тестирования программного обеспечения, который предполагает, что внутренняя структура/устройство/реализация системы известны тестировщику. - Мы выбираем входные значения, основываясь на знании кода, который будет их обрабатывать. Точно так же мы знаем, каким должен быть результат этой обработки. Знание всех особенностей тестируемой программы и ее реализации – обязательны для этой техники. Тестирование белого ящика – углубление во внутренне устройство системы, за пределы ее внешних интерфейсов. - тестирование белого ящика – это: - тестирование, основанное на анализе внутренней структуры компонента или системы. - тест-дизайн, основанный на технике белого ящика – процедура написания или выбора тест-кейсов на основе анализа внутреннего устройства системы или компонента.
Преимущества: - тестирование может производиться на ранних этапах: нет необходимости ждать создания пользовательского интерфейса; - можно провести более тщательное тестирование, с покрытием большого количества путей выполнения программы. Недостатки: - для выполнения тестирования белого ящика необходимо большое количество специальных знаний - при использовании автоматизации тестирования на этом уровне, поддержка тестовых скриптов может оказаться достаточно накладной, если программа часто изменяется.
Модульное тестирование: - Компонентное (модульное) тестирование проверяет функциональность и ищет дефекты в частях приложения, которые доступны и могут быть протестированы по-отдельности (модули программ, объекты, классы, функции и т.д.). - Идея состоит в том, чтобы писать тесты для каждой нетривиальной функции или метода. Это позволяет достаточно быстро проверить, не привело ли очередное изменение кода к регрессии, то есть к появлению ошибок в уже оттестированных местах программы, а также облегчает обнаружение и устранение таких ошибок.
|
||
|
Последнее изменение этой страницы: 2021-12-07; просмотров: 117; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.216.198 (0.009 с.) |