Основные Атрибуты NUnit для написания автотестов на C#


Атрибуты NUnit для Тест сьюта и тест кейсов

Все классы в проекте, помеченные атрибутом [TestFixture] означают что данный класс содержит автотесты и фактически это тест сьют. Внутри данного класса должны размещаться методы с атрибутами [Test] которые в свою очередь и означают что данные методы это тест кейсы (автотесты)
[TestFixture]
public class Tests
{
 [Test]
 public void Test1() { }

 [Test]
 public void Test2() { }
}


Атрибуты NUnit для выполнения перед и после Тест сьюта

Бывают случаи когда требуется выполнение какого либо действия перед и после выполнения всего тест сьюта. Для этого используют атрибуты [TestFixtureSetUp] — выполняется перед запуском всех тестов из всего тестового класса и [TestFixtureTearDown] — выполняется после выполнения всех тестов в тестовом наборе. В коде это будет выглядеть таким образом:

[TestFixture]
public class Tests
{
 [TestFixtureSetUp]
 public void BeforeTestSuit() { }

 [TestFixtureTearDown]
 public void AfterTestSuit() { }
}


Атрибуты NUnit для выполнения перед и после каждого Тест кейса

Чтобы метод выполнялся перед запуском каждого теста в текущем тест сьюте то данный метод следует пометить атрибутом [SetUp]
Также есть атрибут, который позволяет запускать метод после каждого теста — это [TearDown]

[TestFixture]
public class Tests
{
 [SetUp]
 public void BeforeTest() { }

 [TearDown]
 public void AfterTest() { }
}


Атрибуты NUnit для выполнения перед и после всех Тест сьютов

Бывает также ситуация когда нужно выполнить кокой-то метод перед и после всех тест сьютов в нашем проекте. Для таких случаев следует создать отдельный класс, который будет помечен атрибутом [SetUpFixture] а внутри него 2 метода с атрибутами [SetUp] и [TearDown]. В коде выглядит так:
namespace NUnit.Tests
{
  using System;
  using NUnit.Framework;

  [SetUpFixture]
  public class SetUpClass
  {
    [SetUp]
	RunBeforeAllTests(){ }

    [TearDown]
	RunAfterAllTests(){ }
  }
}


0 комментариев