39069

Тестированию программного обеспечения с использованием языка программирования C# и NUnit-тестов

Доклад

Информатика, кибернетика и программирование

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

Русский

2013-09-30

82.5 KB

20 чел.

Тестированию программного обеспечения с использованием языка программирования C# и NUnit-тестов (Доп 4

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

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

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

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

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

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

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

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

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

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

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

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

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

• Может ли тестовая группа предпринять на данной стадии какое-либо действие, способное предотвратить утечку дефектов?

• Может ли тестовая группа предпринять на данной стадии какое-либо действие, позволяющее уменьшить риск нарушения временного графика разработок?

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

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

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

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

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

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

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

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

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

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

4) Системное тестирование проводится для удостоверения того, что программное обеспечение делает именно то, что от него ожидает пользователь.

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

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

Для проведения примера тестирования понадобится среда разработки Visual Studio 2010 с версией .Net 4.0, а также установленной библиотекой для проведения тестов – NUnit Framework.

Основные методы класса Assert для проведения динамического тестирования программного обеспечения:

Название метода

Описание

Пример

IsTrue

IsFalse

Проверка логического выражения на истину или ложь

Assert.IsTrue(true);

Assert.IsFalse(false);

IsNull

IsNotNull

Провекра выражения на пустую ссылку

IsNull(null);

IsNotNull(“string”)

Equals

Проверка на равенство двух объектов или структур

String a = “abc”;

String b = “abc”;

Assert.Equals(a, b)

IsInstanceOf

Проверка на соответствие типов

A1 = new A();

B1 = new A();

IsIstanceOf(A1, B1)


 

А также другие работы, которые могут Вас заинтересовать

33421. Понятие «корпоративная культура» и отношение к феномену корпоративной культуры 39 KB
  Основу корпоративной и организационной культуры составляют те идеи взгляды основополагающие ценности которые разделяются членами организации. Свойства корпоративной культуры базируются на признаках: всеобщность не формальность устойчивость. Всеобщность корпоративной культуры выражается в том что она охватывает все виды действий осуществляемых в организации.
33422. Краткое содержание. Корпоративный кодекс в организации 34 KB
  Корпоративный кодекс в организации Создание корпоративного кодекса это один из способов обеспечения информационной открытости и публичности компании свидетельство приверженности высоким стандартам корпоративного поведения. Корпоративный кодекс это открытая книга повествующая о принципах деятельности компании отвечающая на вопросы о том куда двигается предприятие как себя позиционирует. Послание от руководителей компании. Организационная структура компании главные персоналии.
33423. Невербальное общение и его роль в формирования имиджа управленца 19.73 KB
  Оно может либо дополнять и усиливать словесное общение либо ему противоречить и ослаблять. Невербальное общение не так сильно структурировано как вербальное.
33424. Основы имиджелогии. Структура имиджа и его составляющие 26.48 KB
  Структура имиджа и его составляющие. В ряде определений получила отражение знаковая информационно символическая природа имиджа. Но данный аспект в технологии имиджа на мой взгляд не главное. В этом определении ощутим акцент на таком прагматическом результате построения имиджа как передача информации о субъекте в виде его имиджа адресату в качестве которого выступает социальная группа.
33425. Финансовый менеджмент 22.96 KB
  Эффективное управление финансовой деятельностью предприятия обеспечивается реализацией принципов основными из которых являются: интегрированность с общей системой управления предприятием; комплексный характер формирования управленческих решений; высокий динамизм управления; многовариантность подходов к разработке отдельных управленческих решений; ориентированность на стратегические цели развития предприятия. Главной целью финансового менеджмента является обеспечение максимизации благосостояния собственников предприятия в текущем и...
33426. Управление денежными активами или остатком денежных средств и их эквивалентов 21.97 KB
  Размер остатка денежных активов которым оперирует предприятие в процессе хозяйственной деятельности определяет уровень его абсолютной платежеспособности влияет на размер капитала инвестируемого в оборотные активы а также характеризует в определенной мере его инвестиционные возможности. Операционный или трансакционный остаток денежных активов формируется с целью обеспечения текущих платежей связанных с операционной деятельностью предприятия: по закупке сырья материалов и полуфабрикатов; оплате труда; уплате налогов; оплате услуг...
33427. Управление затратами и себестоимостью продукции 23.55 KB
  Проведение общего анализа издержек предприятия: Анализ учетной политики предприятия; Формирование классификатора потребляемых ресурсов; АВС–анализ структуры затрат по видам ресурсов; Классификация затрат (переменные/постоянные, прямые/косвенные); Факторный анализ тенденций изменений структуры затрат
33428. Управление денежными средствами 25.91 KB
  Устанавливается минимальная величина денежных средств которую целесообразно иметь на р с исходя из средней потребности денег для оплаты банковских счетов и других требований; 2. определяются расходы по хранению средств на р с 4. рассчитывается верхняя граница денежных средств исходя из того что при ее достижении часть ДС необходимо будет конвертировать в ценные бумаги.
33429. Управление рисками 23.62 KB
  Выявление всех потенциальных рисков и анализ возможных потерь. Оценка и ранжирование потенциальных рисков. Выбор методов и определение путей снижения рисков. Пока риск не определен невозможно предпринять какиелибо меры по его минимизации поэтому первой стадией в управлении риском является идентификация вероятных рисков.