WebApplicationFactory<TEntryPoint> クラス

定義

機能エンド ツー エンド テスト用にメモリ内のアプリケーションをブートストラップするためのファクトリ。

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

型パラメーター

TEntryPoint

アプリケーションのエントリ ポイント アセンブリ内の型。 通常、Startup クラスまたは Program クラスを使用できます。

継承
WebApplicationFactory<TEntryPoint>
実装

コンストラクター

WebApplicationFactory<TEntryPoint>()

WebApplicationFactory<TEntryPoint> のインスタンスを作成します。 このファクトリを使用すると、 によってTEntryPoint定義された MVC アプリケーションと、 に送信HttpRequestMessageするために使用される 1 つ以上HttpClientのインスタンスを使用してインスタンスをTestServer作成TestServerできます。 は WebApplicationFactory<TEntryPoint> 、アセンブリの TEntryPoint エントリ ポイント クラスを検索し、 で を呼び出 IWebHostBuilder CreateWebHostBuilder(string [] args) してアプリケーションを初期化します TEntryPoint

このコンストラクターは、アセンブリ と等しいキーを持つ機能テストを含むアセンブリで を検索 WebApplicationFactoryContentRootAttribute することで、アプリケーション コンテンツのルート パスを TEntryPoint 推論します FullName。 適切なキーを持つ属性が見つからない場合は、 WebApplicationFactory<TEntryPoint> ソリューション ファイル (*.sln) を検索してから、ソリューション ディレクトリにアセンブリ名を TEntryPoint 追加します。 アプリケーション ルート ディレクトリは、ビューとコンテンツ ファイルを検出するために使用されます。

アプリケーション アセンブリは、 を含む TEntryPointアセンブリの依存関係コンテキストから読み込まれます。 つまり、 を含む TEntryPoint アセンブリのプロジェクト依存関係は、アプリケーション アセンブリとして読み込まれます。

プロパティ

ClientOptions

によってCreateClient()使用される を取得しますWebApplicationFactoryClientOptions

Factories

を呼び出WithWebHostBuilder(Action<IWebHostBuilder>)すときに IReadOnlyList<T> をさらにカスタマイズして、このファクトリから作成されたファクトリの をIWebHostBuilder取得します。

Server

この TestServer によって作成される WebApplicationFactory<TEntryPoint> を取得します。

Services

この WebApplicationFactory<TEntryPoint>IServiceProvider関連付けられているサーバーによって作成された を取得します。

メソッド

ConfigureClient(HttpClient)

HttpClientこの WebApplicationFactory<TEntryPoint>によって作成されたインスタンスを構成します。

ConfigureWebHost(IWebHostBuilder)

構築前にアプリケーションを構成する機会をフィクスチャに提供します。

CreateClient()

リダイレクトに自動的に従い、Cookie を処理する の HttpClient インスタンスを作成します。

CreateClient(WebApplicationFactoryClientOptions)

リダイレクトに自動的に従い、Cookie を処理する の HttpClient インスタンスを作成します。

CreateDefaultClient(DelegatingHandler[])

サーバーへの送信HttpRequestMessageに使用できる のHttpClient新しいインスタンスを作成します。 インスタンスの HttpClient ベース アドレスは に http://localhost設定されます。

CreateDefaultClient(Uri, DelegatingHandler[])

サーバーへの送信HttpRequestMessageに使用できる のHttpClient新しいインスタンスを作成します。

CreateHost(IHostBuilder)

でブートストラップされたアプリケーションbuilderを使用して をIHost作成します。 これは、 を使用 IHostBuilderするアプリケーションでのみ呼び出されます。 に基づく IWebHostBuilder アプリケーションでは、代わりに が使用 CreateServer(IWebHostBuilder) されます。

CreateHostBuilder()

IHostBuilder 設定 TestServerするために使用する を作成します。

CreateServer(IWebHostBuilder)

でブートストラップされたアプリケーションbuilderを使用して をTestServer作成します。 これは、 を使用 IWebHostBuilderするアプリケーションでのみ呼び出されます。 に基づく IHostBuilder アプリケーションでは、代わりに が使用 CreateHost(IHostBuilder) されます。

CreateWebHostBuilder()

IWebHostBuilder 設定 TestServerするために使用する を作成します。

Dispose()

機能エンド ツー エンド テスト用にメモリ内のアプリケーションをブートストラップするためのファクトリ。

Dispose(Boolean)

アンマネージ リソースの解放またはリセットに関連付けられているアプリケーション定義のタスクを実行します。

DisposeAsync()

機能エンド ツー エンド テスト用にメモリ内のアプリケーションをブートストラップするためのファクトリ。

Finalize()

クラスのインスタンスを最終処理します WebApplicationFactory<TEntryPoint>

GetTestAssemblies()

機能テストを含むアセンブリを取得します。 これらのアセンブリに適用される は WebApplicationFactoryContentRootAttribute 、指定 TEntryPointされた に使用するコンテンツ ルートを定義します。

WithWebHostBuilder(Action<IWebHostBuilder>)

によってさらにカスタマイズされた をIWebHostBuilder使用してconfiguration、新しい WebApplicationFactory<TEntryPoint> を作成します。

適用対象