Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A Microsoft.Testing.Platform egy egyszerű és hordozható alternatíva a VSTest a tesztek parancssori, folyamatos integrációs (CI) folyamatokban, a Visual Studio Test Explorerben és a Visual Studio Code-ban való futtatásához. Ebben a cikkben megismerheti a Microsoft.Testing.Platform és a VSTest közötti főbb különbségeket.
A tesztvégrehajtás különbségei
A tesztek végrehajtása a futótól függően különböző módon történik.
VSTest-tesztek végrehajtása
A VSTest a Visual Studióval, a .NET SDK-val és önálló eszközként a Microsoft.TestPlatform NuGet csomagban érhető el. A VSTest egy futtatható futót használ a tesztek futtatásához vstest.console.exenéven, amely közvetlenül vagy dotnet testkeresztül használható.
Microsoft.Testing.Platform-tesztek végrehajtása
A Microsoft.Testing.Platform közvetlenül a tesztprojektbe van beágyazva, és nem szállít további végrehajtható fájlokat. Amikor futtatja a projekt futtatható fájlját, lefutnak a tesztek. A Microsoft.Testing.Platform tesztjeinek futtatásáról további információt a Microsoft.Testing.Platform áttekintésében talál: Tesztek futtatása és hibakeresése.
Névterek és NuGet-csomagok
A Microsoft.Testing.Platform és a VSTest megismeréséhez hasznos megismerni az egyes névterek és NuGet-csomagok használatát.
VSTest-névterek
A VSTest olyan tesztelési eszközök gyűjteménye, amelyeket Tesztplatformnéven is ismerünk. A VSTest-forráskód nyílt forráskódú, és elérhető a microsoft/vstest GitHub-adattárban. A kód a Microsoft.TestPlatform.* névteret használja.
A VSTest bővíthető, és a gyakori típusok Microsoft.TestPlatform.ObjectModel NuGet-csomagban találhatók.
Microsoft.Testing.Platform névterek
A Microsoft.Testing.Platform Microsoft.Testing.Platform NuGet-csomagon és a Microsoft.Testing.* névtér egyéb kódtárán alapul. A VSTesthez hasonlóan a Microsoft.Testing.Platform is nyílt forráskódú, és microsoft/testfx GitHub-adattárral rendelkezik.
Kommunikációs protokoll
Jegyzet
A Visual Studio Test Explorer 17.12-től támogatja a Microsoft.Testing.Platform protokollt. Ha a Visual Studio korábbi verzióival futtatja/hibakereséssel végzi el a teszteket, a Test Explorer vstest.console.exe és a régi protokoll használatával futtatja ezeket a teszteket.
A Microsoft.Testing.Platform egy JSON-RPC-alapú protokollt használ a Visual Studio és a tesztfuttató közötti kommunikációhoz. A protokoll dokumentálva van az MSTest GitHub-adattárban.
A VSTest JSON-alapú kommunikációs protokollt is használ, de nem JSON-RPC alapú.
Az új protokoll letiltása
Ha le szeretné tiltani az új protokoll használatát a Test Explorerben, szerkesztheti a projektet a következő tulajdonság hozzáadásához: <DisableTestingPlatformServerCapability>true</DisableTestingPlatformServerCapability>.
A Visual Studióban az Előzetes verziójú szolgáltatások lehetőséget is megnyithatja, és megszüntetheti a "Tesztelési platform kiszolgáló üzemmódjának használata" lehetőséget.
Végrehajtható fájlok
A VSTest több végrehajtható fájlt is szállít, többek között vstest.console.exe, testhost.exeés datacollector.exe. A Microsoft.Testing.Platform azonban közvetlenül a tesztprojektbe van beágyazva, és nem szállít más végrehajtható fájlokat. A tesztprojekt által lefordított végrehajtható fájl az összes tesztelési eszköz üzemeltetésére és a tesztek futtatásához szükséges összes feladat végrehajtására szolgál.