Roundabout
A Rails Engine that generates a page transition diagram for your Rails app from the system tests and shows it on the browser.
Requirements
-
Ruby 2.x
-
Rails 3 or newer
-
RSpec / Minitest / TestUnit
-
Capybara
Installation
Bundle this gem to your Rails app's development and test env:
gem 'roundabout', group: [:development, :test]
Usage
Run the whole tests with ROUNDABOUT
envvar (I suppose parallel spec is not supported ATM):
% ROUNDABOUT=1 rails test:system
All page transitions via capybara will be recorded, then woven into a diagram.
To see the generated diagram, just browse at http://localhost:3000/roundabout
.
You can also download a png image version and a PDF version from that page.
Example
The image shown at the very top of this document was generated from Redmine project's codebase.
Each box shows Rails controller/action name, and the arrows between them means as follows:
Dark: Redirect Red: Form Yellow: Link
Contributing
Send me a PR with a patch.
TODO
-
More tests (with multiple kinds of testing frameworks, capybara drivers, Rails versions, etc.)
-
Configure CI
-
Parallel tests support
-
etcetcetc.