Bahasa

WebApplicationFactory<TEntryPoint> Kelas

Definisi

Pabrik untuk bootstrapping aplikasi dalam memori untuk pengujian ujung ke ujung fungsi.

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

Jenis parameter

TEntryPoint

Jenis dalam rakitan titik masuk aplikasi. Biasanya kelas Startup atau Program dapat digunakan.

Warisan
WebApplicationFactory<TEntryPoint>
Penerapan

Konstruktor

Nama Deskripsi
WebApplicationFactory<TEntryPoint>()

Membuat instans .WebApplicationFactory<TEntryPoint> Pabrik ini dapat digunakan untuk membuat TestServer instans menggunakan aplikasi MVC yang ditentukan oleh TEntryPoint dan satu atau beberapa HttpClient instans yang digunakan untuk mengirim HttpRequestMessage ke TestServer. WebApplicationFactory<TEntryPoint> akan menemukan kelas titik masuk assembly TEntryPoint dan menginisialisasi aplikasi dengan memanggil IWebHostBuilder CreateWebHostBuilder(string [] args) pada TEntryPoint.

Konstruktor ini akan menyimpulkan jalur akar konten aplikasi dengan mencari WebApplicationFactoryContentRootAttribute pada rakitan yang berisi pengujian fungsional dengan kunci yang sama TEntryPoint dengan rakitan FullName. Jika atribut dengan kunci yang tepat tidak dapat ditemukan, WebApplicationFactory<TEntryPoint> akan kembali mencari file solusi (*.sln) lalu menambahkan TEntryPoint nama perakitan ke direktori solusi. Direktori akar aplikasi akan digunakan untuk menemukan tampilan dan file konten.

Rakitan aplikasi akan dimuat dari konteks dependensi rakitan yang berisi TEntryPoint. Ini berarti bahwa dependensi proyek dari assembly yang berisi TEntryPoint akan dimuat sebagai rakitan aplikasi.

Properti

Nama Deskripsi
ClientOptions

Mendapatkan yang WebApplicationFactoryClientOptions digunakan oleh CreateClient().

Factories

Mendapatkan pabrik yang IReadOnlyList<T> dibuat dari pabrik ini dengan menyesuaikan IWebHostBuilder lebih lanjut saat memanggil WithWebHostBuilder(Action<IWebHostBuilder>).

Server

Mendapatkan yang TestServer dibuat oleh ini WebApplicationFactory<TEntryPoint>.

Services

Mendapatkan yang IServiceProvider dibuat oleh server yang terkait dengan ini WebApplicationFactory<TEntryPoint>.

Metode

Nama Deskripsi
ConfigureClient(HttpClient)

Mengonfigurasi instans HttpClient yang dibuat oleh ini WebApplicationFactory<TEntryPoint>.

ConfigureWebApplicationBuilder(IHostApplicationBuilder)

Memberikan kesempatan untuk mengonfigurasi penyusun aplikasi. Metode ini akan dipanggil sangat awal, selama panggilan titik masuk ke WebApplication.CreateBuilder.

ConfigureWebHost(IWebHostBuilder)

Memberikan perlengkapan kesempatan untuk mengonfigurasi aplikasi sebelum dibangun.

CreateClient()

Membuat instans HttpClient yang secara otomatis mengikuti pengalihan dan menangani cookie.

CreateClient(WebApplicationFactoryClientOptions)

Membuat instans HttpClient yang secara otomatis mengikuti pengalihan dan menangani cookie.

CreateDefaultClient(DelegatingHandler[])

Membuat instans baru yang HttpClient dapat digunakan untuk mengirim HttpRequestMessage ke server. Alamat HttpClient dasar instans akan diatur ke http://localhost.

CreateDefaultClient(Uri, DelegatingHandler[])

Membuat instans baru yang HttpClient dapat digunakan untuk mengirim HttpRequestMessage ke server.

CreateHost(IHostBuilder)

IHost Membuat dengan aplikasi yang di-bootstrap di builder. Ini hanya dipanggil untuk aplikasi yang menggunakan IHostBuilder. Aplikasi berdasarkan IWebHostBuilder akan digunakan CreateServer(IWebHostBuilder) sebagai gantinya.

CreateHostBuilder()

Membuat yang IHostBuilder digunakan untuk menyiapkan TestServer.

CreateServer(IServiceProvider)

TestServer Membuat dengan IServiceProvider dari aplikasi yang di-bootstrap. Ini hanya dipanggil untuk aplikasi yang menggunakan IHostBuilder. Aplikasi berdasarkan IWebHostBuilder akan digunakan CreateHost(IHostBuilder) sebagai gantinya.

CreateServer(IWebHostBuilder)
Kedaluwarsa.

TestServer Membuat dengan aplikasi yang di-bootstrap di builder. Ini hanya dipanggil untuk aplikasi yang menggunakan IWebHostBuilder. Aplikasi berdasarkan IHostBuilder akan digunakan CreateHost(IHostBuilder) sebagai gantinya.

CreateWebHostBuilder()

Membuat yang IWebHostBuilder digunakan untuk menyiapkan TestServer.

Dispose()

Pabrik untuk bootstrapping aplikasi dalam memori untuk pengujian ujung ke ujung fungsi.

Dispose(Boolean)

Melakukan tugas yang ditentukan aplikasi yang terkait dengan membebaskan, merilis, atau mengatur ulang sumber daya yang tidak dikelola.

DisposeAsync()

Pabrik untuk bootstrapping aplikasi dalam memori untuk pengujian ujung ke ujung fungsi.

Finalize()

Menyelesaikan instans WebApplicationFactory<TEntryPoint> kelas.

GetTestAssemblies()

Mendapatkan rakitan yang berisi tes fungsi. Yang WebApplicationFactoryContentRootAttribute diterapkan ke rakitan ini mendefinisikan akar konten yang akan digunakan untuk yang diberikan TEntryPoint.

StartServer()

Menginisialisasi instans dengan mengonfigurasi pembangun host.

UseKestrel()

Mengonfigurasi pabrik untuk menggunakan Kestrel sebagai server.

UseKestrel(Action<KestrelServerOptions>)

Mengonfigurasi pabrik untuk menggunakan Kestrel sebagai server.

UseKestrel(Int32)

Mengonfigurasi pabrik untuk menggunakan Kestrel sebagai server.

WithWebHostBuilder(Action<IWebHostBuilder>)

Membuat baru WebApplicationFactory<TEntryPoint> dengan IWebHostBuilder yang disesuaikan lebih lanjut oleh configuration.

Berlaku untuk