WebApplicationFactory<TEntryPoint> Sınıf

Tanım

İşlevsel uçtan uca testlere yönelik bellekte bir uygulamayı önyükleme için fabrika.

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

Tür Parametreleri

TEntryPoint

Uygulamanın giriş noktası derlemesinde bir tür. Genellikle başlangıç veya program sınıfları kullanılabilir.

Devralma
WebApplicationFactory<TEntryPoint>
Uygulamalar

Oluşturucular

WebApplicationFactory<TEntryPoint>()

Örneği oluşturur WebApplicationFactory<TEntryPoint> . Bu fabrika TestServer , tarafından tanımlanan MVC uygulamasını TEntryPoint ve HttpClient öğesine göndermek için kullanılan bir veya daha fazla örneği kullanarak bir örnek oluşturmak için kullanılabilir HttpRequestMessage TestServer . , WebApplicationFactory<TEntryPoint> Derleme giriş noktası sınıfını bulur TEntryPoint ve üzerinde ıwebhostbuilder createwebhostbuilder (String [] args) çağırarak uygulamayı başlatır TEntryPoint .

Bu Oluşturucu, WebApplicationFactoryContentRootAttribute derleme için bir anahtarla eşit olan işlev testlerini içeren bir derlemede arama yaparak uygulama içeriği kök yolunu çıkaryacak TEntryPoint FullName . Doğru anahtara sahip bir özniteliğin bulunamamasına WebApplicationFactory<TEntryPoint> izin vermek için, bir çözüm dosyası (*. sln) aramaya ve ardından TEntryPoint derleme adını çözüm dizinine eklemeye geri dönecektir. Uygulama kök dizini görünümleri ve içerik dosyalarını keşfetmeye yönelik olarak kullanılacaktır.

Uygulama derlemeleri, içeren derlemenin bağımlılık bağlamından yüklenir TEntryPoint . Bu, içeren derlemenin proje bağımlılıklarının TEntryPoint uygulama derlemeleri olarak yüklenebileceği anlamına gelir.

Özellikler

ClientOptions

WebApplicationFactoryClientOptionsTarafından kullanılan öğesini alır CreateClient() .

Factories

IReadOnlyList<T>Çağırma sırasında ' i özelleştirerek bu fabrikadan oluşturulan fabrikaların sayısını alır IWebHostBuilder WithWebHostBuilder(Action<IWebHostBuilder>) .

Server

TestServerTarafından oluşturulan tarafından alınır WebApplicationFactory<TEntryPoint> .

Services

IServiceProviderBu ile ilişkili sunucu tarafından oluşturulan öğesini alır WebApplicationFactory<TEntryPoint> .

Yöntemler

ConfigureClient(HttpClient)

HttpClientBu tarafından oluşturulan örnekleri yapılandırır WebApplicationFactory<TEntryPoint> .

ConfigureWebHost(IWebHostBuilder)

Uygulamayı derlenmeden önce yapılandırmak için bir fırsat sağlar.

CreateClient()

HttpClientOtomatik olarak aşağıdaki yeniden yönlendirmeleri ve tanımlama bilgilerini işleyen bir örneği oluşturur.

CreateClient(WebApplicationFactoryClientOptions)

HttpClientOtomatik olarak aşağıdaki yeniden yönlendirmeleri ve tanımlama bilgilerini işleyen bir örneği oluşturur.

CreateDefaultClient(DelegatingHandler[])

HttpClientSunucuya göndermek için kullanılabilecek yeni bir örneğini oluşturur HttpRequestMessage . Örneğin temel adresi HttpClient olarak ayarlanır http://localhost .

CreateDefaultClient(Uri, DelegatingHandler[])

HttpClientSunucuya göndermek için kullanılabilecek yeni bir örneğini oluşturur HttpRequestMessage .

CreateHost(IHostBuilder)

IHostİçinde önyüklendi uygulamasını oluşturur builder . Bu yalnızca kullanan uygulamalar için çağırılır IHostBuilder . ' A dayalı uygulamalar IWebHostBuilder CreateServer(IWebHostBuilder) bunun yerine kullanılacaktır.

CreateHostBuilder()

IHostBuilderAyarlamak için kullanılan bir oluşturur TestServer .

CreateServer(IWebHostBuilder)

TestServerİçinde önyüklendi uygulamasını oluşturur builder . Bu yalnızca kullanan uygulamalar için çağırılır IWebHostBuilder . ' A dayalı uygulamalar IHostBuilder CreateHost(IHostBuilder) bunun yerine kullanılacaktır.

CreateWebHostBuilder()

IWebHostBuilderAyarlamak için kullanılan bir oluşturur TestServer .

Dispose()

Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

Dispose(Boolean)

Uygulama tarafından tanımlanan, yönetilmeyen kaynakları serbest bırakma, salma veya sıfırlama ile ilişkili görevleri gerçekleştirir.

DisposeAsync()

Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources asynchronously.

Finalize()

Sınıfının bir örneğini sonlandırır WebApplicationFactory<TEntryPoint> .

GetTestAssemblies()

İşlevsel testleri içeren derlemeleri alır. WebApplicationFactoryContentRootAttributeBu derlemelere uygulanan, verilen için kullanılacak içerik kökünü tanımlar TEntryPoint .

WithWebHostBuilder(Action<IWebHostBuilder>)

WebApplicationFactory<TEntryPoint> IWebHostBuilder , Tarafından daha ayrıntılı bir şekilde özelleştirilmiş yeni bir oluşturur configuration .

Şunlara uygulanır