https://github.com/arkasaur/robotvidsub
Enhance Robot Framework tests by recording and subtitling videos with top-level keywords.
https://github.com/arkasaur/robotvidsub
ffmpeg keyword-extraction robot-framework subtitles
Last synced: about 1 month ago
JSON representation
Enhance Robot Framework tests by recording and subtitling videos with top-level keywords.
- Host: GitHub
- URL: https://github.com/arkasaur/robotvidsub
- Owner: Arkasaur
- License: apache-2.0
- Created: 2024-05-19T15:12:06.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-05-27T02:55:10.000Z (about 1 year ago)
- Last Synced: 2025-05-06T20:57:45.234Z (about 1 month ago)
- Topics: ffmpeg, keyword-extraction, robot-framework, subtitles
- Language: Python
- Homepage:
- Size: 17.6 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# RobotVidSub
RobotVidSub is a library designed to enhance the debugging and presentation of automated tests by recording video during Robot Framework test executions and adding subtitles that display the top-level keywords in sync with the test steps shown in the video.
## Features
- **Video Recording**: Automatically starts and stops video recording, either for all tests (if a global `RECORDING` variable is set to string value `true`), or for individual tests (any test with the tag `recording` will be recorded)
- **Subtitles**: Adds subtitles to the videos, displaying the top-level keywords being executed.## Installation
Install RobotVidSub using pip:
```
bash
pip install robotvidsub
```
## UsageOnce installed, RobotVidSub automatically integrates with your Robot Framework tests. To enable RobotVidSub on your tests, make sure the `RobotVidSub.RobotVidSubListener` listener is referenced at the time of test execution:
```
# Run tests with listener enabled - RobotVidSub.RobotVidSubListenerrobot --outputdir=reports --listener=RobotVidSub.RobotVidSubListener Tests/AllTestsRun.robot
```Ensure that the RECORDING variable is set to true in your Robot Framework environment to enable video recording of all tests. If instead you want only particular tests to be recorded, add `recording` tag to these test cases.
All recordings are stored in the `recordings` folder under your parent test folder, with the name format of `{TestCaseId}_{ExecutionStartDateTime}`
## Requirements
RobotVidSub requires the following to be installed:
* Robot Framework
* ffmpeg-python (for video processing)These dependencies will be automatically installed when you install RobotVidSub.
Additionally, ffmpeg is needed to be installed manually on your system. You can check the installation method based on your system package manager.
Eg: For macOS with Homebrew installed, you can use
```
brew install ffmpeg
```## Additional Notes
In order to execute the sample tests included in the Tests directory, an additional dependency `robotframework-seleniumlibrary` needs to be installed.
The recommended installation method is using pip:
```
pip install --upgrade robotframework-seleniumlibrary
```## Example Results
https://github.com/Arkasaur/RobotVidSub/assets/119039702/6f019308-8a75-4703-8aac-50eeb420fb8b
https://github.com/Arkasaur/RobotVidSub/assets/119039702/0a3d95f9-0c85-4805-8115-e485bae537fd