A pure Ruby driver for Capybara that runs tests on headless Chrome/Chromium without Selenium dependencies.
Cuprite is a Ruby driver for Capybara that allows developers to run integration tests on headless Chrome or Chromium browsers. It directly uses the Chrome DevTools Protocol via Ferrum, eliminating the need for Selenium/WebDriver, which simplifies the testing stack and improves performance.
Ruby developers using Capybara for browser-based integration testing who want a faster, lighter alternative to Selenium-based drivers.
Developers choose Cuprite for its simplicity, speed, and direct access to Chrome's features without Selenium overhead, along with advanced capabilities like network traffic inspection and fine-grained browser control.
Headless Chrome/Chromium driver for Capybara
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Eliminates Selenium, WebDriver, and ChromeDriver dependencies, reducing setup complexity and runtime overhead as highlighted in the 'Pure Ruby Driver' feature.
Uses Ferrum for efficient communication with Chrome via the DevTools Protocol, enabling faster test execution compared to Selenium-based drivers, as noted in the README's philosophy.
Provides methods like 'network_traffic' and 'wait_for_network_idle' to inspect HTTP requests and responses, useful for debugging AJAX calls and dynamic content loading.
Allows precise manipulation of cookies, headers, and mouse actions, such as setting custom User-Agent headers or clicking specific coordinates with 'page.driver.click'.
Only supports headless Chrome/Chromium via CDP, making it unsuitable for testing other browsers like Firefox or Safari without additional drivers or workarounds.
Code using Selenium's 'manage' methods may break and require refactoring, as warned in the README, which can complicate migration from existing Selenium test suites.
Network traffic is not automatically cleared between page visits, requiring manual calls to 'clear_network_traffic' or 'reset', which can lead to test pollution if overlooked.
Cuprite is an open-source alternative to the following products: