serenity-bdd / serenity-cucumber

Cucumber integration for the Serenity BDD Reporting library
Other
78 stars 74 forks source link

Fix serenity report generation when run by multiple cucumber tags #118

Closed Ram-Raghu closed 6 years ago

Ram-Raghu commented 6 years ago

Before this change when cucumber features or scenarios are run based on logical ORs, ANDs & NOTs of two or more tags, serenity report fails to create tests report. This change would fix this issue and as a result when a user runs cucumber with tags as mentioned in this link (https://docs.cucumber.io/tag-expressions/) serenity report with tests on it would be generated.

The tests are added to the maven project in the path: serenity-cucumber\src\smoketests. The feature file name is serenity_report_when_using_tags_at_all_leve.feature and Junit test name is WhenUsingScenarioOutlineAndTagsAtAllLevels.java.

Ram-Raghu commented 6 years ago

Hi @wakaleo (John)

I did some research with regards to how cucumber team are handling the tags and found that the cucumber team has already made available an api to parse the tags. I have leveraged that to fix the serenity report issue for the cucumber tags. This will support the new cucumber tags (https://docs.cucumber.io/tag-expressions/) with operators Or, And and Not as the old tag expressions (https://github.com/cucumber/cucumber/wiki/Tags) would be phased out in the next release. Since its a small change to the code, therefore I did not think a new class would be required. Please let me know your thoughts.

wakaleo commented 6 years ago

Yes, makes sense, thanks.