Začínáme s testováním jednotek
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í. Testy jednotek často spusťte, 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.
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í:
V Průzkumník řešení vyberte uzel řešení. Potom v horním řádku nabídek vyberte Soubor>přidat>nový projekt.
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.
Počínaje sadou Visual Studio 2017 verze 14.8 zahrnují jazyky .NET 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 Zápis 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.
Tip
Pouze pro jazyk C# můžete vytvářet projekty testů jednotek z kódu pomocí rychlejší metody. Další informace naleznete v tématu Vytvoření projektů testů jednotek a testovacích metod. K použití této metody s .NET Core nebo .NET Standard se vyžaduje Visual Studio 2019 nebo novější.
Následující obrázek ukazuje test jednotek MSTest, který je podporován v .NET.
Klepněte na tlačítko Další, zvolte název testovacího projektu a klepněte na tlačítko Vytvořit.
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í.
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.
Vyberte projekt, který obsahuje kód, který otestujete, a klikněte na OK.
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); } } } }
Spuštění testů jednotek
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).
Testy jednotek spusťte kliknutím na Spustit vše (nebo stiskněte Ctrl + R, V).
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.
Tip
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.
V nabídce Test můžete živé testování jednotek zapnout tak, že zvolíte Spustit testování>jednotek Test>Live.
Prohlédněte si výsledky testů v okně editoru kódu při psaní a úpravě kódu.
Kliknutím na indikátor výsledku testu zobrazíte další informace, například názvy testů, které tuto metodu pokrývají.
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++) V sadě Visual Studio 2017 a novějších verzích jsou již součástí některé architektury, jako je Google C++ Testing Framework. Další informace naleznete v tématu Zápis testů jednotek pro C/C++ v sadě Visual Studio.
Přidání projektu testu jednotek:
Otevřete řešení obsahující kód, který chcete testovat.
Klikněte pravým tlačítkem na řešení v Průzkumník řešení a zvolte Přidat>nový projekt.
Vyberte šablonu projektu testování jednotek.
V tomto příkladu vyberte NUnit.
Klepněte na tlačítko Další, pojmenujte projekt a potom klepněte na tlačítko Vytvořit.
Šablona projektu obsahuje odkazy NuGet na NUnit a NUnit3TestAdapter.
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ík řešení a pak vyberte Přidat>odkaz. (Můžete také přidat odkaz z místní nabídky Odkazy nebo uzel závislosti .)
Přidejte kód do testovací metody.
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).