Zig Academy · Oppitunti

Väitteet std.testing-kirjastolla

expect, expectEqual ja kumppanit.

Oppitunti 2/413 vaihetta

Väitteet std.testing-kirjastolla on ilmainen Zig Academy-oppitunti CoddyKitissä. Tämä on oppitunti 2/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Zig Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Zig Academy-kurssilla on yhteensä 4 oppituntia.

testing-nimiavaruus

Zigin väiteapufunktiot sijaitsevat std.testing-moduulissa. Tuo se lyhyellä nimellä, jotta jokainen tarkistus on helppolukuinen testilohkoissa.

const testing = std.testing;

expect Boolen-arvoille

Yksinkertaisin apufunktio on expect. Se ottaa yhden Boolen-arvon ja epäonnistuttaa testin, jos ehto on epätosi.

try testing.expect(value > 0);

Apufunktiot palauttavat virheitä

Jokainen testauksen apufunktio palauttaa epäonnistuessaan virheen, joten sen eteen kirjoitetaan aina try. Näin testi pysähtyy ja ilmoittaa virheestä.

expectEqual arvoille

Kun haluat verrata kahta arvoa, käytä expectEqual-funktiota. Se tarkistaa yhtäsuuruuden ja tulostaa epäonnistuessaan sekä odotetun että todellisen arvon.

try testing.expectEqual(5, add(2, 3));

Odotettu arvo ensin

expectEqual-funktion ensimmäinen argumentti on odotettu arvo ja toinen koodisi tuottama arvo. Järjestys vaikuttaa virheilmoituksen sisältöön.

try testing.expectEqual(42, result);

Leikkeiden vertaaminen

Kaksi leikettä ovat yhtäsuuria, kun niiden alkiot vastaavat toisiaan, eivät niiden osoittimet. Käytä expectEqualSlices-funktiota ja ilmoita alkioiden tyyppi.

try testing.expectEqualSlices(u8, "hi", out);

Merkkijonojen vertaaminen

Tekstille expectEqualStrings vertaa kahta tavuleikettä ja tulostaa helposti luettavan eron, jos ne poikkeavat toisistaan. Se sopii erinomaisesti tulosten tarkistamiseen.

try testing.expectEqualStrings("ok", msg);

Virheen tarkistaminen

Joskus kutsun pitäisi epäonnistua. Kääri se expectError-funktion sisään varmistaaksesi, että se palauttaa tietyn virheen eikä arvoa.

try testing.expectError(error.Bad, parse("x"));

Liukulukujen likimääräinen vertaaminen

Liukuluvut vastaavat harvoin toisiaan täsmälleen. Käytä expectApproxEqAbs-funktiota pienen toleranssin kanssa, jotta vähäiset pyöristyserot eivät epäonnistuta testiä.

try testing.expectApproxEqAbs(1.0, x, 0.001);

Lue epäonnistumisen tuloste

Kun väite epäonnistuu, Zig tulostaa odotetut ja todelliset arvot suoraan raporttiin. Ero osoittaa yleensä suoraan virheen sijainnin.

Valitse oikea apufunktio

Sovita apufunktio dataan: expectEqual skalaariarvoille, leike- ja merkkijonoapufunktiot jonoille sekä expectError epäonnistumispolulle.

Pikacheck

Sinun on tarkistettava testissä, että kaksi tekstiarvoa ovat täsmälleen samat. Mikä apufunktio sopii parhaiten?

Kertaus

Opit std.testing-työkalut: expect- ja expectEqual-funktiot, leike- ja merkkijonotarkistukset sekä expectError-funktion. Jokaisen eteen tarvitaan try. ✅

Aloita maksutta

Opi Zig tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
30
Oppitunnit
120

Usein kysytyt kysymykset

Onko oppitunti ”Väitteet std.testing-kirjastolla” ilmainen?

Kyllä – oppitunnin ”Väitteet std.testing-kirjastolla” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Zig Academy-kurssin, päivitä CoddyKit PROhon. Zig Academy-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”Väitteet std.testing-kirjastolla”?

expect, expectEqual ja kumppanit. Harjoittelet Zig Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni Zig Academy-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin Zig Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 2/4.

Kuinka kauan ”Väitteet std.testing-kirjastolla”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä Zig Academy-oppitunnilla?

Kyllä. Jokainen Zig Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. test-lohkojen kirjoittaminen
  2. Väitteet std.testing-kirjastolla
  3. Testing Allocator löytää muistivuodot
  4. Testien suorittaminen ja suodattaminen
← Takaisin: Zig Academy