1. Productos
  2.   Video
  3.   Java
  4.   Grabadora de Video
 
  

Biblioteca Java gratuita para la grabación automática de video

Biblioteca Java de código abierto para integrar Video Recorder en tu Selenium Grid, capturar videos de nodos remotos y analizar fallos con pruebas visuales concretas.

¿Qué es Video Recorder?

Probar interfaces de usuario, especialmente en diferentes navegadores y dispositivos, puede ser como intentar atrapar humo con las manos desnudas. Cuando una prueba falla, te quedas rascándote la cabeza, preguntándote qué salió mal. ¿Fue un problema de sincronización? ¿Un elemento faltante? ¿Una extraña condición de carrera? Aquí es donde entra la biblioteca Video Recorder, una herramienta Java que captura automáticamente video de tus pruebas de UI con solo un par de anotaciones. La biblioteca, disponible en GitHub por Sergey Pirogov, hace que la grabación de video sea extremadamente simple al permitir a los desarrolladores agregar unas pocas anotaciones o configuraciones para iniciar la grabación automáticamente durante las pruebas. En lugar de reproducir manualmente los errores, los equipos pueden simplemente ver los videos grabados para entender lo que sucedió durante la ejecución de la prueba.

Video Recorder es una biblioteca Java de código abierto que se integra sin problemas con frameworks de pruebas populares como JUnit 4/5, TestNG y Spock. En lugar de iniciar y detener manualmente las grabaciones de pantalla, simplemente añades una anotación @Video a tus métodos de prueba. La biblioteca se encarga del resto: inicia la grabación antes de que se ejecute la prueba y guarda el video al finalizar, típicamente solo cuando una prueba falla (aunque puedes configurarlo de otra manera). La biblioteca utiliza Monte Media (Java puro, configuración más sencilla pero formatos limitados) o FFmpeg (más potente, mejor soporte para diferentes códecs y configuraciones de pantalla) como el grabador subyacente. Para pruebas remotas, como en un Selenium Grid, incluso puede grabar video en el nodo remoto sin configuración adicional.

Previous Next

Primeros pasos con Video Recorder

La forma recomendada de usar la biblioteca Video Recorder es añadiendo la dependencia Maven. Por favor, usa el siguiente comando para un funcionamiento sin problemas.

Dependencia Maven para la biblioteca Video Recorder

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

Instalar documents4j en GitHub


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

Grabación de video basada en anotaciones mediante Java

Una de las mayores ventajas de la biblioteca de grabación de video de código abierto es su diseño basado en anotaciones. Los desarrolladores pueden habilitar la grabación simplemente añadiendo anotaciones a clases o métodos de prueba. Esto reduce el código repetitivo y hace que la integración sea directa para frameworks de pruebas Java como JUnit. La anotación @Video inicia automáticamente la grabación antes de que comience la prueba y la detiene después de su finalización. Hay varios beneficios, como cambios mínimos en el código, adopción fácil y archivos de prueba más limpios.

¿Cómo grabar video basado en anotaciones mediante la biblioteca Java?

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

public class LoginTest {

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

ustom Video Naming

Nombrado de video personalizado mediante la biblioteca Java

La biblioteca de grabación de video de código abierto permite a los desarrolladores Java aplicar convenciones de nombrado personalizadas para las grabaciones, ayudando a los equipos a organizar los videos de manera más eficiente. Esto es útil al ejecutar múltiples suites de pruebas. Es muy útil y ofrece beneficios como una mejor organización de archivos, una búsqueda de artefactos más sencilla y una integración de informes mejorada. Aquí hay un ejemplo simple que muestra cómo realizar esta operación.

¿Cómo generar un archivo de video mediante la biblioteca Java?

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

Nombrado de video personalizado mediante la biblioteca Java

Video Recorder es muy potente y controla todo: desde la carpeta de salida y el modo de grabación (siempre, al fallar, solo pruebas anotadas) hasta la tasa de fotogramas y el tamaño de pantalla. Crea un archivo video.properties en tu classpath, o pasa parámetros mediante la línea de comandos de Maven/Gradle. Esto permite establecer diferentes estrategias de grabación para el desarrollo local (grabar siempre) frente a CI (grabar solo fallos).

¿Cómo aplicar varias propiedades de grabación usando la biblioteca Video Recorder?

# 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

Integración de FFmpeg para grabación de alto rendimiento

Para usuarios avanzados, la biblioteca puede llamar a FFmpeg directamente (en lugar de Monte Media). FFmpeg ofrece un menor uso de CPU, más códecs (H.264, VP9) y la capacidad de grabar una ventana o región específica de una aplicación. Solo necesita FFmpeg instalado en la máquina de pruebas y la utilidad SendSignalCtrlC.exe en Windows para detenerse de forma segura.

 Español