Condividi tramite


WebApplicationFactory<TEntryPoint> Classe

Definizione

Factory per il bootstrap di un'applicazione in memoria per i test end-to-end funzionali.

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

Parametri di tipo

TEntryPoint

Tipo nell'assembly del punto di ingresso dell'applicazione. In genere è possibile usare le classi Startup o Program.

Ereditarietà
WebApplicationFactory<TEntryPoint>
Implementazioni

Costruttori

WebApplicationFactory<TEntryPoint>()

Crea un'istanza di WebApplicationFactory<TEntryPoint>. Questa factory può essere usata per creare un'istanza TestServer usando l'applicazione MVC definita da TEntryPoint e una o più HttpClient istanze usate per l'invio HttpRequestMessageTestServera . WebApplicationFactory<TEntryPoint> Trova la classe del punto di ingresso dell'assembly TEntryPoint e inizializza l'applicazione chiamando IWebHostBuilder CreateWebHostBuilder(string [] args) su TEntryPoint.

Questo costruttore dedurrà il percorso radice del contenuto dell'applicazione cercando un WebApplicationFactoryContentRootAttribute nell'assembly contenente i test funzionali con una chiave uguale all'assembly TEntryPointFullName. Se non è possibile trovare un attributo con la chiave corretta, WebApplicationFactory<TEntryPoint> verrà eseguito il fallback alla ricerca di un file di soluzione (*.sln) e quindi all'aggiunta TEntryPoint del nome dell'assembly alla directory della soluzione. La directory radice dell'applicazione verrà usata per individuare visualizzazioni e file di contenuto.

Gli assembly dell'applicazione verranno caricati dal contesto di dipendenza dell'assembly contenente TEntryPoint. Ciò significa che le dipendenze del progetto dell'assembly contenente TEntryPoint verranno caricate come assembly dell'applicazione.

Proprietà

ClientOptions

Ottiene l'oggetto WebApplicationFactoryClientOptions utilizzato da CreateClient().

Factories

Ottiene l'oggetto IReadOnlyList<T> delle factory create da questa factory personalizzando ulteriormente l'oggetto durante la IWebHostBuilder chiamata a WithWebHostBuilder(Action<IWebHostBuilder>).

Server

Ottiene l'oggetto TestServer creato da questo oggetto WebApplicationFactory<TEntryPoint>.

Services

Ottiene l'oggetto creato dal server associato all'oggetto IServiceProviderWebApplicationFactory<TEntryPoint>.

Metodi

ConfigureClient(HttpClient)

Configura le HttpClient istanze create da questo WebApplicationFactory<TEntryPoint>oggetto .

ConfigureWebHost(IWebHostBuilder)

Offre a una fixture l'opportunità di configurare l'applicazione prima che venga compilata.

CreateClient()

Crea un'istanza di HttpClient che segue automaticamente i reindirizzamenti e gestisce i cookie.

CreateClient(WebApplicationFactoryClientOptions)

Crea un'istanza di HttpClient che segue automaticamente i reindirizzamenti e gestisce i cookie.

CreateDefaultClient(DelegatingHandler[])

Crea una nuova istanza di un HttpClient oggetto che può essere utilizzato per l'invio HttpRequestMessage al server. L'indirizzo di base dell'istanza HttpClient verrà impostato su http://localhost.

CreateDefaultClient(Uri, DelegatingHandler[])

Crea una nuova istanza di un HttpClient oggetto che può essere utilizzato per l'invio HttpRequestMessage al server.

CreateHost(IHostBuilder)

Crea con IHost l'applicazione bootstrapped in builder. Questa operazione viene chiamata solo per le applicazioni che usano IHostBuilder. Le applicazioni basate su IWebHostBuilder useranno CreateServer(IWebHostBuilder) invece.

CreateHostBuilder()

Crea un IHostBuilder oggetto utilizzato per configurare TestServer.

CreateServer(IWebHostBuilder)

Crea con TestServer l'applicazione bootstrapped in builder. Questa operazione viene chiamata solo per le applicazioni che usano IWebHostBuilder. Le applicazioni basate su IHostBuilder useranno CreateHost(IHostBuilder) invece.

CreateWebHostBuilder()

Crea un IWebHostBuilder oggetto utilizzato per configurare TestServer.

Dispose()

Factory per il bootstrap di un'applicazione in memoria per i test end-to-end funzionali.

Dispose(Boolean)

Esegue attività definite dall'applicazione, come rilasciare o reimpostare risorse non gestite.

DisposeAsync()

Factory per il bootstrap di un'applicazione in memoria per i test end-to-end funzionali.

Finalize()

Finalizza un'istanza della WebApplicationFactory<TEntryPoint> classe .

GetTestAssemblies()

Ottiene gli assembly contenenti i test funzionali. L'oggetto WebApplicationFactoryContentRootAttribute applicato a questi assembly definisce la radice del contenuto da usare per l'oggetto specificato TEntryPoint.

WithWebHostBuilder(Action<IWebHostBuilder>)

Crea un nuovo WebApplicationFactory<TEntryPoint> oggetto con un IWebHostBuilder oggetto ulteriormente personalizzato da configuration.

Si applica a