.runsettings Dosyasını Kullanarak Birim Testlerini Yapılandırma
.Runsettings dosyasını kullanarak birim testleri Visual Studio 2012 yapılandırılabilir. Örneğin, testleri çalıştırmak .NET Framework dizini burada test sonuçlarını teslim ve test sırasında toplanan veriler çalıştırmak değiştirebilirsiniz.
Not
.runsettings ve .testsettings
.runsettings Visual Studio 2012 yeni bir özelliktir.Birim testi Visual Studio'nun önceki sürümleri hakkında bilginiz varsa, .testsettings dosyaları hakkında biliyor olabilirsiniz.Önceki sürümleri için yazdığınız herhangi bir test yapılandırmalarını hala çalışması için Visual Studio 2012 .testsettings kullanmaya devam edebilirsiniz.Ancak .testsettings MSTest bağdaştırıcı için yazılmış testleri yalnızca yapılandırmak için kullanılabilir.Bunun tersine, .runsettings herhangi biri için Visual Studio 2012 Genişletilebilir birim test çerçevesinde xUnit gibi yerleşik bağdaştırıcıları ile kullanılabilir.NET ve NUnit.
.Runsettings dosyaları kullanan testleri daha yavaş veya var olan herhangi bir yapılandırma dosyası hiç .testsettings dosyaları kullanan testleri çalıştırabilir.
Yine de bazı tür testlerin .testsettings dosyası gerekir:
-
Bir laboratuar ortamında üzerinde dağıtılan testleri.
-
Web performans ve yük testleri.
-
Tanılama veri bağdaştırıcısı IntelliTrace ve olay günlüğü gibi bazı tür özelleştirme.
.Testsettings hakkında daha fazla bilgi için bkz: Visual Studio Testleri için Test Ayarlarını Belirtme.
Testleri bir .runsettings dosyası ile özelleştirme
Bir xml dosyası Visual Studio çözümünüze ekleyin ve kendi dosya uzantısı .runsettings olacak şekilde yeniden adlandırın.
İçerik ile dosyayı değiştirmek örnek.
Kendi gereksinimlerine göre düzenleyebilirsiniz.
Üzerinde Test menüsünden seçin Test ayarları, Test ayarları dosyasını seçin.
Çözümünüz içinde birden fazla .runsettings dosyası oluşturmak etkinleştirmek veya farklı zamanlarda kullanarak devre dışı Test ayarları menüsü.
Bu örnek .runsettings dosyasını kopyalayın
İşte tipik bir .runsettings dosyası. Dosyanın her öğe isteğe bağlı, çünkü varsayılan her bir değeri vardır.
<?xml version="1.0" encoding="utf-8"?>
<RunSettings>
<!-- Configurations that affect the Test Framework -->
<RunConfiguration>
<!-- Path relative to solution directory -->
<ResultsDirectory>.\TestResults</ResultsDirectory>
<!-- [x86] | x64
- You can also change it from menu Test, Test Settings, Default Processor Architecture -->
<TargetPlatform>x86</TargetPlatform>
<!-- Framework35 | [Framework40] | Framework45 -->
<TargetFrameworkVersion>Framework40</TargetFrameworkVersion>
</RunConfiguration>
<!-- Configurations for data collectors -->
<DataCollectionRunSettings>
<DataCollectors>
<DataCollector friendlyName="Code Coverage" uri="datacollector://Microsoft/CodeCoverage/2.0" assemblyQualifiedName="Microsoft.VisualStudio.Coverage.DynamicCoverageDataCollector, Microsoft.VisualStudio.TraceCollector, Version=11.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<Configuration>
<CodeCoverage>
<ModulePaths>
<Exclude>
<ModulePath>.*CPPUnitTestFramework.*</ModulePath>
</Exclude>
</ModulePaths>
</CodeCoverage>
</Configuration>
</DataCollector>
</DataCollectors>
</DataCollectionRunSettings>
<!-- Adapter Specific sections -->
<!-- MSTest adapter -->
<MSTest>
<MapInconclusiveToFailed>True</MapInconclusiveToFailed>
<CaptureTraceOutput>false</CaptureTraceOutput>
<DeleteDeploymentDirectoryAfterTestRunIsComplete>False</DeleteDeploymentDirectoryAfterTestRunIsComplete>
<DeploymentEnabled>False</DeploymentEnabled>
</MSTest>
</RunSettings>
Bu konu geri kalanını dosyasının içeriği açıklanır.
.Runsettings dosyanızı düzenleyin
.Runsettings dosyası aşağıdaki öğelere sahiptir.
Test çalıştırma yapılandırması
Node |
Varsayılan |
Değerler |
---|---|---|
ResultsDirectory |
Test sonuçlarının yerleştirileceği dizin. |
|
TargetFrameworkVersion |
Framework40 |
Framework35, Framework40, Framework45 Bu birim test çerçevesine hangi sürümünü bulmak ve bu testleri yürütmek için kullanılan belirtir. Birim test projesinin yapı özelliklerinde belirttiğiniz .NET platformu sürümünden farklı olabilir. |
TargetPlatform |
x86 |
x 86, x 64 |
TreatTestAdapterErrorsAsWarnings |
false |
false, true |
Tanılama veri bağdaştırıcıları (veri toplayıcıları)
DataCollectors Öğesi tanılama veri bağdaştırıcısı ayarlarını belirtir. Tanı veri bağdaştırıcıları ortamı ve test altındaki uygulama hakkında daha fazla bilgi toplamak için kullanılır. Her bağdaştırıcı varsayılan ayarları vardır ve yalnızca varsayılan değerleri kullanmak istemiyorsanız, ayarları vermek zorundasınız.
Kod kapsamı bağdaştırıcısı
Kod kapsamı veri toplayıcısı testinde uygulama kodu bölümlerini uygulandığından bir günlük oluşturur. Kod kapsamı ayarlarını özelleştirme hakkında daha fazla bilgi için bkz: Kod Kapsamı Çözümlemeyi Özelleştirme.
Diğer tanılama veri bağdaştırıcıları
Kod kapsamı şu anda çalışma ayarları dosyası kullanarak özelleştirilmiş tek bağdaştırıcı bağdaştırıcısıdır.
Herhangi bir tanılama veri bağdaştırıcısı türünü özelleştirmek için bir test ayarları dosyasını kullanmanız gerekir. Daha fazla bilgi için bkz. Visual Studio Testleri için Test Ayarlarını Belirtme.
MSTest çalışma ayarları
Bu ayarları çalışacak olan test yöntemlerini test bağdaştırıcıya özgü [TestMethod] özniteliği.
Yapılandırma |
Varsayılan |
Değerler |
---|---|---|
ForcedLegacyMode |
false |
Visual Studio 2012 MSTest bağdaştırıcısı daha hızlı ve daha ölçeklenebilir hale getirmek için iyileştirilmiştir. Visual Studio'nun önceki sürümleri haliyle tam olarak hangi testlerin, siparişi gibi bazı davranış olmayabilir. Bu değer true eski test bağdaştırıcısı kullanmak. Örneğin, birim testi için belirtilen bir app.config dosyası varsa, bunu kullanabilirsiniz. Testlerinizi daha yeni bağdaştırıcısı kullanmanıza olanak sağlayan düzenlemeyi ele almanızı öneririz. |
IgnoreTestImpact |
false |
MSTest veya Microsoft Test Yöneticisi'ni çalıştırdığınızda son değişikliklerden etkilenen testleri test etkisi özelliğini kulanın. Bu ayarı özelliğini devre dışı bırakır. Daha fazla bilgi için bkz. Nasıl yapılır: Kod Değişikliklerinden Sonra Hangi Testin Çalışması Gerektiğini Denetlemek İçin Veri Toplama. |
AyarlarDosyası |
Burada ms Test bağdaştırıcısı ile kullanmak için test ayarları dosyasını belirtebilirsiniz. Test ayarları dosyasını menüsünü kullanarak da belirtebilirsiniz Test, Test ayarları, Test ayarları dosyası seçin. Bu değer belirtirseniz, ForcedlegacyMode otomatik olarak true. |
|
KeepExecutorAliveAfterLegacyRun |
false |
Bir test çalıştırması tamamlandıktan sonra MSTest kapatılır. Testin bir parçası da şu anda öldürülüyor şekilde başlatılan herhangi bir işlem. Test edilmelidir Canlı tutmak istiyorsanız, bu yapılandırma true etkinleştirin. Örneğin, kodlanmış UI testleri arasında çalışan tarayıcı tutmak için bunu kullanabilirsiniz. |
DeploymentEnabled |
true |
Bu false olarak ayarlarsanız, test yönteminize belirttiğiniz dağıtım öğeleri dağıtım dizinine kopyalanmaz. |
CaptureTraceOutput |
true |
Hata ayıklama izleme için Trace.WriteLine kullanarak Test yönteminden yazabilirsiniz. Bu yapılandırmayı kullanarak kapatabilirsiniz bu izlemeler hata ayıklama. |
DeleteDeploymentDirectoryAfterTestRunIsComplete |
true |
Dağıtım dizini bir test çalıştırdıktan sonra bu değeri false olarak ayarlayarak koruyabilirsiniz. |
MapInconclusiveToFailed |
false |
Bir test ile yetersiz bir durum ise, genellikle Test Gezgini'nde atlanan durumu için eşleştirilir. Bu yapılandırma başarısız gösterdi için yetersiz testleri istiyorsanız kullanın. |
InProcMode |
false |
ms Test bağdaştırıcısı olarak aynı işlemde Çalıştırılacak testleri istiyorsanız, bu değeri true olarak ayarlayın. Bu ayar, küçük bir başarım kazancı sağlar. Ancak bir özel durum ile bir test çıkar, diğer testlere devam etmez. |
Ayrıca bkz.
Kavramlar
Kod Kapsamı Çözümlemeyi Özelleştirme