Je proto nezbytné získat základy testování jednotek v raných fázích vývoje, abyste se vyhnuli křivce učení při práci s rozsáhlými kódovými základnami.
V tomto tutoriálu vás seznámíme s rámcem testování jednotek pomocí C# a testovací knihovny MSTest. Vytvoříme základní aplikaci, která vám umožní naučit se vytvářet unit testy, jak je spouštět a jak interpretovat výsledky z neúspěchu nebo úspěchu testu.
Testovací prostředí
Začněme diskusí o testovacím řešení a o tom, jak nakonfigurovat naši základní aplikaci.
Chcete-li sledovat a replikovat aplikaci v tomto kurzu, ujistěte se, že máte následující:
- Nainstalované Visual Studio
- Nakonfigurované nástroje .NET a C# na vašem počítači
Vytvořte aplikaci
Dále otevřete Visual Studio a vytvořte nové řešení. Pro tento tutoriál vytvoříme základní aplikaci kalkulačky. Aplikaci můžete dát libovolným jménem.
Dále vytvořte nový projekt a vyberte typ projektu jako MSTest Test Project a dejte mu libovolný požadovaný název.
Ujistěte se, že jste vybrali „Přidat do řešení“ a vyberte dříve vytvořenou aplikaci.
Měli byste mít hlavní aplikaci a projekt testování jednotky, jak je znázorněno v průzkumníku řešení.
Napište kód pro aplikaci Kalkulačka
Dalším krokem je napsání kódu pro naši aplikaci kalkulačky. Můžeme to udělat v souboru CalcApp „program.cs“.
Protože hledáme základní funkcionalitu, můžeme přidat zdrojový kód následovně:
kalkulačka veřejné třídy{
veřejnost dvojnásobek Přidat ( dvojnásobek A , dvojnásobek b )
{
vrátit se A + b ;
}
veřejnost dvojnásobek Odčítat ( dvojnásobek A , dvojnásobek b )
{
vrátit se A - b ;
}
veřejnost dvojnásobek Násobit ( dvojnásobek A , dvojnásobek b )
{
vrátit se A * b ;
}
veřejnost dvojnásobek Rozdělit ( dvojnásobek A , dvojnásobek b )
{
-li ( b == 0 )
vyvoláte novou výjimku DivideByZeroException ( ) ;
vrátit se A / b ;
}
}
Jak můžete hádat, předchozí kód vytváří aplikaci kalkulačky, která může provádět základní aritmetické aplikace.
Napište Unit Tests
Jakmile budeme hotovi, můžeme napsat unit testy pro třídu „Kalkulačka“. V tomto případě vše, co musíme udělat, je zapsat testy do souboru „UnitTest“ projektu následovně:
pomocí System ;jmenný prostor CalcApp
{
kalkulačka veřejné třídy
{
veřejnost dvojnásobek Přidat ( dvojnásobek A , dvojnásobek b )
{
vrátit se A + b ;
}
veřejnost dvojnásobek Odčítat ( dvojnásobek A , dvojnásobek b )
{
vrátit se A - b ;
}
veřejnost dvojnásobek Násobit ( dvojnásobek A , dvojnásobek b )
{
vrátit se A * b ;
}
veřejnost dvojnásobek Rozdělit ( dvojnásobek A , dvojnásobek b )
{
-li ( b == 0 )
vyvolá novou výjimku DivideByZeroException ( ) ;
vrátit se A / b ;
}
}
}
jmenný prostor CalcTest
{
[ TestClass ]
veřejné třídy CalculatorTests
{
soukromá kalkulačka kalkulačka ;
[ TestInitialize ]
veřejnost prázdnota Založit ( )
{
kalkulačka = nová kalkulačka ( ) ;
}
[ Testovací metoda ]
veřejnost prázdnota Add_TwoPositiveNumbers_ReturnsCorrectSum ( )
{
byl výsledek = kalkulačka. Přidat ( 5 , 5 ) ;
Tvrdit. Jsou rovny ( 10 , výsledek ) ;
}
[ Testovací metoda ]
veřejnost prázdnota Subtract_TwoPositiveNumbers_ReturnsCorrectDifference ( )
{
byl výsledek = kalkulačka. Odčítat ( 10 , 5 ) ;
Tvrdit. Jsou rovny ( 5 , výsledek ) ;
}
[ Testovací metoda ]
veřejnost prázdnota Multiply_TwoPositiveNumbers_ReturnsCorrectProduct ( )
{
byl výsledek = kalkulačka. Násobit ( 5 , 5 ) ;
Tvrdit. Jsou rovny ( 25 , výsledek ) ;
}
[ Testovací metoda ]
[ Očekávaná výjimka ( Typ ( Výjimka DivideByZero ) ) ]
veřejnost prázdnota Divide_DenominatorIsZero_ThrowsDivideByZeroException ( )
{
byl výsledek = kalkulačka. Rozdělit ( 5 , 0 ) ;
}
[ Testovací metoda ]
veřejnost prázdnota Divide_TwoPositiveNumbers_ReturnsCorrectQuotient ( )
{
byl výsledek = kalkulačka. Rozdělit ( 10 , 5 ) ;
Tvrdit. Jsou rovny ( 2 , výsledek ) ;
}
}
}
Závěr
Toto je základní výukový program, který pokrývá základy testování jednotek v C# pomocí rámce MSTest.