1. Produkte
  2.   Video
  3.   Java
  4.   Video Recorder
 
  

Kostenlose Java-Bibliothek für automatische Videoaufzeichnung

Open-Source-Java-Bibliothek, um Video Recorder in Ihr Selenium-Grid zu integrieren, Remote-Node-Videos aufzunehmen und Fehler mit konkretem visuellem Nachweis zu analysieren.

Was ist Video Recorder ?

Benutzeroberflächen zu testen, besonders über verschiedene Browser und Geräte hinweg, kann sein wie zu versuchen, Rauch mit bloßen Händen zu fangen. Wenn ein Test fehlschlägt, kratzt man sich am Kopf und fragt sich, was schiefgelaufen ist. War es ein Timing‑Problem? Ein fehlendes Element? Eine seltsame Race‑Condition? Hier kommt die Video‑Recorder‑Bibliothek ins Spiel – ein Java‑Tool, das automatisch Videoaufnahmen Ihrer UI‑Tests mit nur wenigen Annotationen erstellt. Die Bibliothek, die auf GitHub von Sergey Pirogov bereitgestellt wird, macht Videoaufnahmen extrem einfach, indem sie Entwicklern ermöglicht, ein paar Annotationen oder Konfigurationen hinzuzufügen, um die Aufnahme während der Tests automatisch zu starten. Anstatt Bugs manuell zu reproduzieren, können Teams einfach die aufgezeichneten Videos ansehen, um zu verstehen, was während der Testausführung passiert ist.

Video Recorder ist eine Open-Source-Java-Bibliothek, die sich nahtlos in beliebte Test-Frameworks wie JUnit 4/5, TestNG und Spock integrieren lässt. Anstatt Bildschirmaufnahmen manuell zu starten und zu stoppen, fügen Sie einfach eine @Video-Annotation zu Ihren Testmethoden hinzu. Die Bibliothek übernimmt den Rest – sie startet die Aufnahme, bevor Ihr Test ausgeführt wird, und speichert das Video nach Abschluss, in der Regel nur, wenn ein Test fehlschlägt (obwohl Sie dies anders konfigurieren können). Die Bibliothek verwendet entweder Monte Media (reines Java, einfachere Einrichtung, aber begrenzte Formate) oder FFmpeg (leistungsfähiger, bessere Unterstützung für verschiedene Codecs und Bildschirmeinstellungen) als zugrunde liegenden Recorder. Für Remote-Tests, zum Beispiel in einem Selenium‑Grid, kann sie sogar das Video auf dem Remote‑Knoten aufnehmen, ohne zusätzliche Konfiguration.

Previous Next

Erste Schritte mit Video Recorder

Der empfohlene Weg, die Video Recorder-Bibliothek zu verwenden, besteht darin, die Maven-Abhängigkeit hinzuzufügen. Bitte verwenden Sie den folgenden Befehl für ein reibungsloses Funktionieren.

Maven-Abhängigkeit für die Video Recorder-Bibliothek

<dependency> <groupId>com.automation-remarks</groupId> <artifactId>video-recorder-testng</artifactId> <version>LATEST</version> </dependency>

Installieren von documents4j GitHub


implementation 'com.automation-remarks:video-recorder-junit5:2.0'

Annotationsbasierte Videoaufnahme über Java

Einer der größten Vorteile der Open-Source-Video-Recorder-Bibliothek ist ihr annotierungsgetriebenes Design. Entwickler können die Aufnahme einfach aktivieren, indem sie Anmerkungen zu Testklassen oder -methoden hinzufügen. Dies reduziert Boilerplate-Code und macht die Integration für Java-Testframeworks wie JUnit unkompliziert. Die @Video-Annotation startet die Aufnahme automatisch, bevor der Test beginnt, und stoppt sie nach Abschluss. Es gibt verschiedene Vorteile davon, wie minimale Codeänderungen, einfache Einführung und sauberere Testdateien.

Wie man annotierungsbasiertes Video über die Java-Bibliothek aufzeichnet?

import com.automation.remarks.video.annotations.Video;

public class LoginTest {

    @Video
    public void testLogin() {
        System.out.println(\"Executing login test...\");
    }
}

ustom Video Naming

Benutzerdefinierte Video-Benennung über die Java-Bibliothek

Die Open-Source-Video-Recorder-Bibliothek ermöglicht Java-Entwicklern, benutzerdefinierte Namenskonventionen für Aufnahmen zu verwenden, wodurch Teams Aufnahmen effizienter organisieren können. Dies ist nützlich beim Ausführen mehrerer Testsuiten. Sie ist sehr nützlich und bietet Vorteile wie bessere Dateiorganisation, einfachere Artefakt-Suche und verbesserte Reporting-Integration. Hier ist ein einfaches Beispiel, das zeigt, wie diese Operation durchgeführt wird.

Wie man eine Videodatei über die Java-Bibliothek erzeugt?

@Video(name = \"checkout_flow_test\")
public void checkoutTest() {
    System.out.println(\"Checkout process running\");
}

Benutzerdefinierte Video-Benennung über die Java-Bibliothek

Video Recorder ist sehr leistungsfähig und steuert alles – vom Aus

Wie man verschiedene Aufnahme‑Eigenschaften mit der Video‑Recorder‑Bibliothek anwendet?

# 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-Integration für Hochleistungsaufnahme

Für fortgeschrittene Benutzer kann die Bibliothek FFmpeg direkt aufrufen (statt Monte Media). FFmpeg bietet geringere CPU‑Auslastung, mehr Codecs (H.264, VP9) und die Möglichkeit, ein bestimmtes Anwendungsfenster oder einen Bereich aufzunehmen. Sie benötigen lediglich FFmpeg auf dem Testgerät installiert und das SendSignalCtrlC.exe‑Dienstprogramm unter Windows für ein sanftes Stoppen.

 Deutsch