Aracılığıyla paylaş


.NET'de test etme

Bu makale, test kavramını tanıtır ve kodu doğrulamak için farklı test türlerinin nasıl kullanılabileceğini gösterir. .NET CLI veya Integrated Development Environments (IDE) gibi .NET uygulamalarını test etmek için çeşitli araçlar kullanılabilir.

Test türleri

Otomatikleştirilmiş testler, uygulama kodunun yazarlarının amaçladığı şeyi yapmalarını sağlamanın harika bir yoludur. Bu makale birim testlerini, tümleştirme testlerini ve yük testlerini kapsar.

Birim testleri

birim testi, "iş birimi" olarak da bilinen tek tek yazılım bileşenlerini veya yöntemlerini kullanan bir testtir. Birim testleri yalnızca geliştiricinin denetimindeki kodu test etmelidir. Altyapı sorunlarını test etmemektedir. Altyapıyla ilgili endişeler arasında veritabanları, dosya sistemleri ve ağ kaynaklarıyla etkileşim kurma yer alır.

Birim testleri oluşturma hakkında daha fazla bilgi için bkz. Test araçları.

Tümleştirme testleri

tümleştirme testi, "tümleştirme" olarak da bilinen iki veya daha fazla yazılım bileşeninin birlikte çalışma becerisini kullanmasından dolayı birim testinden farklıdır. Bu testler test kapsamındaki sistemin daha geniş bir spektrumu üzerinde çalışırken birim testleri tek tek bileşenlere odaklanır. Tümleştirme testleri genellikle altyapı sorunlarını içerir.

Yük testleri

yük testi, bir sistemin belirli bir yükü işleyip işleyemeyeceğini belirlemeyi amaçlar. Örneğin, bir uygulamayı kullanan eşzamanlı kullanıcı sayısı ve uygulamanın etkileşimleri hızlı bir şekilde işleme yeteneği. Web uygulamalarının yük testi hakkında daha fazla bilgi için bkz. ASP.NET Core yük/stres testi.

Testle ilgili dikkat edilmesi gerekenler

Test yazarken en iyi uygulamaların olduğunu aklınızda bulundurun. Örneğin Test Temelli Geliştirme (TDD), denetlemesi amaçlanan koddan önce birim testi yazdığınız zamandır. TDD, yazmadan önce bir kitabın ana hatlarını belirlemeye benzer. Birim testi, geliştiricilerin daha basit, okunabilir ve verimli kod yazmasına yardımcı olur.

Test araçları

testleri .NET çalıştırırken, iki bileşen söz konusu olur: test platformu ve test çerçevesi.

Test platformları

Test platformu, testleri çalıştıran ve IDE'ler ve CLI gibi araçlarla iletişim kuran altyapıdır.

VSTest ile Microsoft.Testing.Platform arasındaki farkları anlamak ve senaryonuz için en iyi platformu seçmek için Test platformlarına genel bakış özelliğini kullanın.

Geçiş kılavuzu için bkz. VSTest'ten Microsoft.Testing.Platform'a geçiş.

Test çerçeveleri

Test çerçevesi, test platformunun üzerine kurulmuştur. Test yazarı olarak kullanabileceğiniz öznitelik ve API kümesini tanımlar. Genellikle test çerçevesi ile test platformu arasında bir iletişim katmanı işlevi gören bir test bağdaştırıcısı tarafından desteklenir. Popüler test çerçeveleri MSTest, NUnit, TUnit ve xUnit.net'dır.

MSTest

MSTest tüm .NET diller için Microsoft test çerçevesidir. Genişletilebilir ve .NET CLI, Visual Studio, Visual Studio Code ve Rider ile çalışır. Hem VSTest hem de Microsoft.Testing.Platform'u destekler.

Daha fazla bilgi için aşağıdaki kaynaklara bakın:

NUnit

NUnit tüm .NET dilleri için bir birim testi çerçevesidir. Başlangıçta NUnit, JUnit'ten taşındı ve mevcut son sürüm, birçok yeni özellik ve çeşitli .NET platformları için destek ile yeniden yazıldı. Bu, .NET Foundation'ın bir projesidir. Hem VSTest hem de Microsoft.Testing.Platform'u destekler.

Daha fazla bilgi için aşağıdaki kaynaklara bakın:

TUnit

TUnit tamamen Microsoft.Testing.Platform'un üzerine kurulmuştur ve VSTest'i desteklemez. Daha fazla bilgi için TUnit belgelerine bakın.

xUnit.net

xUnit.net .NET için ücretsiz, açık kaynaklı, topluluk odaklı bir birim testi aracıdır. NUnit v2'nin özgün mucidi xUnit.net yazdı. xUnit.net birim testi .NET uygulamaları için en son teknolojidir. Ayrıca ReSharper, CodeRush ve TestDriven.NET ile de çalışır. xUnit.net, .NET Foundation'ın bir projesi olup, onun davranış kuralları kapsamında çalışır. Hem VSTest hem de Microsoft.Testing.Platform'u destekler

Daha fazla bilgi için aşağıdaki kaynaklara bakın:

Testleri çalıştırma

.NET CLI

dotnet test komutuyla .NET CLI kullanarak bir çözümdeki tüm test projelerinden birim testleri çalıştırabilirsiniz. .NET CLI, Integrated Development Environments (IDE) kullanıcı arabirimleri aracılığıyla kullanılabilir hale getiren işlevlerin çoğunu kullanıma sunar. .NET CLI çapraz platformdur ve sürekli tümleştirme ve dağıtım ardışık düzenlerinin bir parçası olarak kullanılabilir. .NET CLI, ortak görevleri otomatikleştirmek için betikli işlemler ile birlikte kullanılır.

IDE

Visual Studio, Visual Studio Code veya Rider kullanıyor olun, test işlevleri için grafik kullanıcı arabirimleri vardır. IDE'lerde CLI'dan daha fazla özellik vardır, örneğin, Canlı Birim Testi. Daha fazla bilgi için bkz. Visual Studio ile testleri dahil etme ve dışlama.

Ayrıca bkz.

Daha fazla bilgi için aşağıdaki makalelere bakın: