Jazyk

WebApplicationFactory<TEntryPoint> Třída

Definice

Továrna pro spuštění aplikace v paměti pro funkční koncové testy.

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

Parametry typu

TEntryPoint

Typ sestavení vstupního bodu aplikace. Obvykle lze použít třídy Startup nebo Program.

Dědičnost
WebApplicationFactory<TEntryPoint>
Implementuje

Konstruktory

Název Description
WebApplicationFactory<TEntryPoint>()

Vytvoří instanci .WebApplicationFactory<TEntryPoint> Tuto továrnu TestServer lze použít k vytvoření instance pomocí aplikace MVC definované pomocí TEntryPoint jedné nebo více HttpClient instancí používaných k odeslání HttpRequestMessage do objektu TestServer. Vyhledá WebApplicationFactory<TEntryPoint> třídu vstupního TEntryPoint bodu sestavení a inicializuje aplikaci voláním IWebHostBuilder CreateWebHostBuilder(string [] args)TEntryPoint.

Tento konstruktor odvodí kořenovou cestu obsahu aplikace vyhledáním v WebApplicationFactoryContentRootAttribute sestavení obsahující funkční testy s klíčem, který se rovná TEntryPoint sestavení FullName. Pokud se atribut se správným klíčem nejde najít, WebApplicationFactory<TEntryPoint> vrátí se k vyhledání souboru řešení (*.sln) a následnému připojení TEntryPoint názvu sestavení do adresáře řešení. Kořenový adresář aplikace se použije ke zjišťování zobrazení a souborů obsahu.

Sestavení aplikace budou načtena z kontextu závislosti sestavení obsahujícího TEntryPoint. To znamená, že závislosti projektu sestavení obsahujícího TEntryPoint budou načteny jako sestavení aplikace.

Vlastnosti

Název Description
ClientOptions

WebApplicationFactoryClientOptions Získá používané CreateClient().

Factories

IReadOnlyList<T> Získá továrny vytvořené z této továrny dalším přizpůsobením IWebHostBuilder při volání WithWebHostBuilder(Action<IWebHostBuilder>).

Server

Získá vytvořený TestServer tímto WebApplicationFactory<TEntryPoint>.

Services

IServiceProvider Získá vytvořený server přidružený k tomuto WebApplicationFactory<TEntryPoint>.

Metody

Název Description
ConfigureClient(HttpClient)

Konfiguruje HttpClient instance vytvořené tímto WebApplicationFactory<TEntryPoint>uživatelem .

ConfigureWebApplicationBuilder(IHostApplicationBuilder)

Poskytuje příležitost ke konfiguraci tvůrce aplikací. Tato metoda bude volána velmi brzy během volání vstupního bodu webApplication.CreateBuilder.

ConfigureWebHost(IWebHostBuilder)

Dává zařízení příležitost ke konfiguraci aplikace před vytvořením.

CreateClient()

Vytvoří instanci HttpClient , která automaticky sleduje přesměrování a zpracovává soubory cookie.

CreateClient(WebApplicationFactoryClientOptions)

Vytvoří instanci HttpClient , která automaticky sleduje přesměrování a zpracovává soubory cookie.

CreateDefaultClient(DelegatingHandler[])

Vytvoří novou instanci, HttpClient kterou lze použít k odeslání HttpRequestMessage na server. Základní adresa HttpClient instance bude nastavena na http://localhosthodnotu .

CreateDefaultClient(Uri, DelegatingHandler[])

Vytvoří novou instanci, HttpClient kterou lze použít k odeslání HttpRequestMessage na server.

CreateHost(IHostBuilder)

IHost Vytvoří s bootstrapped aplikace v builder. To je volána pouze pro aplikace používající IHostBuilder. Aplikace založené na IWebHostBuilder tom budou místo toho používat CreateServer(IWebHostBuilder) .

CreateHostBuilder()

Vytvoří použitou IHostBuilder k nastavení TestServer.

CreateServer(IServiceProvider)

TestServer Vytvoří z IServiceProvider aplikace s bootstrapped. To je volána pouze pro aplikace používající IHostBuilder. Aplikace založené na IWebHostBuilder tom budou místo toho používat CreateHost(IHostBuilder) .

CreateServer(IWebHostBuilder)
Zastaralé.

TestServer Vytvoří s bootstrapped aplikace v builder. To je volána pouze pro aplikace používající IWebHostBuilder. Aplikace založené na IHostBuilder tom budou místo toho používat CreateHost(IHostBuilder) .

CreateWebHostBuilder()

Vytvoří použitou IWebHostBuilder k nastavení TestServer.

Dispose()

Továrna pro spuštění aplikace v paměti pro funkční koncové testy.

Dispose(Boolean)

Provádí úlohy definované aplikací související s uvolněním, uvolněním nebo resetováním nespravovaných prostředků.

DisposeAsync()

Továrna pro spuštění aplikace v paměti pro funkční koncové testy.

Finalize()

Finalizuje instanci WebApplicationFactory<TEntryPoint> třídy.

GetTestAssemblies()

Získá sestavení obsahující funkční testy. Použité WebApplicationFactoryContentRootAttribute na tato sestavení definuje kořen obsahu, který se má použít pro dané TEntryPoint.

StartServer()

Inicializuje instanci konfigurací tvůrce hostitelů.

UseKestrel()

Nakonfiguruje továrnu tak, aby jako server používala Kestrel.

UseKestrel(Action<KestrelServerOptions>)

Nakonfiguruje továrnu tak, aby jako server používala Kestrel.

UseKestrel(Int32)

Nakonfiguruje továrnu tak, aby jako server používala Kestrel.

WithWebHostBuilder(Action<IWebHostBuilder>)

Vytvoří nový WebApplicationFactory<TEntryPoint> s tímIWebHostBuilder, který je dále přizpůsoben .configuration

Platí pro