Behavior-driven development testing framework written in Ruby to test Ruby code.


Initialize an .rspec config and a spec helper file

$ rspec --init

Run all tests
$ rspec

Run a specific directory of tests
$ rspec [path/to/directory]

Run a specific test file
$ rspec [path/to/file]

Run multiple test files
$ rspec [path/to/file1] [path/to/file2]

Run a specific test in a file (e.g. the test starts on line 83)
$ rspec [path/to/file]:[83]

Run specs with a specific seed
$ rspec --seed [seed_number]


rspec [options] [files or directories]


The Ruby script rspec allows you to run tests written with RSpec, a testing tool for Ruby, from the command line. When run without arguments, rspec finds automatically all the spec files of your projects, and runs them. It is possible to restrict the tests to a subset by specifying the names of particular spec files or by using some of the filtering options.

Various options can be passed to rspec to modify the output of the tests, or the way the tests are run.



Specify PATH to add to $LOAD_PATH (may be used more than once).

-r, --require PATH

Require a file.

-O, --options PATH

Specify the path to a custom options file.

--order TYPE[:SEED]

Run examples by the specified order type. TYPE can be either default, for which files are ordered based on the underlying file system's order, or rand, for which the order of files, groups and examples is randomized. random is an alias for rand. A SEED can be indicated for the random type, e.g. --order random:123

--seed SEED

Equivalent of --order rand:SEED.

-d, --debugger

Enable debugging.


Abort the run on first failure.

--failure-exit-code CODE

Override the exit code used when there are failing specs.

-X, --[no-]drb

Run examples via DRb.

--drb-port PORT

Port to connect to the DRb server.


Initialize your project with RSpec.


Deprecated. Use --init instead.


-f, --format FORMATTER

Choose a formatter. The various choices are [p]rogress (default - dots), [d]ocumentation (group and example names), [h]tml, [t]extmate or a custom formatter class name.

-o, --out FILE

Write output to a file instead of STDOUT. This option applies to the previously specified --format, or the default format if no format is specified.

-b, --backtrace

Enable full backtrace.

-c, --[no-]color, --[no-]colour

Enable color in the output.

-p, --profile

Enable profiling of examples and list 10 slowest examples.


In addition to the following options for selecting specific files, groups, or examples, you can select a single example by appending the line number to the filename:

rspec path/to/a_spec.rb:37

-P, --pattern PATTERN

Load files matching pattern (default: spec/**/*_spec.rb).

-e, --example STRING

Run examples whose full nested names include STRING.

-l, --line_number LINE

Specify line number of an example or group (may be used more than once).

-t, --tag TAG[:VALUE]

Run examples with the specified tag, or exclude examples by adding ~ before the tag, e.g. ~slow. TAG is always converted to a symbol.

--default_path PATH

Set the default path where RSpec looks for examples (can be a path to a file or a directory).


-v, --version

Display the version.

-h, --help

Display a message similar to this manpage.


This man page inspired by the help message of rspec, has been written by C├ędric Boutillier for the Debian Project, but may be used by others.

Copied to clipboard