Share via


A tesztcsomag optimális konfigurációjának meghatározása

A Microsoft Playwright Testing Preview lehetővé teszi, hogy felgyorsítsa a Playwright-teszt végrehajtását a párhuzamosság felhőbeli növelésével. A tesztcsomag befejezési idejét számos tényező befolyásolja. A tesztcsomagok befejezési idejének csökkentésére szolgáló optimális konfiguráció meghatározása alkalmazásspecifikus, és kísérletezést igényel. Ez a cikk ismerteti a tesztek párhuzamosságának konfigurálásának különböző szintjeit, a teszt időtartamát befolyásoló tényezőket, valamint azt, hogy hogyan határozhatja meg az optimális konfigurációt a tesztelési befejezési idő minimalizálása érdekében.

A Playwrightban párhuzamosan futtathat teszteket feldolgozó folyamatok használatával. A Microsoft Playwright Testing használatával tovább növelheti a párhuzamosságot a felhőalapú böngészők használatával. Általánosságban elmondható, hogy a párhuzamosság növelése csökkenti a tesztcsomag befejezésének idejét. A több feldolgozói folyamat hozzáadása azonban nem mindig eredményez rövidebb tesztcsomag-befejezési időt. Az ügyfélgép-számítási erőforrások, a hálózati késés vagy a tesztelés összetettsége például hatással lehet a tesztelés időtartamára is.

Az alábbi diagram egy tesztcsomag futtatására mutat példát. Ha a tesztcsomagot helyi helyett a Microsoft Playwright Teszteléssel futtatja, jelentősen növelheti a párhuzamosságot, és csökkentheti a teszt befejezési idejét. Figyelje meg, hogy a szolgáltatással való futtatáskor a befejezési idő eléri a minimális korlátot, amely után a további feldolgozók hozzáadása csak minimális hatással van. A diagram azt is mutatja, hogy az ügyfélszámítógépen több számítási erőforrás használata pozitívan befolyásolja a szolgáltatással futtatott tesztek tesztelési befejezési idejét.

Line chart that shows the relation between the number of parallel workers and the test suite completion time for different run environments.

Feldolgozói folyamatok

A Forgatókönyvben minden teszt feldolgozói folyamatokban fut. Ezek a folyamatok olyan operációsrendszer-folyamatok, amelyek egymástól függetlenül, párhuzamosan futnak, a Playwright Test futója vezénylésével. Minden feldolgozó azonos környezettel rendelkezik, és minden folyamat saját böngészőt indít el.

A párhuzamos feldolgozók számának növelése általában csökkentheti a teljes tesztcsomag elvégzéséhez szükséges időt. A Playwright-teszt párhuzamosságáról a Playwright dokumentációjában olvashat bővebben.

Ahogy a diagramon korábban is látható, a tesztcsomag befejezési ideje nem csökken tovább, ahogy további feldolgozói folyamatokat ad hozzá. Vannak más tényezők is, amelyek befolyásolják a tesztcsomag időtartamát.

Tesztek helyi futtatása

Alapértelmezés szerint @playwright/test a feldolgozók számát a gép processzormagjainak 1/2-ére korlátozza. A teszt futtatásához felülbírálhatja a feldolgozók számát.

Ha helyileg futtat teszteket, a feldolgozói folyamatok száma a gép processzormagjainak számára korlátozódik. Egy bizonyos ponton túl a további feldolgozók hozzáadása erőforrás-versengéshez vezet, ami lelassítja az egyes feldolgozókat, és tesztfoltosságot vezet be.

A feldolgozók számának felülbírálása a parancssori --workers jelzővel:

npx playwright test --workers=10

A beállítást használó workers feldolgozók playwright.config.ts számának megadása:

export default defineConfig({
  ...
  workers: 10,
  ...
});

Tesztek futtatása a szolgáltatással

A Microsoft Playwright Testing használata esetén a felhőbeli feldolgozók számát nagyobb számra növelheti. A szolgáltatás használatakor a feldolgozói folyamatok továbbra is helyileg futnak, de az erőforrás-igényes böngészőpéldányok mostantól távolról futnak a felhőben.

Mivel a feldolgozói folyamatok továbbra is az ügyfélszámítógépen (fejlesztői munkaállomáson vagy CI-ügynök gépen) futnak, az ügyfélszámítógép továbbra is szűk keresztmetszetet jelenthet a méretezhető végrehajtáshoz, amikor további feldolgozót ad hozzá. Megtudhatja, hogyan határozhatja meg az optimális konfigurációt.

A parancssorban lévő feldolgozók számát a következő jelölővel --workers adhatja meg:

npx playwright test --config=playwright.service.config.ts --workers=30

Másik lehetőségként megadhatja a feldolgozók playwright.service.config.ts számát a workers beállítás használatával:

export default defineConfig({
  ...
  workers: 30,
  ...
});

A befejezési időt befolyásoló tényezők

A párhuzamos feldolgozói folyamatok száma mellett számos tényező befolyásolja a tesztcsomag befejezési idejét.

