Birim testini kullanmaya başlama

Visual Studio'yu kullanarak kod durumunu korumak, kod kapsamını güvence altına almak ve müşterilerinizden önce hataları ve hataları bulmak için birim testleri tanımlayıp çalıştırın. Kodunuzun düzgün çalıştığından emin olmak için birim testlerinizi sık sık çalıştırın.

Bu makalede kod C# ve C++ kullanır, çizimler C# dilindedir, ancak kavramlar ve özellikler .NET dilleri, C++, Python, JavaScript ve TypeScript için geçerlidir.

Birim testleri oluşturma

Bu bölümde birim testi projesinin nasıl oluşturulacağı açıklanmaktadır.

  1. Visual Studio'da test etmek istediğiniz projeyi açın.

    Örnek bir birim testi göstermek amacıyla, bu makalede HelloWorld adlı basit bir "Merhaba Dünya" C# veya C++ Konsol projesi sınanır. Böyle bir projenin örnek kodu aşağıdaki gibidir:

    namespace HelloWorld
    {
       public class Program
       {
          public static void Main()
          {
             Console.WriteLine("Hello World!");
          }
       }
    }
    
  2. Çözüm Gezgini çözüm düğümünü seçin. Ardından üst menü çubuğundan Dosya>Ekle Yeni Proje'yi> seçin.

  3. Yeni proje iletişim kutusunda, kullanılacak birim testi projesini bulun.

    MsTest (C#) veya Yerel Birim Testi projesi (C++) gibi kullanmak istediğiniz test çerçevesine yönelik birim testi proje şablonunu bulmak için arama kutusuna test yazın ve seçin.

    Visual Studio 2017 sürüm 14.8'den itibaren .NET dilleri NUnit ve xUnit için yerleşik şablonlar içerir. C++ için bu örnekte Microsoft Native Unit Test Framework kullanan Yerel Birim Testi projesini seçin. (Farklı bir C++ test çerçevesi kullanmak için bkz. C/C++için birim testleri yazma). Python için bkz . Test projenizi ayarlamak için Python kodunda birim testi ayarlama.

    İpucu

    Yalnızca C# için, daha hızlı bir yöntem kullanarak koddan birim testi projeleri oluşturabilirsiniz. Daha fazla bilgi için bkz . Birim testi projeleri ve test yöntemleri oluşturma. Bu yöntemi .NET Core veya .NET Standard ile kullanmak için Visual Studio 2019 veya üzeri gereklidir.

    Aşağıdaki çizimde .NET'te desteklenen bir MSTest birim testi gösterilmektedir.

    Unit test project template in Visual Studio 2022

    İleri'ye tıklayın, test projesi için bir ad seçin ve ardından Oluştur'a tıklayın.

    Unit test project template in Visual Studio 2019

    İleri'ye tıklayın, test projesi için bir ad seçin ve ardından Oluştur'a tıklayın.

    Proje çözümünüze eklenir.

    Unit test project in Solution Explorer

    Unit test project in Solution Explorer

  4. Birim testi projesinde, Başvurular veya Bağımlılıklar'a sağ tıklayıp Başvuru Ekle veya Proje Başvurusu Ekle'yi seçerek test etmek istediğiniz projeye bir başvuru ekleyin.

  5. Test ettiğiniz kodu içeren projeyi seçin ve Tamam'a tıklayın.

    Add project reference in Visual Studio

    Add project reference in Visual Studio

  6. Birim testi yöntemine kod ekleyin.

    Örneğin, test çerçevenizle eşleşen doğru belge sekmesini seçerek aşağıdaki kodu kullanabilirsiniz: MSTest, NUnit veya xUnit (yalnızca .NET'te desteklenir) veya C++ Microsoft Yerel Birim Test Çerçevesi.

    using Microsoft.VisualStudio.TestTools.UnitTesting;
    using System.IO;
    using System;
    
    namespace HelloWorldTests
    {
       [TestClass]
       public class UnitTest1
       {
          private const string Expected = "Hello World!";
          [TestMethod]
          public void TestMethod1()
          {
             using (var sw = new StringWriter())
             {
                Console.SetOut(sw);
                HelloWorld.Program.Main();
    
                var result = sw.ToString().Trim();
                Assert.AreEqual(Expected, result);
             }
          }
       }
    }
    

Birim testlerini çalıştırma

  1. Test Gezgini'ne gidin.

    Test Gezgini'ni açmak için üst menü çubuğundan Test>Test Gezgini'ni seçin (veya Ctrl + E, T tuşlarına basın).

  2. Tümünü Çalıştır'a tıklayarak birim testlerinizi çalıştırın (veya Ctrl + R, V tuşlarına basın).

    Run unit tests in Test Explorer

    Run unit tests in Test Explorer

    Testler tamamlandıktan sonra yeşil onay işareti testin geçtiğini gösterir. Kırmızı bir "x" simgesi testin başarısız olduğunu gösterir.

    Review unit test results in Test Explorer

    Review unit test results in Test Explorer

İpucu

Yerleşik test çerçevesinden (MSTest) veya üçüncü taraf test çerçevelerinden birim testleri çalıştırmak için Test Gezgini'ni kullanabilirsiniz. Testleri kategoriler halinde gruplandırabilir, test listesini filtreleyebilir ve test çalma listeleri oluşturabilir, kaydedebilir ve çalıştırabilirsiniz. Ayrıca testlerde hata ayıklayabilir, test performansını ve kod kapsamını analiz edebilirsiniz.

Canlı birim testi sonuçlarını görüntüleme (Visual Studio Enterprise)

Visual Studio 2017 veya sonraki sürümlerinde MSTest, xUnit veya NUnit test çerçevesini kullanıyorsanız, birim testlerinizin canlı sonuçlarını görebilirsiniz.

Not

Bu adımları izlemek için Visual Studio Enterprise,.NET kodu ve aşağıdaki test çerçevelerinden biriyle birlikte gereklidir: MSTest, xUnit veya NUnit.

  1. Test Canlı Birim Testi Başlat'ı seçerek Test> menüsünden canlı birim testini> açın.

    Start live unit testing in Visual Studio 2019

    Start live unit testing in Visual Studio 2022

  2. Kod yazarken ve düzenlerken kod düzenleyicisi penceresinde testlerin sonuçlarını görüntüleyin.

    View the results of the tests

    View the results of the tests

  3. Bu yöntemi kapsayan testlerin adları gibi daha fazla bilgi görmek için bir test sonucu göstergesine tıklayın.

    Choose the test result indicators

    Choose the test result indicators

Canlı birim testi hakkında daha fazla bilgi için bkz . Canlı birim testi.

Üçüncü taraf test çerçevesi kullanma

Programlama dilinize bağlı olarak NUnit, Boost veya Google C++ Testing Framework gibi üçüncü taraf test çerçevelerini kullanarak Visual Studio'da birim testleri çalıştırabilirsiniz. Üçüncü taraf çerçeve kullanmak için:

  • NuGet paketini istediğiniz çerçeveye yüklemek için NuGet Paket Yöneticisi kullanın.

  • (.NET) Visual Studio 2017 sürüm 14.6'dan başlayarak, Visual Studio NUnit ve xUnit test çerçeveleri için önceden yapılandırılmış test projesi şablonları içerir. Şablonlar, desteği etkinleştirmek için gerekli NuGet paketlerini de içerir.

  • (C++) Visual Studio 2017 ve sonraki sürümlerde Google C++ Test Çerçevesi gibi bazı çerçeveler zaten eklenmiştir. Daha fazla bilgi için bkz . Visual Studio'da C/C++ için birim testleri yazma.

Birim testi projesi eklemek için:

  1. Test etmek istediğiniz kodu içeren çözümü açın.

  2. Çözüm Gezgini'da çözüme sağ tıklayın ve Yeni Proje Ekle'yi> seçin.

  3. Birim testi proje şablonunu seçin.

    Bu örnekte NUnit'i seçin

    NUnit test project template in Visual Studio 2022

    NUnit test project template in Visual Studio 2019

    İleri'ye tıklayın, projeyi adlandırın ve ardından Oluştur'a tıklayın.

    Proje şablonu NUnit ve NUnit3TestAdapter'a NuGet başvuruları içerir.

    NUnit NuGet dependencies in Solution Explorer

    NUnit NuGet dependencies in Solution Explorer

  4. Test etmek istediğiniz kodu içeren projeye test projesinden bir başvuru ekleyin.

    Çözüm Gezgini'da projeye sağ tıklayın ve ardından Başvuru Ekle'yi> seçin. (Ayrıca ,Başvurular veya Bağımlılıklar düğümü.)

  5. Test yönteminize kod ekleyin.

    Add code to your unit test code file

    Add code to your unit test code file

  6. Test Gezgini'nden veya test koduna sağ tıklayıp Test Çalıştır'ı (veya Ctrl + R, T) seçerek testi çalıştırın.

Sonraki adımlar