Язык

WebApplicationFactory<TEntryPoint> Класс

Определение

Фабрика для начальной загрузки приложения в памяти для функциональных конечных тестов.

generic <typename TEntryPoint>
 where TEntryPoint : classpublic ref class WebApplicationFactory : IDisposable
public class WebApplicationFactory<TEntryPoint> : IAsyncDisposable, IDisposable where TEntryPoint : class
public class WebApplicationFactory<TEntryPoint> : IDisposable where TEntryPoint : class
type WebApplicationFactory<'EntryPoint (requires 'EntryPoint : null)> = class
    interface IDisposable
    interface IAsyncDisposable
type WebApplicationFactory<'EntryPoint (requires 'EntryPoint : null)> = class
    interface IDisposable
Public Class WebApplicationFactory(Of TEntryPoint)
Implements IAsyncDisposable, IDisposable
Public Class WebApplicationFactory(Of TEntryPoint)
Implements IDisposable

Параметры типа

TEntryPoint

Тип в сборке точки входа приложения. Обычно можно использовать классы Startup или Program.

Наследование
WebApplicationFactory<TEntryPoint>
Реализации

Конструкторы

Имя. Описание
WebApplicationFactory<TEntryPoint>()

Создает экземпляр .WebApplicationFactory<TEntryPoint> Эту фабрику можно использовать для создания TestServer экземпляра с помощью приложения MVC, определенного и одним или несколькими HttpClientTEntryPoint экземплярами, используемыми для отправки HttpRequestMessage в .TestServer Класс WebApplicationFactory<TEntryPoint> точки входа сборки TEntryPoint и инициализирует приложение путем вызова IWebHostBuilder CreateWebHostBuilder(string [] args)TEntryPoint.

Этот конструктор выдаст корневой путь содержимого приложения, выполнив поиск WebApplicationFactoryContentRootAttribute в сборке, содержащей функциональные тесты с ключом, равным сборкеFullNameTEntryPoint. Если атрибут с правильным ключом не найден, WebApplicationFactory<TEntryPoint> откатится к поиску файла решения (*.sln), а затем добавит TEntryPoint имя сборки в каталог решения. Корневой каталог приложения будет использоваться для обнаружения представлений и файлов содержимого.

Сборки приложений будут загружены из контекста зависимостей сборки, содержащей TEntryPoint. Это означает, что зависимости проекта сборки, TEntryPoint содержащей эту сборку, будут загружены в виде сборок приложений.

Свойства

Имя. Описание
ClientOptions

Возвращает используемый WebApplicationFactoryClientOptionsCreateClient()параметр .

Factories

IReadOnlyList<T> Получает фабрики, созданные из этой фабрики, путем дальнейшей настройки при вызове IWebHostBuilderWithWebHostBuilder(Action<IWebHostBuilder>).

Server

TestServer Возвращает созданный этим WebApplicationFactory<TEntryPoint>методом.

Services

Возвращает созданный сервером IServiceProvider , связанным с этим WebApplicationFactory<TEntryPoint>.

Методы

Имя. Описание
ConfigureClient(HttpClient)

Настраивает HttpClient экземпляры, созданные этим WebApplicationFactory<TEntryPoint>параметром.

ConfigureWebApplicationBuilder(IHostApplicationBuilder)

Предоставляет возможность настроить построитель приложений. Этот метод будет вызываться очень рано во время вызова точки входа в WebApplication.CreateBuilder.

ConfigureWebHost(IWebHostBuilder)

Предоставляет возможность настроить приложение до его создания.

CreateClient()

Создает экземпляр, который автоматически следует перенаправлениям HttpClient и обрабатывает файлы cookie.

CreateClient(WebApplicationFactoryClientOptions)

Создает экземпляр, который автоматически следует перенаправлениям HttpClient и обрабатывает файлы cookie.

CreateDefaultClient(DelegatingHandler[])

Создает новый экземпляр HttpClient , который можно использовать для отправки HttpRequestMessage на сервер. Базовый адрес экземпляра HttpClient будет иметь значение http://localhost.

CreateDefaultClient(Uri, DelegatingHandler[])

Создает новый экземпляр HttpClient , который можно использовать для отправки HttpRequestMessage на сервер.

CreateHost(IHostBuilder)

IHost Создает загрузочное приложение в builder. Это вызывается только для приложений, использующих IHostBuilder. IWebHostBuilder Вместо этого будут использоваться CreateServer(IWebHostBuilder) приложения.

CreateHostBuilder()

Создает используемый IHostBuilder для настройки TestServer.

CreateServer(IServiceProvider)

TestServer Создает приложение с IServiceProvider начальной загрузкой. Это вызывается только для приложений, использующих IHostBuilder. IWebHostBuilder Вместо этого будут использоваться CreateHost(IHostBuilder) приложения.

CreateServer(IWebHostBuilder)
Устаревшие.

TestServer Создает загрузочное приложение в builder. Это вызывается только для приложений, использующих IWebHostBuilder. IHostBuilder Вместо этого будут использоваться CreateHost(IHostBuilder) приложения.

CreateWebHostBuilder()

Создает используемый IWebHostBuilder для настройки TestServer.

Dispose()

Фабрика для начальной загрузки приложения в памяти для функциональных конечных тестов.

Dispose(Boolean)

Выполняет определяемые приложением задачи, связанные с освобождением, освобождением или сбросом неуправляемых ресурсов.

DisposeAsync()

Фабрика для начальной загрузки приложения в памяти для функциональных конечных тестов.

Finalize()

Завершает экземпляр WebApplicationFactory<TEntryPoint> класса.

GetTestAssemblies()

Возвращает сборки, содержащие функциональные тесты. Примененные WebApplicationFactoryContentRootAttribute к этим сборкам определяют корневой каталог содержимого, используемый для заданного.TEntryPoint

StartServer()

Инициализирует экземпляр, настроив построитель узлов.

UseKestrel()

Настраивает фабрику для использования Kestrel в качестве сервера.

UseKestrel(Action<KestrelServerOptions>)

Настраивает фабрику для использования Kestrel в качестве сервера.

UseKestrel(Int32)

Настраивает фабрику для использования Kestrel в качестве сервера.

WithWebHostBuilder(Action<IWebHostBuilder>)

Создает новый WebApplicationFactory<TEntryPoint> с IWebHostBuilder последующим configurationнастройкой.

Применяется к