Language

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>
実装

コンストラクター

Name 説明
WebApplicationFactory<TEntryPoint>()

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

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

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

プロパティ

Name 説明
ClientOptions

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

Factories

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

Server

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

Services

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

メソッド

Name 説明
ConfigureClient(HttpClient)

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

ConfigureWebApplicationBuilder(IHostApplicationBuilder)

フィクスチャにアプリケーション ビルダーを構成する機会を提供します。 このメソッドは、エントリ ポイントの WebApplication.CreateBuilder の呼び出し中に、非常に早い段階で呼び出されます。

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()

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

CreateServer(IServiceProvider)

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

CreateServer(IWebHostBuilder)
古い.

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

CreateWebHostBuilder()

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

Dispose()

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

Dispose(Boolean)

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

DisposeAsync()

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

Finalize()

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

GetTestAssemblies()

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

StartServer()

ホスト ビルダーを構成してインスタンスを初期化します。

UseKestrel()

Kestrel をサーバーとして使用するようにファクトリを構成します。

UseKestrel(Action<KestrelServerOptions>)

Kestrel をサーバーとして使用するようにファクトリを構成します。

UseKestrel(Int32)

Kestrel をサーバーとして使用するようにファクトリを構成します。

WithWebHostBuilder(Action<IWebHostBuilder>)

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

適用対象