Automatizált tesztek futtatása tesztelési tervekből
Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019
Automatizálhatja a teszteseteket a tesztcsomagokban, és közvetlenül az Azure Test Plansből futtathatja őket. Az automatizált tesztek a következő előnyöket biztosítják:
- Felhasználóbarát folyamat azoknak a tesztelőknek, akik esetleg nem ismerik a teszteket a buildelési vagy kiadási munkafolyamatokban.
- A kiválasztott tesztek igény szerinti futtatásának rugalmassága az ütemezett tesztelés helyett olyan buildelési vagy kiadási munkafolyamatokban, ahol a szűrőfeltételeknek megfelelő összes teszt fut.
- A tesztinfrastruktúra problémái miatt meghiúsult tesztek újrafuttatásának lehetősége, vagy egy új build, amely tartalmazza a sikertelen tesztek javítását.
Előfeltételek
- Projekthozzáférés: Győződjön meg arról, hogy hozzá van adva egy projekthez.
- Hozzáférési szintek: Győződjön meg arról, hogy legalább alapszintű vagy magasabb hozzáféréssel rendelkezik.
- További információ: Manuális teszthozzáférés és engedélyek.
- A következő elemekkel is rendelkeznie kell.
- A Visual Studio 2017 vagy a Visual Studio 2015 vagy korábbi verziójával automatizált tesztelési módszerekhez társított automatizált teszteket tartalmazó tesztcsomag.
- A teszt bináris fájlokat tartalmazó buildeket létrehozó buildfolyamat .
- Egy tesztelni kívánt alkalmazás. Az alkalmazást üzembe helyezheti a buildelési és kiadási munkafolyamat részeként, és igény szerinti teszteléshez is használhatja.
- Engedélyek a kiadások létrehozásához és kezeléséhez, a kiadási környezet szerkesztéséhez és az üzembe helyezés kezeléséhez. További információ: Kiadási engedélyek.
Saját környezet beállítása
A Teszttervek lapon válassza ki a teszttervet, nyissa meg a helyi menüt, majd válassza a Tesztterv beállításai lehetőséget.
A Tesztterv beállításai párbeszédpanelen válassza ki azt a buildelési folyamatot, amely a teszt bináris fájljait tartalmazó buildeket hozza létre. Ezután kiválaszthatja a tesztelni kívánt buildszámot, vagy engedélyezheti, hogy a rendszer automatikusan használja a legújabb buildet a tesztek futtatásakor.
Olyan kiadási folyamatra van szüksége, amely a Test Manager-sablon automatizált tesztjeinek futtatásával lett létrehozva, hogy teszteket futtasson az Azure Test Plans tesztcsomagjaiból. Ha ezzel a sablonnal létrehozott egy meglévő kiadási folyamatot, jelölje ki, majd válassza ki a kiadási folyamat meglévő szakaszát a teszt végrehajtásához. Ellenkező esetben válassza az Új létrehozása lehetőséget a párbeszédpanelen egy olyan új kiadási folyamat létrehozásához, amely egyetlen szakaszt tartalmaz, és a Visual Studio tesztfeladata már fel van véve.
Hogyan paramétereket átadni a tesztkódnak egy buildelési vagy kiadási folyamatból?
Igény szerint rendeljen hozzá értelmes neveket a kiadási folyamathoz és a fázishoz.
Ha a Visual Studio már telepítve van az ügynökszámítógépen, hagyja ki ezt a lépést. Ha nem, adja hozzá a Visual Studio Test Platform Installer-feladatot a folyamatdefinícióhoz.
Adja hozzá a Visual Studio tesztfeladatot a kiadási folyamathoz, és konfigurálja az alábbiak szerint:
Ellenőrizze, hogy a Visual Studio tesztfeladat 2. verziója van-e kiválasztva. A verziószám a feladatbeállítások panel legördülő listájában jelenik meg.
Ellenőrizze, hogy a tesztfuttatásra van-e beállítva a teszttesztek kiválasztása. Mit jelent ez a beállítás?
A Tesztplatform verzióbeállításához válassza a Telepített eszközök telepítője lehetőséget.
Ha fizikai böngészőkben vagy vastag ügyfeleken futó felhasználói felületi tesztekkel rendelkezik, győződjön meg arról, hogy az ügynök interaktív folyamatként van beállítva, és engedélyezve van az autologon. A build vagy kiadás várólistára helyezése előtt be kell állítania egy ügynököt, hogy interaktívan fusson. A Teszt mix felhasználói felületi teszteket tartalmazó jelölőnégyzete nem konfigurálja automatikusan az ügynököt interaktív módban – csak emlékeztetőként szolgál az ügynök megfelelő konfigurálására a hibák elkerülése érdekében.
Ha felhasználói felületi teszteket futtat fej nélküli böngészőben, az interaktív folyamatkonfiguráció nem szükséges.
Válassza ki a tesztplatform kiépítésének módját, valamint a Visual Studio verzióját vagy a tesztgépekre telepített tesztplatform helyét.
Ha a tesztekhez bemeneti paraméterekre, például alkalmazás URL-címekre vagy adatbázis-kapcsolati sztring van szükség, válassza ki a megfelelő beállításfájlt a buildösszetevőkből. A buildelési folyamat buildelési összetevőinek közzététele feladatokkal a beállításfájlt drop helyen teheti közzé, ha ez a fájl nem szerepel az összetevőkben. Az alábbi példában az alkalmazás URL-címe megjelenik a futtatási beállítások fájljában, és felülbírálva van, hogy átmeneti URL-címre állítsa a felülbírálási tesztfuttatási paraméterek beállításával.
A Visual Studio tesztfeladat beállítási beállításairól a Visual Studio Tesztelési feladatában talál további információt.
Válassza ki az Ügynök feladatelemet , és ellenőrizze, hogy az üzembehelyezési üzenetsor azokat a gépeket tartalmazza-e, amelyeken futtatni szeretné a teszteket. Ha a tesztek speciális gépeket igényelnek az ügynökkészletből, a futásidőben kiválasztott igényeket is hozzáadhatja.
A tesztek több ügynök közötti elosztásával minimalizálhatja a tesztelési időt, ha a párhuzamosságot több végrehajtásra állítja, és megadja az ügynökök számát.
Feljegyzés
Ha olyan felhasználói felületi teszteket futtat, mint a CodeUI vagy a Selenium fizikai böngészőkben( például IE, Firefox vagy Chrome), a gépeken lévő ügynöknek interaktív módban kell futnia, és nem szolgáltatásként. További részletek.
A kiadási folyamat Folyamat lapján ellenőrizze, hogy a teszt bináris fájlokat tartalmazó buildfolyamat összetevő-forrásként hivatkozik-e erre a kiadási folyamatra.
Mentse a kiadási folyamatot.
Ha a példa 2. lépésében az Új létrehozása lehetőséget választotta a Tesztterv beállításai párbeszédpanelen, térjen vissza a tesztterv beállításait tartalmazó böngészőlapra. A Csomag tesztelése párbeszédpanelen válassza ki a mentett kiadási folyamatot és szakaszt.
Az automatizált tesztek futtatása
A Tesztcsomagok webes portálon nyissa meg a tesztcsomagot, és válasszon ki egy tesztcsomagot, amely tartalmazza az automatizált teszteket.
Jelölje ki a futtatni kívánt teszt(ek)et, nyissa meg a Futtatás menüt, majd válassza a Futtatás teszt lehetőséget.
Ezeknek a teszteknek a teszt bináris fájljainak elérhetőnek kell lenniük a buildelési folyamat által létrehozott buildösszetevőkben.
Válassza az OK gombot a tesztelési folyamat elindításához. A rendszer ellenőrzi, hogy csak az automatizált tesztek lesznek kiválasztva (a manuális teszteket figyelmen kívül hagyja), ellenőrzi a szakaszt, hogy a Visual Studio tesztfeladat jelen van-e, és érvényes beállításokkal rendelkezik-e, ellenőrzi a felhasználó engedélyét arra, hogy kiadást hozzon létre a kiválasztott kiadási folyamathoz, létrehoz egy tesztfuttatást, majd elindítja a kiadás létrehozását a kiválasztott fázisban.
Válassza a Tesztfuttatás megtekintése lehetőséget a teszt előrehaladásának megtekintéséhez és a sikertelen tesztek elemzéséhez. A teszteredmények a hibakereséshez szükséges információkat tartalmaznak, például a hibaüzenetet, a veremkövetést, a konzolnaplókat és a mellékleteket.
A teszt végrehajtása után az Azure Test Plans Futtatás lapja megjeleníti a teszteredményeket. A Futtatás összegzése lap a futtatás áttekintését jeleníti meg.
A tesztek futtatásához használt kiadásra mutató hivatkozás megkönnyíti a teszteket futtató kiadás megkeresését, ha később vissza kell térnie, és elemeznie kell az eredményeket. Akkor is használja ezt a hivatkozást, ha meg szeretné nyitni a kiadást a kiadási naplók megtekintéséhez.
Feljegyzés
Az automatikus teszteredmények nem támogatják a fájlok manuális mellékletét.
A Teszteredmények lap felsorolja a tesztfuttatásban lévő egyes tesztek eredményeit. Válasszon ki egy tesztet a sikertelen tesztek hibakeresési információinak megtekintéséhez, például a hibaüzenethez, a veremkövetéshez, a konzolnaplókhoz és a mellékletekhez.
Nyissa meg a Teszttervek lapot, és válassza ki a teszttervet a tesztek állapotának megtekintéséhez, ha a tesztek a teszt végrehajtása után frissülnek. Válasszon ki egy tesztet a legutóbbi teszteredmények megtekintéséhez.
GYIK
Tekintse meg a következő gyakori kérdéseket (GYIK) az Azure Test Plans szolgáltatással kapcsolatban.
K: Milyen engedélyekre van szükségem az Azure Test Plans automatizált tesztjeinek futtatásához?
Válasz: Projekt közreműködőjének kell lennie, vagy az alábbi engedélyekkel kell rendelkeznie:
- Kiadások létrehozása
- Kiadások kezelése
- Kiadási szakasz szerkesztése
- Üzembe helyezés kezelése
További információ: Kiadási engedélyek.
K: Felülbírálhatom a buildet vagy a fáziskészletet a tesztterv szintjén egy adott tesztfuttatási példány esetében?
Válasz: Igen, ezt a Futtatás beállításokkal paranccsal teheti meg. Nyissa meg a tesztcsomag helyi menüjét a bal oldali oszlopban, és válassza a Futtatás a beállításokkal lehetőséget.
Adja meg a következő értékeket a Futtatás beállításokkal párbeszédpanelen, majd válassza az OK gombot:
- Teszt típusa és futója: Válassza ki az automatizált teszteket a kiadási fázis használatával.
- Build: Válassza ki a teszt bináris fájlokat tartalmazó buildet. A teszteredmények ehhez a buildhez vannak társítva.
- Kiadási folyamat: Válasszon ki egy folyamatot a kiválasztott buildösszetevőt használó kiadási folyamatok listájából.
- Kiadási fázis: Válassza ki a kiadási folyamatban konfigurált szakasz nevét.
K: Miért érdemes kiadási fázisokat használni a tesztek futtatásához?
Válasz: Az Azure Pipelines lenyűgöző vezénylési munkafolyamatot kínál a teszt bináris fájlok összetevőként való beszerzéséhez és tesztek futtatásához. Ez a munkafolyamat ugyanazokat a fogalmakat használja az ütemezett tesztelési munkafolyamatban, ami azt jelenti, hogy az ütemezett munkafolyamatban teszteket futtató felhasználók könnyen alkalmazkodhatnak; például egy meglévő ütemezett tesztelési kiadási folyamat klónozásával.
Egy másik jelentős előnye a feladatkatalógusban található tevékenységek gazdag készletének rendelkezésre állása, amely lehetővé teszi, hogy a tesztek futtatása előtt és után számos tevékenységet hajtson végre. Ilyenek például a tesztadatok előkészítése és tisztítása, konfigurációs fájlok létrehozása és tisztítása stb.
K: Hogyan működik a "Tesztfuttatás" kiválasztása a Visual Studio Teszt feladat 2. verziójában?
Válasz: A tesztfelügyeleti alrendszer a tesztfuttatási objektummal adja át a végrehajtásra kijelölt tesztek listáját. A tesztfeladat megkeresi a tesztfuttatás azonosítót, kinyeri a tesztvégrehajtási adatokat, például a tároló és a tesztmetódus nevét, futtatja a teszteket, frissíti a tesztfuttatás eredményeit, és beállítja a teszteredményekhez társított tesztpontokat a tesztfuttatásban. Naplózási szempontból a Visual Studio-feladat nyomkövetést biztosít az előzménykiadásoktól és a tesztfuttatási azonosítóktól az igény szerinti teszt végrehajtásához beküldött tesztekig.
K: Az ügynöknek interaktív módban vagy szolgáltatásként kell futnia?
V: Ha felhasználói felületi teszteket futtat, például kódolt felhasználói felületi vagy szelénteszteket , a tesztgépeken lévő ügynöknek interaktív módban kell futnia, és nem szolgáltatásként, hanem automatikusan engedélyeznie kell az ügynök számára a webböngésző elindítását. Ha olyan fej nélküli böngészőt használ, mint a PhantomJS, az ügynök szolgáltatásként vagy interaktív módban is futtatható. További információ: Ügynökök létrehozása és kiadása, Ügynök üzembe helyezése Windows rendszeren és ügynökkészletek.
K: Hol találok részletes dokumentációt a szeléntesztek futtatásáról?
Válasz: Tekintse meg a szeléntesztelés első lépéseit.
K: Mi történik, ha több konfigurációt választok ki ugyanahhoz a teszthez?
Válasz: Az igény szerinti munkafolyamat jelenleg nem konfigurációérzékeny.
K: Mi a teendő, ha termék bináris fájlokat és bináris fájlokat kell letöltenem különböző buildekből? Vagy ha le kell szereznem az összetevőket egy forrásból, például a Jenkinsből?
Válasz: Az aktuális képesség egyetlen csapat buildre van optimalizálva, hogy igény szerint tesztelhető legyen egy Azure Pipelines-munkafolyamat használatával. A felhasználói visszajelzések alapján kiértékeljük a több összetevőből álló kiadások támogatását, beleértve a nem Azure Pipelines-összetevőket, például a Jenkinst.
K: Már van ütemezett tesztelési kiadási folyamatom. Újra felhasználhatom ugyanazt a folyamatot az igény szerinti teszt futtatásához, vagy létrehozhatok egy új folyamatot?
Válasz: Javasoljuk, hogy egy külön kiadási folyamatot és szakaszt használjon igény szerinti automatizált teszteléshez az Azure Test Plansből, mert:
Előfordulhat, hogy nem szeretné minden alkalommal üzembe helyezni az alkalmazást, amikor le szeretne futtatni néhány igény szerinti tesztet. Az ütemezett tesztelési szakaszok általában a termék üzembe helyezésére, majd a tesztek futtatására vannak beállítva.
Az új kiadások minden igény szerinti futtatáshoz aktiválódnak. Ha sok tesztelő naponta hajt végre néhány igény szerinti tesztfuttatást, az ütemezett tesztelési kiadási folyamat túlterhelhető a futtatások kiadásaival, ami megnehezíti az ütemezett tesztelést és éles üzembe helyezést tartalmazó folyamathoz aktiváló kiadásokat.
Érdemes lehet bemenetként konfigurálni a Visual Studio tesztelési feladatát egy tesztfuttatási azonosítóval, hogy nyomon tudja követni, mi váltotta ki a kiadást. További információ: Hogyan működik a "Tesztfuttatás (igény szerinti futtatások esetén)" lehetőség a Visual Studio Teszt feladatban?
K: Aktiválhatom ezeket a futtatásokat, és megtekinthetim az eredményeket a Microsoft Test Managerben?
V.: Nem. A Microsoft Test Manager nem támogatja az automatizált tesztek futtatását a Team Foundation-buildeken. Csak az Azure Pipelines webes felületén működik. Minden új manuális és automatizált tesztelési termékfejlesztési beruházás a webes felületen található. A Microsoft Test Manager nem tervez további fejlesztéseket. Tekintse meg a Microsoft Test Manager használati útmutatóját.
K: Több tesztelőm van a csapatomban. Futtathatnak teszteket különböző tesztcsomagokból vagy tesztcsomagokból párhuzamosan ugyanazon kiadási folyamat használatával?
Válasz: Ugyanazt a kiadási folyamatot használhatják több tesztfuttatás egyidejű aktiválásához, ha:
A fázishoz társított ügynökkészlet elegendő ügynökkel rendelkezik a párhuzamos kérelmek kiszolgálásához. Ha nem áll rendelkezésre elegendő ügynök, a futtatások továbbra is aktiválhatók, de a feldolgozáshoz várólistát bocsát ki, amíg az ügynökök elérhetővé nem válnak.
A párhuzamos feladatok engedélyezéséhez elegendő feladat áll rendelkezésre. További információ: Párhuzamos feladatok az Azure Pipelinesban vagy párhuzamos feladatok a TFS-ben.
A tesztelők nem futtatják párhuzamosan ugyanazokat a teszteket. Ha így tesz, az eredmények felülíródnak a végrehajtás sorrendjétől függően.
Ha több különböző tesztfuttatás párhuzamos végrehajtását szeretné engedélyezni, állítsa be az Azure Pipelines szakasz eseményindító beállítását a viselkedéshez , ha több kiadás is az üzembe helyezésre vár:
Ha az alkalmazás támogatja a különböző forrásokból párhuzamosan futó teszteket, állítsa be ezt a beállítást úgy, hogy egyszerre több kiadás is üzembe legyen helyezve.
Ha az alkalmazás nem támogatja a különböző forrásokból párhuzamosan futó teszteket, állítsa be ezt a beállítást úgy, hogy egyszerre csak egy aktív üzembe helyezés legyen engedélyezve.
K: Hogyan paramétereket átadni a tesztkódnak egy buildelési vagy kiadási folyamatból?
V: Runsettings-fájl használatával adja át az értékeket paraméterként a tesztkódnak. Egy több fázist tartalmazó kiadásban például átadhatja a megfelelő alkalmazás URL-címét az egyes tesztfeladatoknak. A runsettings fájlt és az egyező paramétereket meg kell adni a Visual Studio Test feladatban.
K: Mik azok a tipikus hibaforgatókönyvek vagy problémák, amelyekre figyelni kell, ha a tesztjeim nem futnak?
Válasz: Ellenőrizze és oldja meg a problémákat az alábbiak szerint:
A build kiválasztása után nem jelenik meg az a kiadási folyamat és szakasz, amelyben teszteket szeretnék futtatni.
- Győződjön meg arról, hogy a buildet létrehozó buildfolyamat elsődleges összetevőként van csatolva a kiadási folyamat Összetevők lapján.
Hibaüzenet jelenik meg, amely szerint nem rendelkezem megfelelő engedéllyel a kiadás indításához.
- A kiadási folyamat Biztonsági menüjében konfigurálhatja a kiadási és telepítési engedélyeket a felhasználó számára. Lásd a kiadási engedélyeket.
Hibaüzenet jelenik meg, hogy nem található automatizált teszt.
- Ellenőrizze a kiválasztott tesztek automatizálási állapotát. Tegye ezt a teszteset munkaelemében, vagy az Azure Test Plans Oszlopbeállítások hivatkozásával adja hozzá az Automation állapotoszlopot a tesztek listájához. További információkért tekintse meg az előfeltételek szakaszt.
A tesztjeim nem hajthatóak végre, és gyanítom, hogy a kiadási folyamat helytelen.
- A Futtatás összegzése lapon található hivatkozással elérheti a tesztek futtatásához használt kiadási példányt, és megtekintheti a kiadási naplókat.
A tesztjeim hibaállapotba kerülnek, vagy "folyamatban" maradnak akkor is, ha a fázisban való kiadás aktiválódik.
- Ellenőrizze, hogy a kiválasztott kiadási fázisban a megfelelő feladat és verzió van-e kiválasztva. A Visual Studio Test feladat 2. vagy újabb verzióját kell használnia. A feladat 1. verziója és a Funkcionális tesztek futtatása tevékenység nem támogatott.