Siksi on tärkeää saada yksikkötestauksen perusteet varhaisessa kehitysvaiheessa, jotta vältytään oppimiskäyrältä, kun käsittelet laajoja koodikantoja.
Tässä opetusohjelmassa esittelemme sinut yksikkötestauksen puitteisiin C#:n ja MSTest-testauskirjaston avulla. Rakennamme perussovelluksen, jonka avulla opit luomaan yksikkötestejä, suorittamaan niitä ja tulkitsemaan testin epäonnistumisen tai onnistumisen tuloksia.
Testausympäristö
Aloitetaan keskustelemalla testiratkaisusta ja perussovelluksemme konfiguroinnista.
Jotta voit seurata ja kopioida tämän opetusohjelman sovellusta, varmista, että sinulla on seuraavat asiat:
- Visual Studio asennettu
- Konfiguroidut .NET- ja C#-työkalut koneellesi
Luo sovellus
Avaa seuraavaksi Visual Studio ja luo uusi ratkaisu. Tätä opetusohjelmaa varten rakennamme peruslaskinsovelluksen. Voit antaa hakemuksen haluamallasi nimellä.
Luo seuraavaksi uusi projekti ja valitse projektin tyypiksi MSTest Test Project ja anna sille haluamasi nimi.
Varmista, että valitset 'Lisää ratkaisuun' ja valitse aiemmin luotu sovellus.
Sinulla pitäisi olla pääsovellus ja yksikkötestausprojekti ratkaisunhallinnassa esitetyllä tavalla.
Kirjoita laskurisovelluksen koodi
Seuraava vaihe on koodin kirjoittaminen laskinsovelluksellemme. Voimme tehdä tämän CalcApp “program.cs”-tiedostossa.
Koska etsimme perustoimintoja, voimme lisätä lähdekoodin seuraavasti:
julkinen luokka Laskin{
julkinen kaksinkertainen Lisätä ( kaksinkertainen a , kaksinkertainen b )
{
palata a + b ;
}
julkinen kaksinkertainen Vähentää ( kaksinkertainen a , kaksinkertainen b )
{
palata a - b ;
}
julkinen kaksinkertainen Kerro ( kaksinkertainen a , kaksinkertainen b )
{
palata a * b ;
}
julkinen kaksinkertainen Jakaa ( kaksinkertainen a , kaksinkertainen b )
{
jos ( b == 0 )
heittää uusi DivideByZeroException ( ) ;
palata a / b ;
}
}
Kuten arvata saattaa, edellinen koodi luo laskinsovelluksen, joka pystyy suorittamaan aritmeettiset perussovellukset.
Kirjoita yksikkötestit
Kun olemme valmiit, voimme kirjoittaa 'Laskin'-luokan yksikkötestit. Tässä tapauksessa meidän tarvitsee vain kirjoittaa testit projektin UnitTest-tiedostoon seuraavasti:
järjestelmän avulla ;nimiavaruus CalcApp
{
julkinen luokka Laskin
{
julkinen kaksinkertainen Lisätä ( kaksinkertainen a , kaksinkertainen b )
{
palata a + b ;
}
julkinen kaksinkertainen Vähentää ( kaksinkertainen a , kaksinkertainen b )
{
palata a - b ;
}
julkinen kaksinkertainen Kerro ( kaksinkertainen a , kaksinkertainen b )
{
palata a * b ;
}
julkinen kaksinkertainen Jakaa ( kaksinkertainen a , kaksinkertainen b )
{
jos ( b == 0 )
heittää uusi DivideByZeroException ( ) ;
palata a / b ;
}
}
}
nimiavaruus CalcTest
{
[ Test Class ]
julkisen luokan CalculatorTests
{
yksityinen Laskin laskin ;
[ Testaa alusta ]
julkinen mitätön Perustaa ( )
{
laskin = uusi laskin ( ) ;
}
[ Testausmenetelmä ]
julkinen mitätön Add_TwoPositiveNumbers_ReturnsCorrectSum ( )
{
oli tulos = laskin. Lisätä ( 5 , 5 ) ;
Väitä. Ovat tasa-arvoisia ( 10 , tulos ) ;
}
[ Testausmenetelmä ]
julkinen mitätön Subtract_TwoPositiveNumbers_ReturnsCorrectDifference ( )
{
oli tulos = laskin. Vähentää ( 10 , 5 ) ;
Väitä. Ovat tasa-arvoisia ( 5 , tulos ) ;
}
[ Testausmenetelmä ]
julkinen mitätön Multiply_TwoPositiveNumbers_ReturnsCorrectProduct ( )
{
oli tulos = laskin. Kerro ( 5 , 5 ) ;
Väitä. Ovat tasa-arvoisia ( 25 , tulos ) ;
}
[ Testausmenetelmä ]
[ Odotettu poikkeus ( tyyppi ( DivideByZeroException ) ) ]
julkinen mitätön Divide_DenominatorIsZero_ThrowsDivideByZeroException ( )
{
oli tulos = laskin. Jakaa ( 5 , 0 ) ;
}
[ Testausmenetelmä ]
julkinen mitätön Divide_TwoPositiveNumbers_ReturnsCorrectQuotient ( )
{
oli tulos = laskin. Jakaa ( 10 , 5 ) ;
Väitä. Ovat tasa-arvoisia ( 2 , tulos ) ;
}
}
}
Johtopäätös
Tämä on perusopetusohjelma, joka kattaa yksikkötestauksen perusteet C#-kielellä MSTest-kehyksen avulla.