SlideShare a Scribd company logo
1 of 2
Download to read offline
PROBLEM STATEMENT
The product underwent a major change with regard to its GUI; additionally, the QA team had to test multiple branches of the
product. As a result of the GUI-related change, the existing automation scripts no longer worked. In this scenario, the customer
wanted a test automation solution that could adapt their feature needs and also speed up the QA regression process.
The entire application was developed using Ajax, a programming technology that was not being completely recognized, in
terms of the tree view and list view objects, by the SilkTest automation tool. The customer was looking for a framework that
would provide the flexibility to support:
• Addition of new test cases with different data sets.
• Reusing of the general low-level library for adding business functions for all new features and also for the changed GUI.
• Comparison of MS Excel spreadsheets containing application data in MBs (manual testing of such test cases takes a lot of
time).
CUSTOMER AND PRODUCT BACKGROUND
The customer is an independent data integration leader providing data integration software and services to organizations,
thereby empowering them to access, integrate, and trust all their information assets, and giving them a competitive advantage
in terms of growing revenues, improving profitability, and increasing customer loyalty.
The product is a web-based metadata management tool to browse and analyze metadata from disparate metadata
repositories. The tool helps in understanding and managing information, processes, and the inter-relationship usage. The
product has been developed with Isomorphic technology, a SmartClient product that helps developers get results that are
more logically structured and simplified and provides a maintainable approach to web front-end development.
CASE STUDY
Reusable Automation Framework with Excellent
Support for Isomorphic Web Controls
STAG develops a robust, user-friendly automation
framework that is reusable across different projects
and platforms, and handles isomorphic web controls
for consistent and successful execution of an
end-to-end automation suite, to run on web-based
metadata management software for a global leader
in data integration software and services.
Domain/Category -
Enterprise Data Integration
Technology - Web isomorphic controls, Oracle
Automation Tools - SilkTest, PERL, Java,
Exam-XML, VBScript
SOLUTION
The STAG team interacted with the customer’s development team
to understand the application setup, product features, customer
problems, and existing test assets. The team found that
approximately 15% of test cases identified for automation were
redundant, and that no test data was available for most of the test
cases.7
The STAG team first created a framework that was compatible with
different browsers (IE6 and IE7) and operating systems (Windows 2003 and XP), and developed low-level libraries to interact with
all the identified objects using a mix of Java scripts and x-Path concepts to find most of the workarounds.
The team then created business functions that could be reused not just in individual modules but also across modules. These
functions were based on the concept of x-Path to ensure function portability across multiple browsers.
The following are the highlights of the workarounds developed by the STAG team and their implementations:
• A customized method in Java Script to resolve the issue of tree view objects not being recognized by the SilkTest tool
• A function to enable searchable list view objects
• A function to refresh the entire page and clear off a dialog box from the screen once the box is closed
• A utility function to convert the spreadsheet file (MS Excel) to the .csv file format and then shorten it, enabling the data
coming out in consecutive runs to be in the same order and allowing comparison of the contents of the MS Excel sheets
• A utility for node-by-node comparison of XML files
• A functionality for cell-by-cell comparison of large MS Excel files
The team strictly followed all the specified guidelines and coding conventions in developing the scripting language to write the
business functions. It created test data for each test case and added it to the SQL server.
For the identified browsers and OS, the team tested the functionality first at the unit level and then at the suite level. For i18N
support, it converted the localization file from Java Script format to Properties file format to ensure easy format recognition by the
tool. Finally, the team tested the script against both Japanese and English locales and automated two versions of the product.
Visit: www.stagsoftware.com | E-mail: marketing@stagsoftware.com
Bangalore: +91 80 28495574 / 41263009 | Chennai: +91 44 4214 3469 / 2442 0396
2013 © STAG Software Private Limited. All rights reserved. All trademarks are acknowledged.
# Test cases modified: 385
# Test cases automated: 266
OUTCOME AND VALUE ADDITIONS
The STAG team made quite a few significant contributions, including:
• Developing a robust and consistent solution to interact with the different types of isomorphic objects
• Designing business functions so they could be reused to create new test cases
• Maintaining and extending scripts in a consistent format to enable new team members to learn, understand, and implement
them quickly
• Implementing extensive HTML Reporting for the entire suite to run results verification
The code coverage was as per the Acceptance criteria, and the solution was found to be very effective for regression cycles. The
result was a significant reduction in execution time, from 4 weeks to 32 hours, which gave developers time to conduct a quick
check on the regression issues.
• Fixing of existing automation scripts and adding verification calls for all the existing test scripts/test cases.
• Automating the new features of the product release and adding i18N/Localization support for all the test cases.
To resolve all these technical issues, the customer sought the assistance of an automation expert.

More Related Content

More from STAG Software Private Limited

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)STAG Software Private Limited
 
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)STAG Software Private Limited
 
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 ToolSTAG Software Private Limited
 
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 ...STAG Software Private Limited
 
Think better using “Descriptive-Prescriptive” Approach
Think better using “Descriptive-Prescriptive” ApproachThink better using “Descriptive-Prescriptive” Approach
Think better using “Descriptive-Prescriptive” ApproachSTAG Software Private Limited
 
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"STAG Software Private Limited
 
Enhanced Delivery Confidence Improved Product Maturity
Enhanced Delivery Confidence Improved Product MaturityEnhanced Delivery Confidence Improved Product Maturity
Enhanced Delivery Confidence Improved Product MaturitySTAG Software Private Limited
 
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 ProductSTAG Software Private Limited
 

More from STAG Software Private Limited (20)

