0.01
There's a lot of open issues
This gem has everything you need to start working with test automation
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
 Dependencies

Development

~> 1.9
~> 3.11.0
~> 13.0.6
~> 6.1.0
~> 1.27

Runtime

~> 1.2.1
~> 0.23.1
 Project Readme

Ruby Raider

Gem Version Tests Reek Rubocop Gitter


Logo

Explore the docs

Rubygems · Report Bug · Request Feature

For more information and updates on releases, see https://ruby-raider.onrender.com/

What is Ruby Raider?

Ruby Raider is a CLI gem and API backend for scaffolding and generating UI test automation frameworks. It supports both interactive command-line usage and programmatic invocation via Raider Desktop.

Supported Frameworks

Web Testing

Test Framework Selenium Watir
RSpec
Cucumber

Mobile Testing (Appium)

Test Framework iOS Android Cross-Platform
RSpec
Cucumber

Optional Add-on (Web Only)

Add-on Flag Description
Accessibility --accessibility Adds axe gem + example accessibility tests

This works on all platforms (Mac OS, Linux and Windows).

What's Included

Every generated project comes with:

  • Page Object Model — Base page and component classes with example pages
  • Test examples — Working login tests against the Raider Test Store
  • Allure reporting — Pre-configured with screenshot capture on failure
  • GitHub Actions CI — Ready-to-use test pipeline
  • Rake tasks — Default, smoke, and regression tasks with tag-based filtering
  • Retry support — RSpec retry with configurable retry count via RETRY_COUNT env var
  • Re-run failed tests — Persistence file for tracking example status
  • Parallel execution — parallel_tests and parallel_split_test gems included
  • Configurable browser — Chrome/Firefox with customizable arguments, viewport, timeout, and headless mode
  • Linting — RuboCop and Reek configs included

For Appium projects, download the example app and start the server:

raider u start_appium

Getting Started

Install the gem:

gem install ruby_raider

Create a new project interactively:

raider new [project_name]

Or skip the menu with parameters:

raider new [project_name] -p framework:rspec automation:selenium

Add accessibility testing:

raider new my_project -p framework:rspec automation:selenium --accessibility

Commands

Anything between square brackets ([...]) is where your input goes

Main Commands

raider new [PROJECT_NAME]       # Create a new framework project
raider generate                 # Access scaffolding commands
raider utility                  # Access utility commands
raider version                  # Show current version
raider help [COMMAND]           # Describe available commands

Shortcuts: n (new), g (generate), u (utility), v (version)

Scaffolding Commands

raider g page [NAME]            # Create a page object
raider g spec [NAME]            # Create an RSpec test
raider g feature [NAME]         # Create a Cucumber feature
raider g steps [NAME]           # Create step definitions
raider g helper [NAME]          # Create a helper class
raider g component [NAME]       # Create a component class
raider g scaffold [NAME(S)]     # Create page + test + steps

Options:

  • --path [PATH] — Custom output path

Utility Commands

raider u path [PATH]            # Set default paths for scaffolding
raider u url [URL]              # Set default project URL
raider u browser [BROWSER]      # Set default browser
raider u browser_options [OPTS] # Set browser arguments (e.g., no-sandbox, headless)
raider u headless [on/off]      # Toggle headless mode
raider u raid                   # Run all tests (-p for parallel)
raider u timeout [SECONDS]      # Set test timeout
raider u viewport [DIMENSIONS]  # Set viewport size (e.g., 1920x1080)
raider u platform [PLATFORM]    # Set platform for cross-platform tests
raider u start_appium           # Start Appium server
raider u desktop                # Download Raider Desktop

Development

bundle install          # Install dependencies
bundle exec rspec       # Run all tests
bundle exec rspec --tag ~slow  # Run fast tests only (skip E2E)
bundle exec rubocop     # Run linter
bundle exec reek        # Run code smell detection

Links