SlideShare ist ein Scribd-Unternehmen logo
1 von 2
PROBLEM STATEMENT
While trying to resolve certain performance issues of the product the customer had to change the code frequently, and
every build required a thorough regression testing cycle spanning 2 person weeks. The customer’s primary concern was
to ensure that users of their product were not inconvenienced by performance issues.
CUSTOMER AND PRODUCT BACKGROUND
The customer is a global provider of simulation technology and engineering services with a 27-year track record of
high-end software for engineering and computing, enterprise analytics solutions, and innovative product design and
development.
The product being tested, a core component of the customer’s flagship product based on the SOA platform is a
web-based enterprise simulation platform. The product was built on Google Web Toolkit and had some interactions, like
save as, open dialog boxes, etc. The product has been in the market for the last six years and has been used by many
prestigious customers across the globe.
CASE STUDY
End-to-End Test Automation Solution
Using Selenium Tool
STAG implemented an end-to-end Selenium test
automation solution through the CI platform,
enabling parallel execution of tests on different
browsers and platforms for a global provider of
simulation technology and engineering services, to
effect a 95% reduction in regression test cycle time.
Domain / Category -
Engineering Services
Technology - Google Web Toolkit,
Windows 7, Postgre, Firefox, Chrome,
IE8 and 9, Safari, Selenium, and Jenkins
OUTCOME AND VALUE ADDITIONS
The team developed a robust automation framework that allowed parallel execution with multiple URLs on multiple
machines across multiple browsers. This resulted in reduction in manual testing time by 95% (from 100 hours to 4 hours). The
team also put in place well-organized test assets that allowed easy maintenance and scalability on demand.
Visit: www.stagsoftware.com | E-mail: marketing@stagsoftware.com
Bangalore: +91 80 28495574 / 41263009 | Chennai: +91 44 4214 3469 / 2442 0396
2012 © STAG Software Private Limited. All rights reserved. All trademarks are acknowledged.
SOLUTION
The STAG team initiated a knowledge transfer plan for rapid
understanding of the product and the test assets to set up a
good baseline for automation. Selenium was chosen as the tool
for automation. A 3-member team then prepared an
automation architecture, which was keyword data driven, that
was not only scalable and expandable but also compatible with
the two other core applications of the flagship product.
The STAG team improved existing test cases for completeness
and adequacy, and also removed those that were redundant. To
ensure better organization and maintenance, the team
categorized the test cases into different levels. The team also
developed automation libraries and scripts using Java coding
standards. The scripts developed were able to run with multiple
URLs on multiple machines across multiple browsers, all in
parallel.
The team used Selenium Webdriver with TestNG toolsets to
develop and manage the automation scripts and also execute
them simultaneously. It also configured Selenium scripts with
the Jenkins – Continues Integration (CI) tool for scheduled
automation execution and initiating execution on post-build
release. Selenium’s inherent limitation of supporting only
browsers was resolved using smart workarounds. To handle
dynamic UI controls, the team adopted dynamic XPaths.
The STAG team automated 5 modules and designed a HTML execution report with a dashboard to highlight the test case
execution time stamp. The team also developed a risk and mitigation plan and performed 2 cycles of testing monthly.
# Automated test scenarios: 355
# Module level scripts: 5
(each 3500 LOC)
# Reusable Generic Library
files: 3 (5100 LOC)
# Lines of code (LOC) of
automation script: 27,000 approx.
# Driver scripts: 5
(each 900 LOC)
# Automation document files: 2

Weitere ähnliche Inhalte

Mehr von STAG Software Private Limited

Mehr von STAG Software Private Limited (20)

The Power of Checklist
The Power of ChecklistThe Power of Checklist
The Power of Checklist
 
The power of checklist
The power of checklist The power of checklist
The power of checklist
 
Webinar - 'Test Case Immunity’- Optimize testing
Webinar - 'Test Case Immunity’- Optimize testing Webinar - 'Test Case Immunity’- Optimize testing
Webinar - 'Test Case Immunity’- Optimize testing
 
Design Scientifically (How to test a user story)
Design Scientifically (How to test a user story)Design Scientifically (How to test a user story)
Design Scientifically (How to test a user story)
 
