/videotape

UI tests video recording made simple

Primary LanguageGroovyMIT LicenseMIT

📼 Videotape

codecov

Record videos of your UI tests by just putting a couple of annotations.

pom.xml
<dependency>
  <groupId>es.lnsd.videotape</groupId>
  <artifactId>videotape-testng<integration></artifactId>
  <version>${videotape.version}</version>
  <scope>test</scope>
</dependency>
<dependency>
  <groupId>es.lnsd.videotape</groupId>
  <artifactId>videotape-backend-monte</artifactId>
  <version>${videotape.version}</version>
  <scope>test</scope>
</dependency>
build.gradle
testImplementation group: 'es.lnsd.videotape', name: 'videotape-testng', version: "${videotape.version}"
testRuntimeOnly group: 'es.lnsd.videotape', name: 'videotape-backend-monte', version: "${videotape.version}"
@Listeners(VideoListener.class)
public class TestNgVideoTest {

    @Test
    @Video
    public void shouldFailAndCreateRecordWithTestName() {
        Thread.sleep(1000);
        assert false;
    }

    @Test
    @Video(name = "second_test")
    public void videoShouldHaveNameSecondTest(){
        Thread.sleep(1000);
        assertTrue(false);
    }
}

Currently, integrates with the following JVM test frameworks:

  • JUnit

  • JUnit 5

  • TestNG

And supports the following video recording backends:

  • Monte Media Library

  • FFMPEG

  • VLC

Documentation

The project documentation can be found here

Fork and renaming

This library is a fork of the work of Serhii Pirohov and the differet contributors of the video-recorder-java project.

Copyright (c) 2020-2021 Lorenzo Delgado

Copyright (c) 2016-2019 Serhii Pyrohov and the individual contributors to the original project

Use of this software is granted under the terms of the MIT License.

See the LICENSE file for the full text.