WebApplicationFactory<TEntryPoint> Třída

Definice

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

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

Parametry typu

TEntryPoint

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

Dědičnost
WebApplicationFactory<TEntryPoint>
Implementuje

Konstruktory

WebApplicationFactory<TEntryPoint>()

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

Tento konstruktor odvodí kořenovou cestu obsahu aplikace vyhledáním WebApplicationFactoryContentRootAttribute objektu v sestavení obsahujícím funkční testy s klíčem, který se TEntryPoint rovná sestavení FullName. V případě, že atribut se správným klíčem nelze najít, WebApplicationFactory<TEntryPoint> se vrátí k vyhledání souboru řešení (*.sln) a následnému připojení TEntryPoint názvu sestavení k adresáři ř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

ClientOptions

Získá objekt WebApplicationFactoryClientOptions , který používá CreateClient().

Factories

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

Server

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

Services

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

Metody

ConfigureClient(HttpClient)

Konfiguruje HttpClient instance vytvořené tímto objektem WebApplicationFactory<TEntryPoint>.

ConfigureWebHost(IWebHostBuilder)

Dává přípojce příležitost nakonfigurovat aplikaci před jejím sestavení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 objektu HttpClient , který lze použít k odeslání HttpRequestMessage na server. Základní adresa HttpClient instance se nastaví na http://localhost.

CreateDefaultClient(Uri, DelegatingHandler[])

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

CreateHost(IHostBuilder)

Vytvoří metodu IHost se zaváděcí aplikací v buildersouboru . Tato možnost je volána pouze pro aplikace, které používají IHostBuilder. Místo toho se použijí CreateServer(IWebHostBuilder) aplikace založené na IWebHostBuilder .

CreateHostBuilder()

Vytvoří příkaz použitý IHostBuilder k nastavení TestServer.

CreateServer(IWebHostBuilder)

Vytvoří metodu TestServer se zaváděcí aplikací v buildersouboru . Tato možnost je volána pouze pro aplikace, které používají IWebHostBuilder. Místo toho se použijí CreateHost(IHostBuilder) aplikace založené na IHostBuilder .

CreateWebHostBuilder()

Vytvoří příkaz použitý IWebHostBuilder k nastavení TestServer.

Dispose()

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

Dispose(Boolean)

Provede aplikací definované úlohy spojené s 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í komplexní testy.

Finalize()

Dokončí 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 danou TEntryPoint.

WithWebHostBuilder(Action<IWebHostBuilder>)

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

Platí pro