xUnit bevezetés - az első működő xUnit tesztig - CRUD Create tesztje (NA)
Az xUnit, a legrégebbi és legtöbbet hivatkozott- unitteszt-környezet teljesértékű megoldásként megérkezett a .NET-világba. Dotnet Core fejlesztőként megismerkedünk az xUnit-tal, és a tesztvezérelt fejlesztési megközelítéssel (TDD) - sallang nélkül.
Ez a tananyag a **C# fejlesztési projekt tokkal-vonóval** sorozat része, amelyet azért hoztunk létre, hogy egy igazi fejlesztési projekt minden lépésébe betekintést nyerhess. Ha érdekel, hogyan lesz egy ötletből valós, működő alkalmazás, miközben megismerkedsz a modern eszközökkel és technológiákkal, akkor itt a helyed! A célunk, hogy lépésről lépésre segítsünk végigvinni egy teljes fejlesztési folyamatot az alapoktól kezdve, egészen a professzionális szintű megoldásokig.
A sorozat tananyagai:
1. C# alapú fejlesztési projekt - bevezetés
2. Entity Framework Core bevezetés SQLite adatbázis használatával
3. xUnit bevezetés - az első működő xUnit tesztig - CRUD Create tesztje
4. Repository fejlesztése TDD-vel és xUnit-tal
5. Repository integrációs tesztelése xUnittal SQLite adatbázissal memóriában és fájlban
6. Docker használata Windows környezetben ASP.NET Core fejlesztéshez
- A tanfolyamhoz tartozó forráskódok
- 1.1 xUnit projekt létrehozása
- 1.2 Tesztosztály vázlata - naming
- 1.3 AAA minta
- 1.4 Teszt futtatása - dotnet test
- 2.1 Előkészületek és a feladat elvégzése - Arrange _ Act
- 2.2 Ellenőrzés - Assert
- 2.3 Build és hibák
- 2.4 Hivatkozás beállítása az l2l.Data felé
- 2.5 Tesztelendő osztály létrehozása a teszthez - CourseRepository
- 2.6 Első ellenőrzés - xUnit.NotNull
- 3.1 Antipattern - Equals implementálása
- 3.2 object.Equals implementáció
- 3.3 object.GetHashCode implementáció
- 3.4 Első végeredmény, minden tesztünk zöld
- 4.1 A probléma felvetése
- 4.2 Megoldás - FluentAssertions
- 4.3 Végső simítások a tesztelendő osztály implementációjához - CourseRepository
- 4.4 A f ejezet vége - git commit
- 4.5 A fejezet vége - Course.Equals implementáció törlése - 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.