Workflow-based Automation Framework for Agile Software Development Sarthak Goyal, Lead Software Engineer Sahil Varshney, Software Engineer Adobe Systems
User experience spans across multiple platforms and devices Abstract User experience spans across multiple platforms and devices Need to cope up with rapid changes in Agile world Proposing workflow based automation framework approach Used successfully in multiple projects
Automation framework should be scalable and maintainable Background Automation framework should be scalable and maintainable Earlier used keyword-driven and data-driven based frameworks Lots of re-work, redundancy, maintenance involved Grouping of test cases not easy
Workflow is sequence of interdependent scenarios Workflow-based Framework Approach Workflow is sequence of interdependent scenarios Test scenario groups together test cases Sequential execution of test scenarios Test case Test scenario Workflow
Follows layered approach Modular framework Abstraction in layers Layered Architecture Follows layered approach Modular framework Abstraction in layers Workflow Engine Workflow 1 Workflow 2 Workflow 3 Panel UI 1 Panel UI 2 Performance Utilities Selenium AutoIt/ Atomac Sikuli
Framework design Result Reporter Workflow Engine UI Panel Result Generator +updateSteps +updateResult +getResult +getResultJSON +getResultStatus Native UI Utilities AutoIT Sikuli Atomac Extend Script Result Reporter Workflow Engine UI Panel Desktop Web Services Options Common Utilities +File Utilities +DB Utilities +Process Utilities +HTTP Utilities HTML Generator +generateHTMLReport JSON HTML CSS JavaScript Selenium Utilities +clickElem +getElemByTagName +getElemsByTagName +clickByCSS +close Platforms Framework design
Adding new features and maintenance is easy Conclusion Adding new features and maintenance is easy Technology changes handled within layers Grouping of test cases reduces turnaround time and provides flexibility Successful for product with more than 5 million user base Leveraged by multiple teams
Author Biography Sarthak Goyal is Lead Software Engineer at Adobe Systems, Noida. He started his career with Wipro Technologies in telecom equipment domain, And has strong exposure to desktop, web and we services. Sahil Varshney has more than two years of work experience. He is passionate about his work and is always curious to explore new aspects of Computer Science.
Thank You!!!