Inherit Information of @Cucumber.Options #568

Closed
klausbayrhammer opened this Issue Aug 7, 2013 · 3 comments

Comments

Projects
None yet
2 participants
Contributor

klausbayrhammer commented Aug 7, 2013

We have a lot of different JUnit tests which run different cucumber features. All of these tests share some common options (e.g. the glue path, tags or a common formatter). Some of these tests have to include specific formatters or tags. At the moment it is not possible to inherit the common options of a '''BaseTest''' to a ''SpecificTest''', so we have to specifiy all required options in every specific test.

We would like to do something like the following where the SpecificTest will have the glue from the BaseTest and both the CommonFormatter and the SpecificFormatter.

@RunWith(Cucumber.class)
@Cucumber.Options(format = "org.CommonFormatter", glue = "org.glue.path")
public class BaseTest
{
}

...

@Cucumber.Options(format = "org.SpecificFormatter")
public class SpecificTest extends BaseTest
{
}
Owner

aslakhellesoy commented Aug 7, 2013

Sounds reasonable, but only if the base class is abstract (otherwise JUnit might run the base class twice).

Are you going to send a pull request for this?

Contributor

klausbayrhammer commented Aug 10, 2013

Sure, I'll code it next week.

klausbayrhammer pushed a commit to klausbayrhammer/cucumber-jvm that referenced this issue Aug 20, 2013

#568 Inherit Information of @Cucumber.Options
inherit information of cucumber.options from superclass to subclass
 * add additional information of multioptions like formatters
 * override single-options like monochrome
Owner

aslakhellesoy commented Aug 27, 2013

Thanks a lot @klausbayrhammer. I had to fix a broken test. Next time, please send a pull request (that causes travis to verify that the code is good).

mfellner added a commit that referenced this issue Aug 27, 2013

Merge branch 'master' of github.com:cucumber/cucumber-jvm
# By Aslak Hellesøy (1) and bayrhammerklaus (1)
# Via Aslak Hellesøy
* 'master' of github.com:cucumber/cucumber-jvm:
  Attribution. Fix broken test. Closes #568
  #568 Inherit Information of @Cucumber.Options

mfellner added a commit that referenced this issue Sep 6, 2013

Merge branch 'master' into android
# By Aslak Hellesøy (9) and others
# Via Dmytro Chyzhykov (2) and others
* master:
  [TestNG] Java Calculator TestNG example project - #579 issue.
  [Jython] Access to scenario in Before and After hooks. Closes #582.
  Scenario Outlines: Replace tokens in the names of the generated "Example Scenario"s.
  Change some remaining Cucumber.Options to CucumberOptions
  No longer used
  No longer used
  master is SNAPSHOT
  Java Calculator TestNG example project.
  Enable Wicket example, using HtmlUnitDriver so it runs on Travis. Upgraded maven plugins.
  is deprecated in favour of . Closes #549
  Disable wicket example for now
  Updated History.md with Android improvements. Ref #547 and #574.
  Attribution. Fix broken test. Closes #568
  Enable wicket example. Removed incorrect comment about cargo requiring Java 7. It does not. (Jetty 9 does, but we're on 8 now).
  #568 Inherit Information of @Cucumber.Options
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment