Nunit3.0 Как использовать onetimeteardown - PullRequest
0 голосов
/ 16 января 2019

Я использую Nunit 3.0, и мои [Setup] и [TearDown] и [OneTimeTearDown] методы находятся в базовом классе, а базовый класс наследуется всеми тестовыми классами.

Если я создаю список воспроизведения из nunit с тестовыми примерами из разных классов или приборов, [OneTimeTearDown] выполняется для каждого тестового класса или каждой тестовой фиксации.

Мой метод [OneTimeTearDown] отправляет отчет о выполнении теста по электронной почте, но с вышеупомянутой проблемой он отправляет несколько электронных писем.

1 Ответ

0 голосов
/ 16 января 2019

Если вы хотите, чтобы метод выполнялся только один раз за тестовый запуск, поместите его в класс с атрибутом [SetUpFixture]

[SetUpFixture]
public class TestSuiteInit
{
    [OneTimeSetUp]
    public void Init()
    {
    }

    [OneTimeTearDown]
    public void Bye()
    {
    }
}

Подробнее см. NUnit docs

...