Preto je nevyhnutné získať základy testovania jednotiek už v počiatočných fázach vývoja, aby ste sa vyhli krivke učenia pri práci s rozsiahlymi kódovými základňami.
V tomto návode vám predstavíme rámec testovania jednotiek pomocou jazyka C# a testovacej knižnice MSTest. Vytvoríme základnú aplikáciu, ktorá vám umožní naučiť sa vytvárať unit testy, ako ich spúšťať a ako interpretovať výsledky z neúspechu alebo úspechu testu.
Testovacie prostredie
Začnime diskusiou o testovacom riešení a o tom, ako nakonfigurovať našu základnú aplikáciu.
Ak chcete sledovať a replikovať aplikáciu v tomto návode, uistite sa, že máte nasledujúce:
- Nainštalované Visual Studio
- Nakonfigurované nástroje .NET a C# na vašom počítači
Vytvorte aplikáciu
Potom otvorte Visual Studio a vytvorte nové riešenie. Pre tento tutoriál vytvoríme základnú aplikáciu kalkulačky. Aplikácii môžete dať ľubovoľné meno.
Ďalej vytvorte nový projekt a vyberte typ projektu ako MSTest Test Project a dajte mu ľubovoľný požadovaný názov.
Nezabudnite vybrať možnosť „Pridať do riešenia“ a vyberte predtým vytvorenú aplikáciu.
Mali by ste mať hlavnú aplikáciu a projekt testovania jednotiek, ako je uvedené v prieskumníkovi riešení.
Napíšte kód pre aplikáciu kalkulačky
Ďalším krokom je napísanie kódu pre našu aplikáciu kalkulačky. Môžeme to urobiť v súbore CalcApp „program.cs“.
Keďže hľadáme základnú funkcionalitu, môžeme pridať zdrojový kód takto:
kalkulačka verejnej triedy{
verejnosti dvojitý Pridať ( dvojitý a , dvojitý b )
{
vrátiť a + b ;
}
verejnosti dvojitý Odčítať ( dvojitý a , dvojitý b )
{
vrátiť a - b ;
}
verejnosti dvojitý Vynásobte ( dvojitý a , dvojitý b )
{
vrátiť a * b ;
}
verejnosti dvojitý Rozdeliť ( dvojitý a , dvojitý b )
{
ak ( b == 0 )
hodí novú výnimku DivideByZeroException ( ) ;
vrátiť a / b ;
}
}
Ako môžete hádať, predchádzajúci kód vytvára aplikáciu kalkulačky, ktorá dokáže vykonávať základné aritmetické aplikácie.
Napíšte Unit Tests
Keď skončíme, môžeme napísať jednotkové testy pre triedu „Kalkulačka“. V tomto prípade všetko, čo musíme urobiť, je napísať testy do súboru „UnitTest“ projektu takto:
pomocou systému ;menný priestor CalcApp
{
kalkulačka verejnej triedy
{
verejnosti dvojitý Pridať ( dvojitý a , dvojitý b )
{
vrátiť a + b ;
}
verejnosti dvojitý Odčítať ( dvojitý a , dvojitý b )
{
vrátiť a - b ;
}
verejnosti dvojitý Vynásobte ( dvojitý a , dvojitý b )
{
vrátiť a * b ;
}
verejnosti dvojitý Rozdeliť ( dvojitý a , dvojitý b )
{
ak ( b == 0 )
hodí novú výnimku DivideByZeroException ( ) ;
vrátiť a / b ;
}
}
}
menný priestor CalcTest
{
[ TestClass ]
verejná trieda CalculatorTests
{
súkromná kalkulačka kalkulačka ;
[ TestInitialize ]
verejnosti neplatné Nastaviť ( )
{
kalkulačka = nová kalkulačka ( ) ;
}
[ Testovacia metóda ]
verejnosti neplatné Add_TwoPositiveNumbers_ReturnsCorrectSum ( )
{
bol výsledok = kalkulačka. Pridať ( 5 , 5 ) ;
Tvrdiť. AreEqual ( 10 , výsledok ) ;
}
[ Testovacia metóda ]
verejnosti neplatné Subtract_TwoPositiveNumbers_ReturnsCorrectDifference ( )
{
bol výsledok = kalkulačka. Odčítať ( 10 , 5 ) ;
Tvrdiť. AreEqual ( 5 , výsledok ) ;
}
[ Testovacia metóda ]
verejnosti neplatné Multiply_TwoPositiveNumbers_ReturnsCorrectProduct ( )
{
bol výsledok = kalkulačka. Vynásobte ( 5 , 5 ) ;
Tvrdiť. AreEqual ( 25 , výsledok ) ;
}
[ Testovacia metóda ]
[ ExpectedException ( Typ ( Výnimka DivideByZero ) ) ]
verejnosti neplatné Divide_DenominatorIsZero_ThrowsDivideByZeroException ( )
{
bol výsledok = kalkulačka. Rozdeliť ( 5 , 0 ) ;
}
[ Testovacia metóda ]
verejnosti neplatné Divide_TwoPositiveNumbers_ReturnsCorrectQuotient ( )
{
bol výsledok = kalkulačka. Rozdeliť ( 10 , 5 ) ;
Tvrdiť. AreEqual ( 2 , výsledok ) ;
}
}
}
Záver
Toto je základný návod, ktorý pokrýva základy testovania jednotiek v C# pomocou rámca MSTest.