Skip to content

A prototype for a desktop GUI client for watching (and potentially running) Cucumber tests

License

Notifications You must be signed in to change notification settings

mattwynne/cucumber-gui-spike

Repository files navigation

cucumber-gui (spike)

A prototype Graphical User Interface for Cucumber, the BDD and testing tool.

Start it with yarn start

You can test this using the event-stream-3 branch of Cucumber-Ruby, using this command:

cucumber features/docs/ --format Cucumber::Formatter::EventStream,port=9000 --out dev/null --format progress

## Demo

Preview video

TODO

### Protocol

  • count steps as they're executed
    • resolve mystery of why steps appear from Ruby after test run started event
    • resolve the mystery of why some steps that were shown in the test-run-starting event are never sent us as results
  • display step duration
  • show which step is curently running (drives out the test-step-starting event)
  • display test step failure message and backtrace
  • hide things until they're ready to display
  • display working directory
  • display start time
  • display Gherkin source of a test case
    • send a GherkinSourceRead event
    • highlight steps from Gherkin source as they're executed
  • display unused step definitions
  • resolve confusion about sourceLocation vs actionLocation for test steps (especially hooks)
  • protocol version
  • display image / video attachments
  • publish Ruby event-stream formatter / plugin (with tests?)
  • document new events in a PR for the event protocol with schema, examples etc

Habitability

  • live reload for easier development
  • install bootstrap for better styling
    • use bootstrap progress bar
  • add to_json methods to things like Result and Test::Case/Step in cucumber-ruby-core
  • publish the repo in cucumber/cucumber and ask for help
  • add tests
  • rewrite using react / redux for rendering
  • replace bootstrap / jquery with something lighter

Ideas for additional features

  • display multiple test runs (series) in different windows
    • group by project
  • display project name and command used to run the tests
    • button to re-run the same test again

About

A prototype for a desktop GUI client for watching (and potentially running) Cucumber tests

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published