Модульный тест C #, как проверить больше, чем - PullRequest
49 голосов
/ 09 ноября 2010

В C # как мне выполнить модульное тестирование условия «больше, чем»?

Т.е., если количество записей больше 5, тест пройден успешно.

Любая помощь приветствуется

Код:

int actualcount = target.GetCompanyEmployees().Count
Assert. ?

Ответы [ 7 ]

101 голосов
/ 09 ноября 2010
Assert.IsTrue(actualCount > 5, "The actualCount was not greater than five");
11 голосов
/ 19 марта 2013

Правильный способ сделать это при использовании nUnit:

Assert.That(actualcount , Is.GreaterThan(5));
4 голосов
/ 27 января 2017

Универсальное решение, которое можно использовать с любым сопоставимым типом:

public static T ShouldBeGreaterThan<T>(this T actual, T expected, string message = null)
    where T: IComparable
{
    Assert.IsTrue(actual.CompareTo(expected) > 0, message);
    return actual;
}
2 голосов
/ 24 октября 2017

в XUnit это:

    [Fact]
    public void ItShouldReturnErrorCountGreaterThanZero()
    {
        Assert.True(_model.ErrorCount > 0);
    }
1 голос
/ 25 июня 2015

actualCount.Should().BeGreaterThan(5);

0 голосов
/ 27 июня 2019

Это зависит от того, какую платформу тестирования вы используете.

Для xUnit.net:

Assert.True(actualCount > 5, "Expected actualCount to be greater than 5.");

Для NUnit:

Assert.Greater(actualCount, 5);;однако новый синтаксис

Assert.That(actualCount, Is.GreaterThan(5)); приветствуется.

Для MSTest:

Assert.IsTrue(actualCount > 5, "Expected actualCount to be greater than 5.");

0 голосов
/ 03 июня 2019

xUnit: если вы знаете верхнюю границу (= 100 в примере), вы можете использовать:

Assert.InRange( actualCount ,5, 100);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...