Unit Test Nedir ? .NET Core’da Unit Test
Unit Test Nedir ?
Unit test, yazılım dünyasında en küçük bileşeninin test edilmesidir. Nesne yönelimli programlamadaki en küçük birim sınıf olduğuna göre sınıfların ve metotlarının test edilmesidir. Dolayısıyla yazılımı oluşturan küçük parçaların doğru çalışıp çalışmadığından emin olunursa, yazılımda bir bütün olarak ta çalışıyor demektir.
Tabiki de hatasız kod olmaz. Her zaman sizden sonra gelen geliştirici, kodta ekstra hatalar bulabilir. Yada ekstra özellikler ekleyebilir. Bu yüzden unit testi yazılan bir kodun anlaşılması daha kolaydır. Sizden sonra gelen geliştiricide kodu daha hızlı bir şekilde anlayabilir.
DevOps Açısından Unit Test
Unit Test artık yazılım dünyasında olmazsa olmaz bir kural olarak bütün projelerde yazılması zorunlu hale gelmektedir. DevOps açısından düşündüğümüzde Continuous Integration ve Continuous Deployment araçları yazmış olduğumuz kodları derleyip yüklemeden önce ilk olarak unit test metotlarını çalıştırır. Bu metotlardan herhangi biri hata aldığında yüklemeyi durdurabilir. Böylelikle unit test yazmak artık yazılım geliştirme dünyasında olmazsa olmazlardandır.
ASP.NET ve ASP.NET Core’da Unit test
ASP.NET ve ASP.NET Core, Microsoft tarafından geliştirilen web uygulama geliştirme frameworklerdir. Her iki teknoloji de, uygulama kodunu test etmek için unit test kullanımına izin verir. Unit test, yazılımın her birimini ayrı ayrı test etmek için kullanılan bir test yöntemidir. Bu testler, kodun düzgün çalıştığından ve beklenen sonuçları ürettiğinden emin olmak için kullanılır.
ASP.NET’de unit test yazmak için genellikle NUnit veya Microsoft tarafından sağlanan Visual Studio Test Runner kullanılır. Bunlar, bir sınıfın veya birim işlevinin bir parçası olarak çalışan kodların test edilmesine olanak tanır. Bunlar, kodun daha önce yazılmış testlerle uyumlu olup olmadığını ve beklenen sonuçları üretip üretmediğini doğrulamak için kullanılabilir.
ASP.NET Core’da unit test yazmak için, .NET Core 2.1 veya üstü bir sürümü ve genellikle xUnit, NUnit veya MSTest frameworklerini kullanabilirsiniz. Bu frameworkler, unit testlerinin oluşturulması, yürütülmesi ve sonuçlarının değerlendirilmesi için araçlar sağlar. ASP.NET Core, unit testlerinin yazılması ve yürütülmesi için birçok özellik ve fayda sağlar. Bu, kodun test edilmesini ve hataların tespit edilmesini kolaylaştırır.
ASP.NET ve ASP.NET Core’da unit test kullanarak, yazılımın doğru çalıştığından ve beklenen sonuçları ürettiğinden emin olabilirsiniz. Bu, yazılım geliştirme sürecinde önemli bir adımdır ve kodun güvenilirliğini arttırır. Ayrıca, unit test kullanımı, kodun daha kolay bakımının yapılmasını sağlar ve geliştirme sürecinin daha hızlı ve verimli olmasına yardımcı olur.
Bazı Unit Test Frameworkleri
- MSTest: Microsoft tarafından geliştirilen unit test kütüphanesidir. ASP.NET ve ASP.NET Core uygulamalarında kullanılan temel unit test kütüphanesidir.
- NUnit: NUnit, özellikle .NET uygulamaları için tasarlanmış açık kaynaklı bir unit test kütüphanesidir. ASP.NET ve ASP.NET Core uygulamalarında da sıkça kullanılmaktadır.
- xUnit: xUnit, açık kaynaklı bir unit test kütüphanesidir ve .NET Core ile uyumludur. ASP.NET Core uygulamaları için özellikle uygun bir unit test kütüphanesidir.
Bu kütüphanelerden birini kullanarak kendinize uygun test metodları oluşturabilirsiniz. Bir sonraki yazımızda Moq kütüphane kullanarak unit test projesi oluşturacağız. Umarım faydalı olmuştur.
Yararlanılan kaynaklar
http://www.canertosuner.com/post/asp-net-core-unit-test https://medium.com/@resulzel/unit-test-nedir-ff353aac240a