Az MVVMCross 9.3.1 -ben az XUNIT V3 -ra történő áttelepítő tesztek számos előnyt kínálnak, amelyek javítják a tesztelési élményt és javítják a projekt általános hatékonyságát. Íme néhány kulcsfontosságú előnye:
1. Javított teljesítmény és elszigeteltség:
- Önálló futtatható fájlok: Az XUnit V3 lehetővé teszi a tesztprojektek összeállítását önálló futtatható fájlba, amely önállóan futhat, anélkül, hogy külön tesztfutóra lenne szükség. Ez leegyszerűsíti a tesztek futtatásának folyamatát és javítja a teljesítményt azáltal, hogy a fordítót kihasználja a függőség felbontására, ahelyett, hogy támaszkodna a futásidejű mechanizmusokra, például az alkalmazási tartományokra a régebbi .NET keretrendszer verzióiban [4] [8].
- Folyamat -elkülönítés: A teszteket külön folyamatokban hajtják végre, jobb elszigeteltséget biztosítva a tesztek között. Ez csökkenti a tesztek kockázatát, hogy zavarják egymást, és megkönnyítik a komplex tesztforgatókönyvek kezelését [4].
2. Fokozott kiterjeszthetőség és rugalmasság:
- Egyszerűsített API -k: Az új verzió egyszerűsített API -kat vezet be, olyan módszerekkel, mint a „Find”, a „Findandrun” és a „Run”, amelyek célja az interakciók optimalizálása a folyamathatárok között. Ez megkönnyíti a tesztelési keret kiterjesztését és testreszabását [1] [4].
- Egységes parancssori élmény: Az XUnit V3 egységes parancssori élményt támogat a különböző tesztelési keretek között, beleértve az MSTest -et is. Ez a konzisztencia leegyszerűsíti a tesztelési munkafolyamatot, és megkönnyíti a tesztek kezelését a parancssorból [1].
3. Jobb támogatás a modern .NET keretrendszerekhez:
- A MONO hivatalos támogatása: Az XUNIT V3 hivatalosan támogatja a MONO -t a Linuxon és a MACOS -on .NET -keretrendszer tesztprojektekhez, biztosítva, hogy a tesztek megbízhatóan futhassanak a különböző platformokon [4].
- Célkeretek: Az XUnit V3 olyan kereteket céloz meg, mint a `netstandard2.0`, a` net472` és a `net6.0`, így kompatibilis a .NET környezetek széles skálájával [4].
4. Javított diagnosztikai üzenetküldés:
- Egyszerűsített diagnosztikai üzenetkezelés: Az „iMessageSink” paramétereket eltávolítottuk a konstruktorokból, és a diagnosztikai üzenetek most elküldhetők a „TestContext.Current.Current.SendDiagnosticMessage” használatával. Ez egyszerűsíti a diagnosztikai üzenetek küldésének folyamatát a tesztelés során [1].
5. Migráció és kompatibilitás:
- Migrációs út: Noha az XUnit V2 -ről a V3 -ra való áttérés megkövetelheti a meglévő tesztprojektek megváltoztatását, az új funkciók és fejlesztések érdemes. Az MVVMCross az XUNIT V3 -ra történő migrációja a 9.3.1 verzióban azt jelzi, hogy elkötelezettséggel jár ezen előrelépések a jobb tesztkezelés érdekében [7] [8].
Összességében az MVVMCross 9.3.1 -ben az XUNIT V3 -ra történő áttelepítő tesztek javítják a tesztteljesítményt, a kiterjeszthetőséget és a kompatibilitást a modern .NET -keretekkel, robusztusabb és hatékonyabb tesztelési környezetet biztosítva.
Idézetek:[1] https://xunit.net/docs/getting-started/v3/whats-new
[2] https://www.mvvmcross.com/documentation/fundamentals/viewmodel-lifecycle
[3] https://learn.microsoft.com/en-us/dotnet/core/testing/unit-testing-msting-migration-from-v1-tov3
[4] https://xunit.net/docs/getting-started/v3/migration
[5] https://www.mvvmcross.com/mvvmcross-6.0.0-rease/
[6] https://www.nuget.org/packages/mvvmcross.tests/
[7] https://github.com/mvvmcross/mvvmcross/releases
[8] https://blogs.sathiyaraman-m.com/whats-new-in-xunit-v3
[9] https://www.mvvmcross.com/mvvmcross-9.0.0-rease/