{"repo":"leonid-shevtsov/headless","free":true,"listed":false,"github":"https://github.com/leonid-shevtsov/headless","clone":"git clone https://github.com/leonid-shevtsov/headless.git","description":"Create a virtual X screen from Ruby, record videos and take screenshots.","language":"Ruby","stars":967,"topics":["xvfb","integration-testing","video-capture","screenshot","ffmpeg","selenium","ruby"],"license":"MIT","category":"media-processing","readme_excerpt":"Headless Headless is the Ruby interface for Xvfb. It allows you to create a headless display straight from Ruby code, hiding the low-level action. It can also capture images and video from the virtual framebuffer. For example, you can record screenshots and screencasts of your failing integration specs. I created it so I can run Selenium tests in Cucumber without any shell scripting. Even more, you can go headless only when you run tests against Selenium. Other possible uses include pdf generation with wkhtmltopdf , or screenshotting. Documentation is available at rubydoc.info Changelog Note: Headless will NOT hide most applications on macOS. Here is a detailed explanation Installation On Debian/Ubuntu: Usage Block mode: Object mode: Cucumber Running cucumber headless is now as simple as adding a before and after hook in features/support/env.rb : Running tests in parallel If you have multiple threads running acceptance tests in parallel, you want to spawn Headless before forking, and then reuse that instance with destroy at exit: false . You can even spawn a Headless instance in one ruby script, and then reuse the same instance in other scripts by specifying the same display number and reuse: true . There's also a different approach that creates a new virtual display for every parallel test process - see this implementation by @rosskevin. Cucumber with wkhtmltopdf Note: this is true for other programs which may use headless at the same time as cucumber is running When wkhtmlt","default_branch":null,"files":null,"tree":[],"storefront":"/r/leonid-shevtsov","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/leonid-shevtsov/headless/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}