BDD-Behave + Python + Selenium + PyCharm IDE.
It is automation framework that i am working on. I can say that it is a good test automation framework design and I am really proud of what we have been building using this framework.
So why I think it is a good framework:
- BDD approach. Develop the Scenarios first, then write the code
- Red/Green/Refactor cycle
- Handle test scenarios, scripts and data separately. Separate locator from page objects.
- Follow coding standards, no thread.sleep, no implicitly wait , only using explicitly wait for pages, elements synchronization.
- Dedicated Data Storage to store reusable variables or info based on Browser Session ID which will optimize and avoid conflict when running tests parallel.
- Strictly on using test design pattern and principles
- Script/Framework version control using Git
- Integrate into CI tool Jenkins
- Ability to perform multiple types of testing : smoke tests, full regression tests, API tests and on multiple environments such as local or Staging.
- Ability to run specific test scenario or group of tests using tags.
- Reporting by Behave Allure framework.
- Using Docker to create Selenium Grid and 15 nodes for running tests.