RubyMine enables usage of the following testing frameworks:
- Test::Unit is intended for unit testing and comes bundled with Ruby.
- Shoulda is intended for unit testing, and becomes available in Ruby projects on attaching the shoulda gem. So doing, the Shoulda tests are added on to the Test::Unit framework.
- RSpec. This testing tool supports BDD. RSpec becomes available in Ruby projects on attaching the rspec gem. For the Rails applications, rspec-rails gem is also required.
- MiniTest becomes available on attaching the minitest-reporters gem. The minitests are added to the Test::Unit framework.
- Cucumber. This testing tool supports BDD, and enables using features and scenarios written in a human-readable language, either English or any other language specified in the # language: comment. Cucumber becomes available in project upon installing and activating the cucumber gem.
For each of the supported testing frameworks, RubyMine provides:
- Code completion, aware of the specific testing framework.
- Run/debug configurations.
- Possibility to create tests.
- Possibility to navigate between tests and test subjects.
- Code inspections.
- Context-sensitive generators for the various types of tests.
- Dedicated directories structure.
- Possibility to run all tests or features in a directory, specific test classes, test cases or features, individual test methods or examples.
- Possibility to run tests from within the IDE, and view test results in the console, or in the test runner UI.
Refer to the section Testing for the detailed description of the common testing procedures.