Почему мой тест NUnit не проходит?

1

Я добавил тест NUNit (здесь NUnit newby):

[Test]
public void TestHHSDeliveryInterface()
{
    var Delivery = IOC.container.Resolve<IHHSDelivery>();

    var i = Delivery.GetCount();

    Assert.Greater(i, 16);
}

... на основе существующего:

[Test]
public void TestHHSInterface()
{
    var HHSClient = IOC.container.Resolve<IHHSClient>();

    var s = HHSClient.GetTestMessage("Dom", "Paz");

    Assert.Greater(s.Value.Length, 0);
}

... для некоторого контекста класс запускается следующим образом:

[TestFixture, Category(SSCSCOMMON.UnitTests.Categories.IntegrationTest)]
public class HHSClientIntegrationTests
{

Метод (Delivery.GetCount();) теперь возвращает "консервированное" значение (17). Так оно и работает. Итак, почему тест не работает? К сожалению, тестовый код не является проблематичным - по крайней мере, у меня в нем есть точка останова, и он никогда не достигнут, и это должно произойти, если это произойдет, я бы подумал, как правило. NUnit выглядит так после запуска приложения и тестов:

Изображение 174551

С проблемным тестом прокомментировал, другие работают нормально.

ОБНОВИТЬ

Оказывается, решение этой проблемы также решило эту проблему.

  • 2
    Трудно сказать без строк кода в вашем примере. Но сообщение об ошибке говорит о том , что отказ от линии 59 из RESTHHSDelivery.cs Вы уверены , что вы получаете обратно правильный IHHSDelivery экземпляр из IOC.container.Resolve<IHHSDelivery>() в тесте?
  • 1
    Можете ли вы показать код RESTHHSDelivery.cs ? Казалось бы, что-то там вызывает System.NotImplementedException . Это часто бывает, когда вы создаете классы и методы, используя инструменты IDE. Проверьте ваши конструкторы и реализацию для GetCount()
Показать ещё 1 комментарий
Теги:
unit-testing
visual-studio-2013
integration-testing
nunit

1 ответ

1
Лучший ответ

Используя мои умственные навыки отладки:

Итак, почему тест не работает? К сожалению, тестовый код не является проблематичным - по крайней мере, у меня в нем есть точка останова, и он никогда не достигнут, и это должно произойти, если это произойдет, я бы подумал, как правило.

Вы не используете единичный тест на dll, который, как вы думаете, вы отлаживаете. Я предполагаю, что ваша контрольная точка отладки говорит вам, что код, который вы используете, отличается от исходного кода. Очистите каталоги развертывания/и ваш проект (все DLL) и перекомпилируйте.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню