Тесты Nunit с MvcApprovals Проверьте конкретный URL

URL-адрес проекта моего приложения MVC размещается как этот localhost: порт /AppName

Я создал новый проект модульных тестов для тестирования приложения mvc с использованием инфраструктуры nunit, а для тестов утверждения я использовал библиотеку тестов утверждения

[Test]
    [UseReporter(typeof(FileLauncherReporter),typeof(ClipboardReporter))]
    public void PaymentPopUpController_IndexView()
    {
        //Arrange
        PortFactory.MvcPort = 8080;
        // Act      
        Func<ActionResult> ScopeControllerTest = new ScopeController()._Index;

        // Approve
        MvcApprovals.VerifyMvcPage(ScopeControllerTest);
    }

MvcApprovals.VerifyMvcPage выдает ошибку о том, что не может найти URL, так как я не установил правильный URL проекта:

Следующая ошибка произошла при подключении к:

http: // localhost: 8080 / Scope / _index

ошибка:

Удаленный сервер возвратил ошибку: (404) Not Found.

Поэтому мой вопрос заключается в том, как установить правильный URL-адрес для установки с помощью nunit для теста утверждения MVC

1 ответ

MvcApprovals создаст URL-адрес из комбинации имени контроллера и имени метода. Так что в этом случае новый ScopeController()._Index переводится в Scope/_Index.

Есть 2 возможности, почему это не работает

1) Плохой URL. Возможно, _index не является общедоступным или не является правильным маршрутом. Самый простой способ проверить это - просто открыть веб-браузер и указать

http://localhost:8080/Scope/_index

Если ваш браузер не может видеть этот URL, то ни один не может одобрить тесты. (если вы не используете cassinidev)

2) Вторая причина заключается в том, что во время теста веб-сервер может быть не включен. Это также будет показано, открыв URL в браузере.

Счастливого тестирования!

Ллевеллин Фалько

Другие вопросы по тегам