Changes in version 2.0

Adam Ralph edited this page Aug 4, 2015 · 32 revisions


  • Based on 2.0 and supports all new 2.0 features (#51).
  • IStepContext metadata (#146).
  • OnFailure() step builder method to control the behavior of remaining steps if the step fails (#247).
  • StepDefinition filter attributes (#254).
  • x(), an alternative to f() and _() (#238).


  • When a step fails, all following steps in the scenario are reported as skipped. In 1.x, all following steps in the scenario were reported as failed.
  • The Before() and After() methods of a BeforeAfterTestAttribute are now called before and after each scenario is run. In 1.x, these methods were called before and after each step within a scenario was run.
  • Object disposal and Teardown are no longer represented as a separate test unless they fail. This aligns with the behaviour of most 2.0 runners which show an extra failed test when test clean up fails.


  • Given(), When(), Then(), And() and But(). Use f(), _() or x() instead.
  • Timeouts have been removed under the same rationale used for 2.0.
  • Isolated steps have been removed as this is a rarely (if ever) used feature that adds considerable implementation overhead.
  • Object disposal without passing a context object to Using() (deprecated in 1.x).
  • An undocumented feature which allows global continuation of step execution when certain types of step fail.
  • An undocumented feature which allows omission of arguments from scenario names in test output.