-
Notifications
You must be signed in to change notification settings - Fork 8
Developer Guide
amitmindstix edited this page Jan 15, 2018
·
10 revisions
- A module is a set of distinct features like cart, gallery etc.
- Features under cart module could be checkout, addtowishlist etc.
- Each feature can have scenarios. e.g. Checkout single product, Checkout multiple products
- Each module would have its own sub folder and subpackage.
- All feature files will reside under its module.
- All test classes (step definitions) reside under sub package for that module.
- All test classes will be named as
<Featurename>Test.java - Each scenario can have one or more tags. Typically tags include module, feature, test-type, test-priority
- e.g.
@cart @checkout @singleproduct @smoke @medium - Tags can also be given at feature file level (typically module and feature level tags)
Source tree of the project looks like below -

- data - Contains classes that represent test data
- page - Contains POM classes (page object model) ** This can have sub packages based on modules
- utils - Contains utility classes
- runner - Contains Cucumber runner class - refer RunnerCourgette.java for more details
- stepdefinition - Contains cucumber step definition classes (aka glue) ** This can have sub packages based on modules