NUnit .NET создавать тесты - PullRequest
0 голосов
/ 20 марта 2012

Я работаю с teamcity и перенесу на него несколько старых интеграционных тестов. Эти старые интеграционные тесты просто регистрировали результаты как консольное приложение. Я бы остановился только на регистрации результатов, но teamcity имеет хорошую поддержку NUnit и хотела бы воспользоваться этим.

Допустим, это был один из моих старых тестов

    public void Test ()
    {
        int tries = 10;
        int fails = Check(tries);

        Console.WriteLine("{0} fails out of {1} attempts", fails, tries); // log results
    }

    public int Check (int tries)
    {
        int fails = 0;
        for (int i = 0; i < tries; i++)
        {
            if (i % 2 == 1) fails++;
        }
        return fails;
    }

Я не уверен, как это сделать с помощью NUnit, или если это вообще возможно. Я хочу, чтобы каждый вызов Check был его собственным тестом. И нет, блокировка 10 тестов для вызова Check (n) n = 0, ... n = 9 - это не то, что я ищу.

Заранее спасибо.

Ответы [ 2 ]

2 голосов
/ 20 марта 2012

Вы можете использовать управляемые данными тесты NUnit .

 [TestCase(10, Result = 5)]
 public int Check (int tries)
    {
    int fails = 0;
    for (int i = 0; i < tries; i++)
    {
        if (i % 2 == 1) fails++;
    }
    return fails;
 }
0 голосов
/ 21 марта 2012

Я закончил с атрибутом диапазона

[Test]
public int Check ([Range(0,100,1)] int tries)
{
   for (int i = 0; i < tries; i++)
   {
       if (i % 2 == 1) Assert.Fail("failed on :" + i);
   }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...