Setting a clear baseline (How to test an user story #2)
Setting a clear baseline (How to test an user story #2)Setting a clear baseline (How to test an user story #2)
Setting a clear baseline (How to test an user story #2)
 
Question to Understand (How to test an User Story #1)
Question to Understand (How to test an User Story #1)Question to Understand (How to test an User Story #1)
Question to Understand (How to test an User Story #1)
 
Language shapes the way you think
Language shapes the way you thinkLanguage shapes the way you think
Language shapes the way you think
 
Deliver Superior Outcomes Using HBT Visualization Tool
Deliver Superior Outcomes Using HBT Visualization ToolDeliver Superior Outcomes Using HBT Visualization Tool
Deliver Superior Outcomes Using HBT Visualization Tool
 
Hypothesis Based Testing – Application and Adaptation for testing Enterprise ...
Hypothesis Based Testing – Application and Adaptation for testing Enterprise ...Hypothesis Based Testing – Application and Adaptation for testing Enterprise ...
Hypothesis Based Testing – Application and Adaptation for testing Enterprise ...
 
Are Your Test Cases Fit For Automation?
Are Your Test Cases Fit For Automation?Are Your Test Cases Fit For Automation?
Are Your Test Cases Fit For Automation?
 
Think better using “Descriptive-Prescriptive” Approach
Think better using “Descriptive-Prescriptive” ApproachThink better using “Descriptive-Prescriptive” Approach
Think better using “Descriptive-Prescriptive” Approach
 
Improving Defect Yield - a three step approach
Improving Defect Yield - a three step approachImproving Defect Yield - a three step approach
Improving Defect Yield - a three step approach
 
Regression Suite Optimization
Regression Suite OptimizationRegression Suite Optimization
Regression Suite Optimization
 
Reflect and Change
Reflect and ChangeReflect and Change
Reflect and Change
 
Test Process Transformation Protects Product Development Investment
Test Process Transformation Protects Product Development InvestmentTest Process Transformation Protects Product Development Investment
Test Process Transformation Protects Product Development Investment
 
Agile Sutra "Do more by doing less, Prevent rather than detect"
Agile Sutra "Do more by doing less, Prevent rather than detect"Agile Sutra "Do more by doing less, Prevent rather than detect"
Agile Sutra "Do more by doing less, Prevent rather than detect"
 
Intelligent Automation and Smart Tooling
Intelligent Automation and Smart ToolingIntelligent Automation and Smart Tooling
Intelligent Automation and Smart Tooling
 
Enhanced Delivery Confidence Improved Product Maturity
Enhanced Delivery Confidence Improved Product MaturityEnhanced Delivery Confidence Improved Product Maturity
Enhanced Delivery Confidence Improved Product Maturity
 
Too Many Conditions!
Too Many Conditions!Too Many Conditions!
Too Many Conditions!
 
Pre-deployment Performance Evaluation of Web-based Product
Pre-deployment Performance Evaluation of Web-based ProductPre-deployment Performance Evaluation of Web-based Product
Pre-deployment Performance Evaluation of Web-based Product
 

Kürzlich hochgeladen

Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Kürzlich hochgeladen (20)

DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 

End-to-End Test Automation Solution Using Selenium Tool

  • 1. PROBLEM STATEMENT While trying to resolve certain performance issues of the product the customer had to change the code frequently, and every build required a thorough regression testing cycle spanning 2 person weeks. The customer’s primary concern was to ensure that users of their product were not inconvenienced by performance issues. CUSTOMER AND PRODUCT BACKGROUND The customer is a global provider of simulation technology and engineering services with a 27-year track record of high-end software for engineering and computing, enterprise analytics solutions, and innovative product design and development. The product being tested, a core component of the customer’s flagship product based on the SOA platform is a web-based enterprise simulation platform. The product was built on Google Web Toolkit and had some interactions, like save as, open dialog boxes, etc. The product has been in the market for the last six years and has been used by many prestigious customers across the globe. CASE STUDY End-to-End Test Automation Solution Using Selenium Tool STAG implemented an end-to-end Selenium test automation solution through the CI platform, enabling parallel execution of tests on different browsers and platforms for a global provider of simulation technology and engineering services, to effect a 95% reduction in regression test cycle time. Domain / Category - Engineering Services Technology - Google Web Toolkit, Windows 7, Postgre, Firefox, Chrome, IE8 and 9, Safari, Selenium, and Jenkins
  • 2. OUTCOME AND VALUE ADDITIONS The team developed a robust automation framework that allowed parallel execution with multiple URLs on multiple machines across multiple browsers. This resulted in reduction in manual testing time by 95% (from 100 hours to 4 hours). The team also put in place well-organized test assets that allowed easy maintenance and scalability on demand. Visit: www.stagsoftware.com | E-mail: marketing@stagsoftware.com Bangalore: +91 80 28495574 / 41263009 | Chennai: +91 44 4214 3469 / 2442 0396 2012 © STAG Software Private Limited. All rights reserved. All trademarks are acknowledged. SOLUTION The STAG team initiated a knowledge transfer plan for rapid understanding of the product and the test assets to set up a good baseline for automation. Selenium was chosen as the tool for automation. A 3-member team then prepared an automation architecture, which was keyword data driven, that was not only scalable and expandable but also compatible with the two other core applications of the flagship product. The STAG team improved existing test cases for completeness and adequacy, and also removed those that were redundant. To ensure better organization and maintenance, the team categorized the test cases into different levels. The team also developed automation libraries and scripts using Java coding standards. The scripts developed were able to run with multiple URLs on multiple machines across multiple browsers, all in parallel. The team used Selenium Webdriver with TestNG toolsets to develop and manage the automation scripts and also execute them simultaneously. It also configured Selenium scripts with the Jenkins – Continues Integration (CI) tool for scheduled automation execution and initiating execution on post-build release. Selenium’s inherent limitation of supporting only browsers was resolved using smart workarounds. To handle dynamic UI controls, the team adopted dynamic XPaths. The STAG team automated 5 modules and designed a HTML execution report with a dashboard to highlight the test case execution time stamp. The team also developed a risk and mitigation plan and performed 2 cycles of testing monthly. # Automated test scenarios: 355 # Module level scripts: 5 (each 3500 LOC) # Reusable Generic Library files: 3 (5100 LOC) # Lines of code (LOC) of automation script: 27,000 approx. # Driver scripts: 5 (each 900 LOC) # Automation document files: 2