Как сделать интеграционный тест, объединяющий OIDC IdentityServer, клиента MVC и WebAPI - PullRequest
0 голосов
/ 09 января 2019

Теперь у меня есть проект для разработки Поэтому я моделирую структуру eshopOnContainer для моего проекта (сейчас 3 проекта): Основной веб-проект Asp.net для ресурса проекта работы Asp.net MVC проект для клиента, чтобы служить В проекте Identity Server 4 для защиты проекта webapi используется идентификация asp.net с функцией oidc.

Все настройки выполнены и работают нормально в режиме отладки и выпуска. Основываясь на этом, я начинаю проекты тестирования интеграции. Выпуск шоу В oidc сцены:

  1. У клиента MVC есть действие, например map http://localhost:10001/home/Test, это действие с атрибутом [authorize]. Когда пользователь разблокирует эту ссылку, он будет перенаправлять пользователя на страницу входа в систему idserver для входа в систему.
  2. После того, как IdServer завершил зарегистрированную операцию. Он перенаправляет пользователя к клиенту MVC http://localhost:10001/home/Test, и его можно получить в порядке.

Над сценой я пытаюсь сделать это в среде интеграционного тестирования, но трудно использовать httpclient WebApplicationFactory.CreateClient () для извлечения 2 микросервисов (один - mvcclient, а другой - idserver). Потому что тестовую среду просто запустите в оперативной памяти, и я понятия не имею, конфигурации httpclient имеют возможность доступа к 2 микро-службы (1 клиентский доступ 2 тестовый сервер).

Я хочу знать, неверно ли мое указание или нет. Или вы можете предложить мне сделать интеграционный тест, имитирующий работу пользователя по кругу? Наконец, почему я хочу этого, потому что мне нужно выполнить авторизацию в oidc с идентификатором asp.net (о ролевой базе), поэтому, если я использую clientid и clientsecure для получения маркера доступа, у него нет базы ролей о разрешении доступа к защищенный API, который защищен ролью. Результатом является проблема для этих проблем.

...