Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


В nUnit поддерживаются две модели для утверждений – классическая и закрытая.



· Классическая модель предполагает непосредственное обращение к методам класса Assert так, как это было сделано в вышеприведенных примерах.

· Закрытая модель

o В закрытой модели (constraint-based model) используется единственный метод класса Assert – метод That.

o Этот метод возвращает объект, в котором реализована вся логика, необходимая для проверки утверждения Assert.That( myString, Is.EqualTo("Hello") );

o При таком вызове создается объект EqualConstraint, реализующий необходимую логику, поэтому вышеприведенный пример можно переписать в виде:

Assert.That( myString, new EqualConstraint("Hello"));

Основные виды утверждений:

· Все утверждения nUnit можно разделить на несколько групп:

-утверждения равенства (Equality Asserts)

-утверждения сравнения (Comparison Asserts)

-утверждения о типах (Type Asserts )

-утверждения о строках (StringAssert)

Утверждения равенства

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

· Два основных метода AreEqual и AreNotEqual реализованы для разных типов данных

· При несовпадении типов осуществляется корректное приведение к необходимому типу

· При сравнении вещественных значений в качестве третьего аргумента задается требуемая точность: Assert.AreEqual( float expected, float actual, float tolerance );

· Допускается сравнение массивов и коллекций: два массива считаются равными, если равны их размеры и совпадают значения соответствующих элементов.

Утверждения сравнения

· Осуществляют сравнение двух величин.

· Основные методы :

-Assert.Greater( int arg1, int arg2 );

-Assert.GreaterOrEqual( int arg1, int arg2 );

-Assert.Less( int arg1, int arg2 );

-Assert.LessOrEqual ( int arg1, int arg2 );

· Подобные методы реализованы и для других типов аргументов

Утверждения о типах

· Позволяют проверить принадлежность объекта определенному типу.

· Основные методы :

-Assert.IsInstanceOfType( Type expected, object actual );

-Assert.IsNotInstanceOfType( Type expected, object actual );

-Assert.IsAssignableFrom( Type expected, object actual );

-Assert.IsNotAssignableFrom( Type expected, object actual );

Утверждения о строках

· Основные методы:

-StringAssert.Contains( string expected, string actual );

-StringAssert.StartsWith( string expected, string actual );

-StringAssert.EndsWith( string expected, string actual );

-StringAssert.AreEqualIgnoringCase( string expected, string actual );

-StringAssert.IsMatch( string expected, string actual );

Проверка условий

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

-Assert.IsTrue( bool condition );

-Assert.IsFalse( bool condition);

-Assert.IsNull( object anObject );

-Assert.IsNotNull( object anObject );

-Assert.IsEmpty( string aString );

-Assert.IsNotEmpty( string aString );

Атрибуты

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

· Все атрибуты содержатся в пространстве имен NUnit.Framework, которое должно быть включено в любой файл, содержащий тесты

Директивы, категории директив.

Существует пять категорий директив:

1. -Test Identification

2. -Test Selection

3. -Test Modification

4. -Setup and Teardown

5. -Parameterized Tests

Идентификаторы тестов

· Позволяют выделять:

-класс, содержащий методы-тесты [TestFixture]

-отдельные методы этого класса [Test]

-а также давать описания тестов [Test, Property("Severity", "Critical")]

Утилита модульного тестирования NUnit . Средства описания тестов.

Утилита nUnit

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

· Одной из наиболее популярных из них является свободно распространяемая утилита nUnit.


Поделиться:



Последнее изменение этой страницы: 2019-05-08; Просмотров: 143; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.012 с.)
Главная | Случайная страница | Обратная связь