IntelliJ
The Substeps plugin for IntelliJ can be downloaded from here
Requirements
- IntelliJ 15 (Community or Ultimate) running with JDK 8 see here for more details.
- A Substeps project and step implementation libraries built with substeps.org.
Features
- Basic Syntax highlighting
- Code completetion / suggestion
- ‘Go to Step definition’ navigation to steps and step implementations
- Outline views of features
- Run individual features or scenarios (using default configurations) including display of the steps, scenarios etc passed
- Debug features or scenarios (NB. breakpoints and stepping capability only in Java code, not at the feature / step level)
- Comment toggle over multiple lines
- Quick Documentation - bring up the javadocs and example usage for step implementations (if present)
Installation
- Download the plugin zip from here.
- Within IntelliJ, File, Settings, Plugins
- Untick Cucumber and Gherkin plugins (to avoid collisions with file associations)
- restart IntelliJ
- navigate to the plugins page again, choose ‘Install plugin from disk..’ locate the zip file downloaded above and install.
- restart
To upgrade to new versions, uninstall the old substeps plugin, restart, install the new one, restart.
On the backlog!
- central hosting (this will make upgrades easier)
- highlighting of errors
- Suggestions to fix errors (Alt + Enter -> create step definition / create step implementation)
- enable flexibility around run configurations, ie pass in other settings
- Improve reliability of ‘Go to Step definition’ - sometimes gets confused!
- navigation from the test runner output to code
- fix up the stats around what’s run and what hasn’t
- highlighting of comments at the end of the line
- allow user configurable colours
- clearer icons (Help!)
- highlighting and validation of parameters in Outline scenarios, example blocks and step definitions
- upload to IntelliJ’s plugin repository
- …. and more….
Suggestions, issues, pull requests all welcomed. If you find an issue and would like to report it, it would be a great help if you could enable logging first and then reproduce.
add the following to $IDEA_HOME/bin/log.xml with a suitable appender-ref
<logger name="uk.co.itmoore" additivity="false">
<level value="TRACE"/>
<appender-ref ref="FILE"/>
</logger> )