Tesztelés az SQLite-kurzuson

Tanuld meg, hogyan teszteld az SQLite-feladataidat az Exercism-ön


Az SQLite-feladataid tesztjeinek futtatásához kövesd az alábbi lépéseket:

  1. Nyisd meg a kedvenc terminálodat.
  2. Lépj be abba a könyvtárba, amelyik a megfelelő ${slug}_test.sql fájlt tartalmazza, ahol a ${slug} a feladat neve, szóközök helyett kötőjelekkel és csupa kisbetűvel.
  3. Futtasd az alábbi parancsot:
sqlite3 -bail < ${slug}_test.sql

Ez a parancs egy üres adatbázissal indítja el az SQLite-ot, lefuttatja a ${slug}_test.sql fájlban megadott teszteket, majd a végén kilép. A -bail gondoskodik arról, hogy érvénytelen kód esetén leálljon a végrehajtás.

A tesztek eredményei táblázat formájában jelennek meg a konzolon: mutatják az egyes tesztek leírását, állapotát (pl. „pass”), és egy üzenetet, ha az állapot „fail”.

Hibakeresés

Hibakereséshez használhatsz SELECT utasításokat. A kimenet a user_output.md fájlba kerül, és megjelenik a webes szerkesztőben is, ha a tesztek sikertelenek.

A végrehajtás részletei

A tesztfájl (${slug}_test.sql) egy meglehetősen összetett szkript. Íme egy áttekintés arról, hogy mit tesz.

  1. Táblázatokat hoz létre a create_fixture.sql beolvasásával. Ez létrehozza a táblákat, majd feltölti őket a data.csv értékeivel az érvényes adatokhoz, illetve az error_data.csv értékeivel azokhoz a bejegyzésekhez, amelyeknek hibát kell adniuk. A tesztek során csak ezeket a táblákat ellenőrzi; a többi tábla módosításait figyelmen kívül hagyja.
  2. Lefuttatja a megoldás kódját a ${slug}.sql fájl beolvasásával.
  3. Táblázatokat hoz létre a tesztesetek és az eredmények tárolásához.
  4. Feltölti a teszteredményeket a megoldás által frissített tábla (vagy táblák) adatai alapján.
  5. Megjeleníti a teszteredményeket (pass vagy fail, és opcionális részletek). Ezek a CSV-fájlok tartalmazzák a különböző forgatókönyvek teszteléséhez szükséges adatokat.