Weighed down by automation?
Weighed down by automation?Weighed down by automation?
Weighed down by automation?
 
Covid19 and Clean Code Part 2 - Process & Criteria
Covid19 and Clean Code Part 2 - Process & CriteriaCovid19 and Clean Code Part 2 - Process & Criteria
Covid19 and Clean Code Part 2 - Process & Criteria
 
Seven Thinking Tools to Test Rapidly
Seven Thinking Tools to Test RapidlySeven Thinking Tools to Test Rapidly
Seven Thinking Tools to Test Rapidly
 
How to test less and accomplish more
How to test less and accomplish moreHow to test less and accomplish more
How to test less and accomplish more
 
Is regression hindering your progression?
Is regression hindering your progression?Is regression hindering your progression?
Is regression hindering your progression?
 
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
 
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
 
Reflect and Change
Reflect and ChangeReflect and Change
Reflect and Change
 
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"
 
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
 

Recently uploaded

Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 

Recently uploaded (20)

Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 

Reusable Automation Framework with Excellent Support for Isomorphic Web Controls

  • 1. PROBLEM STATEMENT The product underwent a major change with regard to its GUI; additionally, the QA team had to test multiple branches of the product. As a result of the GUI-related change, the existing automation scripts no longer worked. In this scenario, the customer wanted a test automation solution that could adapt their feature needs and also speed up the QA regression process. The entire application was developed using Ajax, a programming technology that was not being completely recognized, in terms of the tree view and list view objects, by the SilkTest automation tool. The customer was looking for a framework that would provide the flexibility to support: • Addition of new test cases with different data sets. • Reusing of the general low-level library for adding business functions for all new features and also for the changed GUI. • Comparison of MS Excel spreadsheets containing application data in MBs (manual testing of such test cases takes a lot of time). CUSTOMER AND PRODUCT BACKGROUND The customer is an independent data integration leader providing data integration software and services to organizations, thereby empowering them to access, integrate, and trust all their information assets, and giving them a competitive advantage in terms of growing revenues, improving profitability, and increasing customer loyalty. The product is a web-based metadata management tool to browse and analyze metadata from disparate metadata repositories. The tool helps in understanding and managing information, processes, and the inter-relationship usage. The product has been developed with Isomorphic technology, a SmartClient product that helps developers get results that are more logically structured and simplified and provides a maintainable approach to web front-end development. CASE STUDY Reusable Automation Framework with Excellent Support for Isomorphic Web Controls STAG develops a robust, user-friendly automation framework that is reusable across different projects and platforms, and handles isomorphic web controls for consistent and successful execution of an end-to-end automation suite, to run on web-based metadata management software for a global leader in data integration software and services. Domain/Category - Enterprise Data Integration Technology - Web isomorphic controls, Oracle Automation Tools - SilkTest, PERL, Java, Exam-XML, VBScript
  • 2. SOLUTION The STAG team interacted with the customer’s development team to understand the application setup, product features, customer problems, and existing test assets. The team found that approximately 15% of test cases identified for automation were redundant, and that no test data was available for most of the test cases.7 The STAG team first created a framework that was compatible with different browsers (IE6 and IE7) and operating systems (Windows 2003 and XP), and developed low-level libraries to interact with all the identified objects using a mix of Java scripts and x-Path concepts to find most of the workarounds. The team then created business functions that could be reused not just in individual modules but also across modules. These functions were based on the concept of x-Path to ensure function portability across multiple browsers. The following are the highlights of the workarounds developed by the STAG team and their implementations: • A customized method in Java Script to resolve the issue of tree view objects not being recognized by the SilkTest tool • A function to enable searchable list view objects • A function to refresh the entire page and clear off a dialog box from the screen once the box is closed • A utility function to convert the spreadsheet file (MS Excel) to the .csv file format and then shorten it, enabling the data coming out in consecutive runs to be in the same order and allowing comparison of the contents of the MS Excel sheets • A utility for node-by-node comparison of XML files • A functionality for cell-by-cell comparison of large MS Excel files The team strictly followed all the specified guidelines and coding conventions in developing the scripting language to write the business functions. It created test data for each test case and added it to the SQL server. For the identified browsers and OS, the team tested the functionality first at the unit level and then at the suite level. For i18N support, it converted the localization file from Java Script format to Properties file format to ensure easy format recognition by the tool. Finally, the team tested the script against both Japanese and English locales and automated two versions of the product. Visit: www.stagsoftware.com | E-mail: marketing@stagsoftware.com Bangalore: +91 80 28495574 / 41263009 | Chennai: +91 44 4214 3469 / 2442 0396 2013 © STAG Software Private Limited. All rights reserved. All trademarks are acknowledged. # Test cases modified: 385 # Test cases automated: 266 OUTCOME AND VALUE ADDITIONS The STAG team made quite a few significant contributions, including: • Developing a robust and consistent solution to interact with the different types of isomorphic objects • Designing business functions so they could be reused to create new test cases • Maintaining and extending scripts in a consistent format to enable new team members to learn, understand, and implement them quickly • Implementing extensive HTML Reporting for the entire suite to run results verification The code coverage was as per the Acceptance criteria, and the solution was found to be very effective for regression cycles. The result was a significant reduction in execution time, from 4 weeks to 32 hours, which gave developers time to conduct a quick check on the regression issues. • Fixing of existing automation scripts and adding verification calls for all the existing test scripts/test cases. • Automating the new features of the product release and adding i18N/Localization support for all the test cases. To resolve all these technical issues, the customer sought the assistance of an automation expert.