Extended BDD Automation for Future Agile Applications Lakshmi Sravanthi Satarajupalli, SMT Janaiah Gera, SMT ADP
Abstract “Extended BDD Automation Framework” is designed to provide the end to end solution for the Applications that are being developed using agile development process. It is a simple and easy to use automation framework that each and every person in the scrum team can provide their contribution towards automation to reduce their time and efforts in testing the features that are developed in previous sprints and to continue with the In-Sprint Automation. Effective utilization of the Scrum team to get maximum results is the one key point of this framework. Coming to technical perspective, it is made up of commonly used and Zero Cost tools like TestNG, Cucumber, and Selenium etc.. . The common check points for an automation framework like Reporting, Parallel executions, and Multiple modes of execution (Command line and Tagging) are well developed with this framework.
Agenda End2End Process BDD Process Extended BDD Features Best Practices in BDD BDD Reports Benefits Q&A
Execute parallel in grid Store results in MongoDB End2End Process Development Deployment (Jenkins) Invoke Automation Execute parallel in grid Store results in MongoDB Results Email trigger Jenkins build (Success/Fail)
BDD Process Step 1 Step 2
Step 3 Step 4
Extended BDD Features Integration with TestNG Added new Annotations @Before Suite @Before feature @After feature @After Suite Parallel Executions at Feature level Implementation of XML driven Tagging Gherkin statements documentation Gherkin reports Integration with different build tools – Maven, Jenkins
Folder Level Executions Extended BDD Features Integration with TestNG Cucumber integrated with TestNG for XML driven executions To maintain same browser instance for all scenarios in feature file Parallel executions of feature file and test prioritization Tagging can be driven from XML file Multiple feature files can be executed from XML Folder level executions can be done from XML Folder Level Executions Tagging from XML
Extended BDD Features New Annotations Default (Cucumber) Cucumber new Annotations Default (Cucumber) @Before @After New Annotations @BeforeSuite @BeforeFeature @AfterFeature @AfterSuite
Execution Flow
Execution Results
Results Analysis
Results Analysis
Best Practices In BDD Steps document Dry Run Report
Benefits Effective & Efficient Test Results Management Results compare feature which reduces the analysis time Feature level parallel execution Tagging at scenario/Feature level Define executions at Folder level Define cross browser needs in XML Flexibility to execute on multiple environments Executable Documentation Achieved 70% in sprint automation, which has reduced testing efforts in hardening sprints
References & Appendix http://cukes.info/ - BDD Reference http://testng.org/doc/index.html - TestNG http://docs.seleniumhq.org/ - Selenium Help ( Web Driver and Grid ) http://www.mongodb.org/ - MongoDb http://www.eclipse.org/downloads/packages/release/Kepler/SR2 - Eclipse and its documentation http://jenkins-ci.org/ - Jenkins
Author Biography S Lakshmi Sravanthi is currently working as a Senior Member Technical in ADP India Pvt. Ltd. She has an overall experience of 5.6 years in Software industry. She has obtained his Bachelors in Engineering from Nalanda Institute of Engineering And Technology, JNTU. Her area of interest is Automation Testing Janaiah Gera is currently working as a Senior Member Technical in ADP India Pvt. Ltd. He has an overall experience of 5 years in Software industry. He has obtained his Bachelors in Engineering from CVR College of Engineering, JNTUH.
Thank You!!!