Ingyenes Java könyvtár az automatikus videófelvételhez
Nyílt forráskódú Java könyvtár a Video Recorder integrálásához Selenium Grid-jébe, távoli csomópontok videóinak rögzítéséhez, és a hibák elemzéséhez konkrét vizuális bizonyítékokkal.
Mi az a Video Recorder?
A felhasználói felületek tesztelése, különösen különböző böngészőkön és eszközökön, olyan, mintha a kezedben próbálnád elkapni a füstöt. Amikor egy teszt meghiúsul, fejben kapkodva próbálsz rájönni, mi ment rosszul. Időzítési probléma volt? Hiányzó elem? Furcsa versenyhelyzet? Itt jön képbe a Video Recorder könyvtár – egy Java eszköz, amely néhány annotációval automatikusan rögzíti a UI tesztek videóját. A könyvtár, amelyet Sergey Pirogov tett közzé a GitHubon, rendkívül egyszerűvé teszi a videófelvételt, lehetővé téve a fejlesztők számára, hogy néhány annotációt vagy konfigurációt hozzáadva automatikusan elindítsák a felvételt a tesztek során. A hibák manuális reprodukálása helyett a csapatok egyszerűen megnézhetik a felvett videókat, hogy megértsék, mi történt a tesztfuttatás során.
Video Recorder egy nyílt forráskódú Java könyvtár, amely zökkenőmentesen integrálódik a népszerű tesztkeretekkel, mint a JUnit 4/5, TestNG és a Spock. A képernyőfelvételek kézi indítása és leállítása helyett egyszerűen hozzáadhat egy @Video annotációt a tesztmetódusaihoz. A könyvtár a többit kezeli – elindítja a felvételt a teszt futtatása előtt, és a befejezéskor elmenti a videót, általában csak akkor, ha a teszt hibát jelez (bár ezt másként is beállíthatja). A könyvtár a Monte Media (tiszta Java, egyszerűbb beállítás, de korlátozott formátumok) vagy az FFmpeg (erősebb, jobb támogatás különböző kodekekhez és képernyőbeállításokhoz) egyikét használja alapvető felvevőként. Távoli tesztelés esetén, például egy Selenium Grid-en, akár a távoli csomóponton is felveheti a videót további konfiguráció nélkül.
Első lépések a Video Recorderrel
A Video Recorder könyvtár ajánlott használati módja Maven függőség hozzáadásával. Kérjük, használja a következő parancsot a zökkenőmentes működéshez.
Maven függőség a Video Recorder könyvtárhoz
<dependency> <groupId>com.automation-remarks</groupId> <artifactId>video-recorder-testng</artifactId> <version>LATEST</version> </dependency>documents4j telepítése a GitHubon
implementation 'com.automation-remarks:video-recorder-junit5:2.0'
Annotáció-alapú videófelvétel Java segítségével
Az nyílt forráskódú Video Recorder könyvtár egyik legnagyobb előnye az annotáció-vezérelt tervezés. A fejlesztők egyszerűen engedélyezhetik a felvételt annotációk hozzáadásával a tesztosztályokhoz vagy -metódusokhoz. Ez csökkenti a sablonkódot, és egyszerűvé teszi az integrációt a Java tesztkeretek, például a JUnit számára. A @Video annotáció automatikusan elindítja a felvételt a teszt megkezdése előtt, és leállítja a befejezés után. Számos előnye van ennek, például minimális kómmódosítás, könnyű elfogadás és tisztább tesztfájlok.
Hogyan rögzítsünk annotáció-alapú videót Java könyvtárral?
import com.automation.remarks.video.annotations.Video;
public class LoginTest {
@Video
public void testLogin() {
System.out.println("Executing login test...");
}
}
ustom Video Naming
Egyedi videó elnevezés Java könyvtárral
Az nyílt forráskódú Video Recorder könyvtár lehetővé teszi a Java fejlesztők számára, hogy egyedi elnevezési konvenciókat alkalmazzanak a felvételekhez, segítve a csapatokat a felvételek hatékonyabb szervezésében. Ez hasznos több tesztcsomag futtatásakor. Nagyon hasznos, és előnyöket biztosít, mint a jobb fájl szervezés, egyszerűbb artefakt keresés és a jelentésintegráció javítása. Itt egy egyszerű példa, amely bemutatja, hogyan hajtható végre ez a művelet.
Hogyan generáljunk videó fájlt Java könyvtárral?
@Video(name = "checkout_flow_test")
public void checkoutTest() {
System.out.println("Checkout process running");
}
Egyedi videó elnevezés Java könyvtárral
A Video Recorder nagyon erős, és mindent irányít – a kimeneti mappától és a felvételi módtól (mindig, hiba esetén, csak annotált tesztek) a képkockasebességig és a képernyőméretig. Hozzon létre egy video.properties fájlt az osztályútvonalában, vagy adjon át paramétereket Maven/Gradle parancssoron keresztül. Ez lehetővé teszi, hogy különböző felvételi stratégiákat állítson be a helyi fejlesztéshez (mindig felvétel) és a CI-hez (csak hibák felvétele).
Hogyan alkalmazhatunk különböző felvételi tulajdonságokat a Video Recorder könyvtár segítségével?
# Only record tests annotated with @Video (default)
video.mode=ANNOTATED
# Save videos only when a test fails (saves disk space)
video.save.mode=FAILED_ONLY
# Output directory – use an environment variable for CI
video.folder=${user.home}/test-reports/videos
# Frame rate – lower for faster processing, higher for smooth playback
video.frame.rate=15
# Use FFmpeg for better codec support
recorder.type=FFMPEG
FFmpeg integráció nagy teljesítményű felvételhez
Haladó felhasználók számára a könyvtár közvetlenül hívhatja a FFmpeg-et (a Monte Media helyett). A FFmpeg alacsonyabb CPU használatot, több kodeket (H.264, VP9) és a lehetőséget kínálja, hogy egy adott alkalmazásablakot vagy területet rögzítsen. Csak annyit kell tennie, hogy a tesztgéphez telepítve van a FFmpeg, és Windows rendszeren a SendSignalCtrlC.exe segédprogram a szabályozott leállításhoz.