Skip to main content

E2E - project folder structure

When a new project starts, the following folders structure is recommended to be used.

project_root\
├─> cases\
├─> doc\
├─> others\
├─> resources\
│ ├─> common.resource
│ ├─> keywords\
│ │ ├─> common-keywords.robot
│ │ └─> ...
│ └─> locators\
├─> results\
└─> scripts\

cases\

In this folder are stored all the files containing the test case implementation needed to run the test suite. The naming convention for files in this folder is: D. if the test cases are datadriven, *[0-9]-**<nowiki/> a numeric identifier for the test case, NAME a human readable name for the testcase. (e.g.: D.101-LANGUAGE.robot, 00-BaseSuite.robot).''

doc\

In this folder are stored all the useful documentation files that can help you or third-party users to run or maintain the testing automation suite. You can put here for example keywords documentation extracted with the tool libdoc.

others\

In this folder should be put every file useful for the test, that is not a resource or a documentation (e.g. templates to import, image to upload).

resources\

It contains all the keywords, locators and all the support files needed by suite. A file named common.resource is mandatory and it contains common variables for the execution (e.g. url and other parameters like env). The suite uses the page object design pattern, so it is recommended to separate locators from keywords definition. For that, inside the folder resources/, two other folders should be created.

locators\

It contains all the files .resource with locators that enables testers to select an HTML DOM element to act on. Each different page shall have a different .resource file containing the locators.

keywords\

It contains all the keywords definition. It is recommended to create a file named common-keywords.robot in which are reported all the generic keywords unrelated to the specific project. Like locators, each different page shall have a different .robot file containing the keywords related to that page.

results\

It is a folder that shall contain all the report file generated by suite execution (e.g. log.html, report.html, screenshot-1.png, ...).

scripts\

Some utility scripts to build and run the docker image in a single command and the jenkins pipeline groovy script.

DEFAULTSORT:e2e_project_folder_structure