Как мне установить TDD между поставщиком пользовательского членства и пользователем пользовательского членства?

StackOverflow https://stackoverflow.com/questions/76781

  •  09-06-2019
  •  | 
  •  

Вопрос

Мне нужно создать пользовательского пользователя и поставщика членства для приложения ASP.NET mvc, и я собираюсь использовать TDD.Я создал класс User, который наследуется от класса MembershipUser, но когда я пытаюсь его протестировать, я получаю ошибку, которую не могу понять.Как мне присвоить ему действительное имя поставщика?Мне просто нужно добавить его в web.config?Но на данный момент я даже не тестирую веб-приложение.

[сбой] Пользовательские тесты.SetUp.UserShouldHaveMembershipUserProperties Пользовательские тесты TestCase.SetUp.UserShouldHaveMembershipUserProperties' сбой:Указанное имя поставщика членства недопустимо.Имя параметра:ProviderName System.Исключение ArgumentException Сообщение:Указанное имя поставщика членства недопустимо.Имя параметра:Имя поставщика Источник:Система.Веб

Это было полезно?

Решение

Конфигурация, которую нужно добавить в файл конфигурации вашего проекта модульного тестирования, будет выглядеть примерно так:

  <connectionStrings>
     <remove name="LocalSqlServer"/>
     <add name="LocalSqlServer" connectionString="<connection string>" providerName="System.Data.SqlClient"/>
  </connectionStrings>
  <system.web>
     <membership defaultProvider="provider">
       <providers>
         <add name="provider" applicationName="MyApp" type="System.Web.Security.SqlMembershipProvider" connectionStringName="LocalSqlServer" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" requiresQuestionAndAnswer="false" maxInvalidPasswordAttempts="3" passwordAttemptWindow="15"/>
       </providers>
     </membership>
  </system.web>

Другие советы

Да, вам нужно настроить его в вашем файле конфигурации (вероятно, не web.config для тестовой библиотеки, а app.config).Вы по-прежнему используете этот раздел и внутри него раздел для настройки.Как только у вас это будет на месте, вы сможете создать экземпляр своего пользователя и приступить к его тестированию.В этот момент вы, скорее всего, столкнетесь с новыми проблемами, которые, я думаю, вам следует опубликовать в виде отдельных вопросов.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top