NA - 5. Repository integrációs tesztelése xUnittal SQLite adatbázissal memóriában és fájlban
Az SQLite képes memóriában és fájlban is az adatbáziskezelésre. Mindkettőnek fontos szerepe lehet a
fejlesztési munkafolyamatainkban. Fontos azonban ismerni a különbségeket, a részleteket. Itt most
- túlzás nélkül - szinte minden kiderül.
- A tanfolyamhoz tartozó forráskódok
- 1.1 Kérdések és bevezetés
- 1.2 Vázlat
- 1.3 Első prototípus
- 1.4 IClassFixture használata
- 1.5 Továbbfejlesztés Dependency Injection segítségével
- 1.6 Dependency Injection használata a CourseRepository kódjában is - I.
- 1.7 Dependency Injection használata a CourseRepository kódjában is - II.
- 1.8 Dependency Injection használata a CourseRepository kódjában is - III.
- 1.9 Az L2lDbContext létrehozása factory függvénnyel - L2lDbContextFactory method
- 1.10 L2lDbContextFactory method segítségével a Database Fixture refaktoringja
- 1.11 L2lDbContextFactory method segítségével a tesztjeink refaktoringja
- 1.12 Minden tesztünk zöld
- 1.13 A fejezet vége - git commit
- 2.1 Problémafelvetés - hibába futunk
- 2.2 Nyomozás
- 2.3 Megoldás SqliteConnection segítségével - I.
- 2.4 Megoldás SqliteConnection segítségével - II.
- 2.5 Megoldás SqliteConnection segítségével - III.
- 2.6 Megoldás kiterjesztése a file db használatára is
- 2.7 Minden tesztünk - memória és állomány db is - zöld
- 3.1 Memory vs file db - I.
- 3.2 Memory vs file db - II.
- 3.3 Továbbfejlesztés - factory.IsInMemoryDb - vázlat
- 3.4 Továbbfejlesztés - factory.IsInMemoryDb - implementáció
- 3.5 Továbbfejlesztés - factory.IsInMemoryDb - code review
- 3.7 Minden tesztünk zöld
- 4.1 Ellenőrzés - dotnet ef - hibába futunk
- 4.2 Nyomozás
- 4.3 Megoldás
- 4.4 Ellenőrzés - dotnet cli ok
- 4.5 Ellenőrzés - minden teszt zöld és dotnet cli rendben
- 4.6 A fejezet vége - git commit
Az oktatóról
Full-stack C# fejlesztő vagyok, több, mint 30 éves tervezési, fejlesztési, adatbázis, devop és üzemeltetési tapasztalattal, erős matematikai alapokkal. Elsősorban Windows környezetben dolgoztam, de az utóbbi néhány évben előfordult, hogy több platform (Linux/Raspberry PI/Android/iOS) szolgáltatásait integrálom. Mivel minden nap kódolok, minden érdekel, ami a fejlesztéshez kapcsolódik, akár egyszerűbbé teszi életünket, akár valami "jövős" dolog.