Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Как протестировать помощник NUnit?

Автор вопроса: Eduardo CobuciОтветов: 0

Я создаю библиотеку, вдохновленную RSpec, поверх NUnit 2.5+, чтобы улучшить читаемость моих тестов. Исходный код доступен по адресу http://github.com/educobuci/SpecUnit.

Эта библиотека позволяет мне писать такие тесты:

[Test]
public void It_should_returns_0_for_all_gutter_game()
{
    var game = new Bowling();
    for (int i = 0; i < 10; i++)
        game.Hit(0);
    game.Score.Should(Be.Equal(0));
}

Метод "Должен" является методом расширения для всех объектов, которые в основном получают действие с некоторыми утверждениями NUnit, такими как:

public static class Be
{
    public static Action<T> Equal(T to)
    {
        return (target) => NUnit.Framework.Assert.AreEqual(target, to);
    }
}

Библиотека работает довольно хорошо, но у меня нет тестов для самой библиотеки... в основном потому, что я не знаю, как ее тестировать!

Итак, как я могу проверить это? Я имею в виду, как гарантировать, что "object.Should(Be.Equal(object))" действительно проверяет равенство?

  • Лично я бы просто остановился на Assert.AreEqual( 0, game.Score), который намного легче понять, чем game.Score.Should(Be.Equal(0)). Он не только не требует дополнительных модульных тестов, но и не требует еще одного набора документации, чтобы разобраться во всем этом. Dave 12.09.2010
  • @Dave Моя идея состоит в том, чтобы работать только с одной структурой (моей :). Помимо того, что он более органичен для написания, он также обеспечивает проверку типов во время разработки (благодаря дженерикам). Eduardo Cobuci 12.09.2010

unit-testingnunit

На этот вопрос пока нет ответов в архиве.

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы