Sdílet prostřednictvím


Začínáme s testováním částí

Pomocí sady Visual Studio můžete definovat a spouštět testy jednotek, abyste zachovali stav kódu, zajistili pokrytí kódu a našli chyby a chyby předtím, než to vaši zákazníci dělají. Spusťte často testy jednotek, abyste měli jistotu, že váš kód funguje správně.

V tomto článku kód používá C# a C++, ilustrace jsou v jazyce C#, ale koncepty a funkce platí pro jazyky .NET, C++, Python, JavaScript a TypeScript.

Vytvoření testů jednotek

Tato část popisuje, jak vytvořit projekt testování jednotek.

  1. Otevřete projekt, který chcete testovat v sadě Visual Studio.

    Pro účely předvedení ukázkového testu jednotek tento článek testuje jednoduchý projekt "Hello World" c# nebo konzoly C++ s názvem HelloWorld. Vzorový kód pro takový projekt je následující:

    namespace HelloWorld
    {
       public class Program
       {
          public static void Main()
          {
             Console.WriteLine("Hello World!");
          }
       }
    }
    
  2. V Průzkumníku řešení vyberte uzel řešení. Potom v horním řádku nabídek vyberte Soubor>Přidat>Nový Projekt.

  3. V dialogovém okně nový projekt vyhledejte projekt testu jednotek, který se má použít.

    Zadáním testu do vyhledávacího pole vyhledejte šablonu projektu testu jednotek pro testovací architekturu, kterou chcete použít, například MSTest (C#) nebo projekt nativního testu jednotek (C++) a vyberte ji.

    Jazyky .NET v sadě Visual Studio obsahují integrované šablony pro NUnit a xUnit. V jazyce C++ v tomto příkladu vyberte projekt Nativní test jednotek , který používá rozhraní Microsoft Native Unit Test Framework. (Pokud chcete použít jinou testovací architekturu jazyka C++, přečtěte si téma Psaní testů jednotek pro C/C++). Informace o Pythonu najdete v tématu Nastavení testování částí v kódu Pythonu pro nastavení testovacího projektu.

    Návod

    Tento článek popisuje, jak ručně vytvořit jednotkové testy. Pokud chcete generovat testy automaticky z existujícího kódu, přečtěte si téma Generování a spouštění jednotkových testů pomocí testování GitHub Copilot pro .NET, a pro jiné jazyky vizte Použití lomítkových příkazů v GitHub Copilotu.

    Návod

    Tento článek popisuje, jak ručně vytvořit jednotkové testy. Pokud chcete generovat testy automaticky z existujícího kódu, podívejte se na Vytvoření stubů metod jednotkového testu jazyka C# z kódu nebo pro jiné jazyky, podívejte se na Použití příkazů lomítka v GitHub Copilotu.

    Následující obrázek ukazuje test jednotek MSTest, který je podporován v .NET.

    Šablona projektu jednotkového testu v sadě Visual Studio 2022

    Klepněte na tlačítko Další, zvolte název testovacího projektu a klepněte na tlačítko Vytvořit.

    Projekt se přidá do vašeho řešení.

    Projekt testování jednotek v Průzkumníku řešení

  4. V projektu testování jednotek přidejte odkaz na projekt, který chcete testovat, kliknutím pravým tlačítkem myši na odkazy nebo závislosti a následným výběrem možnosti Přidat odkaz nebo Přidat odkaz na projekt.

  5. Vyberte projekt, který obsahuje kód, který otestujete, a klikněte na OK.

    Přidání odkazu na projekt v sadě Visual Studio

  6. Přidejte kód do metody testování jednotek.

    Následující kód můžete použít například tak, že vyberete správnou kartu dokumentace, která odpovídá vaší testovací rozhraní: MSTest, NUnit nebo xUnit (podporováno pouze v .NET) nebo C++ Microsoft Native Unit Test Framework.

    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);
             }
          }
       }
    }
    

Spouštění testů jednotek

  1. Otevřete Průzkumníka testů.

    Průzkumníka testů otevřete tak,že v horním řádku nabídek zvolíte >Průzkumník testů (nebo stisknete Ctrl + E, T).

  2. Testy jednotek spusťte kliknutím na Spustit vše (nebo stiskněte Ctrl + R, V).

    Spouštění jednotkových testů v Průzkumníku testů

    Po dokončení testů zelená značka zaškrtnutí označuje, že test proběhl úspěšně. Červená ikona x označuje, že test selhal.

    Kontrola výsledků jednotkových testů v Průzkumníku testů

Návod

Pomocí Průzkumníka testů můžete spouštět testy jednotek z integrované testovací architektury (MSTest) nebo z testovacích architektur třetích stran. Testy můžete seskupit do kategorií, filtrovat seznam testů a vytvářet, ukládat a spouštět seznamy testů. Můžete také ladit testy a analyzovat výkon testů a pokrytí kódu.

Zobrazení výsledků živého testu jednotek (Visual Studio Enterprise)

Pokud používáte testovací architekturu MSTest, xUnit nebo NUnit v sadě Visual Studio 2017 nebo novější, zobrazí se živé výsledky testů jednotek.

Poznámka:

K provedení těchto kroků se vyžaduje Visual Studio Enterprise spolu s kódem .NET a jednou z následujících testovacích architektur: MSTest, xUnit nebo NUnit.

  1. V nabídce Test můžete zapnout živé testování jednotek tím, že vyberete možnost Test>Live Unit Testing>Spustit.

    Spuštění živého testování jednotek v sadě Visual Studio 2022

  2. Prohlédněte si výsledky testů v okně editoru kódu při psaní a úpravě kódu.

    Zobrazení výsledků testů

  3. Kliknutím na indikátor výsledku testu zobrazíte další informace, například názvy testů, které tuto metodu pokrývají.

    Volba indikátorů výsledků testu

Další informace o živém testování jednotek najdete v tématu Live Unit Testing.

Použití testovací architektury třetí strany

Testy jednotek můžete v sadě Visual Studio spouštět pomocí testovacích architektur třetích stran, jako jsou NUnit, Boost nebo Google C++ Testing Framework, v závislosti na vašem programovacím jazyce. Použití architektury třetí strany:

  • Pomocí Správce balíčků NuGet nainstalujte balíček NuGet pro architekturu podle vašeho výběru.

  • (.NET) Visual Studio 2017 verze 14.6 obsahuje předem nakonfigurované šablony testovacích projektů pro NUnit a xUnit testovací architektury. Šablony také obsahují nezbytné balíčky NuGet pro povolení podpory.

  • (C++) Ve Visual Studio 2017 a novějších verzích jsou již zahrnuty některé frameworky, jako je Google C++ Testing Framework. Další informace naleznete v tématu Psaní jednotkových testů pro C/C++ ve Visual Studiu.

Chcete-li přidat projekt jednotkového testu:

  1. Otevřete řešení obsahující kód, který chcete testovat.

  2. V Průzkumníku řešení klikněte pravým tlačítkem myši na řešení a zvolte Přidat>nový projekt.

  3. Vyberte šablonu projektu testování jednotek.

    V tomto příkladu vyberte NUnit.

    Šablona testovacího projektu NUnit v sadě Visual Studio 2022

    Šablona projektu obsahuje odkazy NuGet na NUnit a NUnit3TestAdapter.

    Závislosti NUnit NuGet v Průzkumníku řešení

  4. Přidejte odkaz z testovacího projektu do projektu, který obsahuje kód, který chcete testovat.

    Klikněte pravým tlačítkem myši na projekt v Průzkumníku řešení a pak vyberte Přidat>odkaz. (Odkaz můžete přidat také z nabídky po kliknutí pravým tlačítkem myši uzlu Odkazy nebo Závislosti .)

  5. Přidejte kód do testovací metody.

    Přidání kódu do souboru kódu testu jednotek

  6. Spusťte test z Průzkumníka testů nebo tak, že kliknete pravým tlačítkem myši na testovací kód a zvolíte Spustit testy (nebo Ctrl + R, T).

Další kroky