Szempont A teszt időtartamára gyakorolt hatások
Ügyfélszámítógép számítási erőforrásai A feldolgozó folyamatok továbbra is futnak az ügyfélszámítógépen (fejlesztői munkaállomáson vagy CI-ügynök gépen), és kommunikálniuk kell a távoli böngészőkkel. A párhuzamos feldolgozók számának növelése erőforrás-versengést eredményezhet az ügyfélszámítógépen, és lelassíthatja a teszteket.
A tesztkód összetettsége A tesztkód összetettségének növekedésével a tesztek befejezésének ideje is nőhet.
Késés az ügyfélszámítógép és a távoli böngészők között A feldolgozók az ügyfélszámítógépen futnak, és kommunikálnak a távoli böngészőkkel. Attól függően, hogy melyik Azure-régióban üzemelteti a böngészőket, a hálózati késés növekedhet. Megtudhatja, hogyan optimalizálhatja a regionális késést a Microsoft Playwright-tesztelésben.
Forgatókönyv konfigurációs beállításai A forgatókönyv beállításai, például a szolgáltatás időtúllépései, az újrapróbálkozások vagy a nyomkövetés hátrányosan befolyásolhatják a teszt befejezési idejét. Kísérletezzen a beállítások optimális konfigurációjával a tesztek felhőben való futtatásakor.
A célalkalmazás terheléskezelési kapacitása A Tesztek futtatása a Microsoft Playwright Testing használatával lehetővé teszi a nagyobb párhuzamosságú futtatásokat, ami nagyobb terhelést eredményez a célalkalmazásra. Ellenőrizze, hogy az alkalmazás képes-e kezelni a Playwright-tesztek futtatásával létrehozott terhelést.

További információ a tesztcsomag időtartamának minimalizálása érdekében optimális konfiguráció meghatározására szolgáló munkafolyamatról.

Munkafolyamat az optimális konfiguráció meghatározásához

A tesztcsomag befejezési idejének minimalizálásához szükséges optimális konfiguráció az alkalmazásra és a környezetre jellemző. Az optimális konfiguráció meghatározásához kísérletezzen a párhuzamosítás különböző szintjeivel, az ügyfélszámítógép hardverkonfigurációjával vagy a tesztcsomag beállításával.

Az alábbi megközelítés segíthet megtalálni a tesztek Microsoft Playwright Testing használatával történő futtatásához szükséges optimális konfigurációt:

1. A teszt befejezési idejének meghatározása

Határozza meg, hogy mi az elfogadható tesztcsomag befejezési ideje és a tesztfuttatásonkénti társított költség.

A forgatókönyvtől függően a tesztelés befejezésére vonatkozó követelmények eltérőek lehetnek. Ha a teljes körű teszteket minden kódmódosítással futtatja, a folyamatos integrációs (CI) munkafolyamat részeként elengedhetetlen a tesztelési befejezési idő minimalizálása. Ha a végpontok közötti teszteket egy (éjszakai) kötegfuttatásban ütemezi, előfordulhat, hogy kevésbé igényes követelményekkel rendelkezik.

2. Ellenőrizze, hogy a tesztek megfelelően futnak-e az ügyfélszámítógépen

Mielőtt futtatja a Playwright tesztcsomagot a Microsoft Playwright Testing szolgáltatással, győződjön meg arról, hogy a tesztek megfelelően futnak az ügyfélszámítógépen. Ha ci-munkafolyamat részeként futtatja a teszteket, ellenőrizze, hogy a tesztek megfelelően futnak-e a CI-ügynök gépén. Győződjön meg arról, hogy a teszteket legalább két párhuzamos feldolgozóval futtatja annak ellenőrzéséhez, hogy a tesztek megfelelően vannak-e konfigurálva a párhuzamos végrehajtáshoz. További információ a playwright párhuzamosságáról.

3. Futtatás felhőalapú böngészőkkel a Microsoft Playwright Tesztelésben

Ha a tesztek megfelelően futnak, adja hozzá a szolgáltatáskonfigurációt a tesztek felhőben üzemeltetett böngészőkben való futtatásához a szolgáltatással. Ellenőrizze, hogy a tesztek továbbra is megfelelően futnak-e az ügyfélszámítógépen (fejlesztői munkaállomáson vagy CI-ügynökgépen).

Ismerkedés a rövid útmutatóval: Playwright-tesztek nagy méretekben való futtatása a Microsoft Playwright Testing használatával.

4. Az Azure-régió távoli böngészőinek ellenőrzése

A Microsoft Playwright-tesztelés távoli böngészőket használhat az ügyfélszámítógéphez legközelebbi Azure-régióban, vagy használhatja azt a rögzített régiót, amelyen a munkaterületet létrehozták.

Megtudhatja, hogyan optimalizálhatja a munkaterület regionális késését.

5. Kísérlet a párhuzamos feldolgozók számával

Kísérletezzen a párhuzamos feldolgozók számával a tesztek futtatásához. Mérje meg a teszt befejezési idejét, és hasonlítsa össze a korábban megadott célcélt.

Figyelje meg, hogy a teszt befejezési ideje a továbbiakban nem csökken, mivel több feldolgozót vesz fel. Lépjen a következő lépésre a beállítás további optimalizálásához.

Megjegyzés:

Bár a szolgáltatás előzetes verzióban érhető el, a párhuzamos feldolgozók száma munkaterületenként legfeljebb 50 lehet. Ennek a korlátnak a növelését kérheti a munkaterületen.

6. Az ügyfél méretezése

A párhuzamosság növelése során előfordulhat, hogy az ügyfélszámítógép számítási erőforrás-versengést tapasztal. Növelje a számítási erőforrásokat az ügyfélszámítógépen, például nagyobb GitHub-futtatók kiválasztásával.

Ha hardverkorlátozásokkal rendelkezik, az ügyfélteszteket skálázhatja.

Futtassa újra a teszteket, és kísérletezzen a párhuzamos feldolgozók számával.

7. A Playwright-teszt konfigurációs beállításainak frissítése

Konfigurálja a Playwright-teszt konfigurációs beállításait, például a tesztelési időtúllépéseket, a nyomkövetési beállításokat vagy az újrapróbálkozásokat.