Stories from the Trenches Seven Productivity Improvements for Test Automation Frameworks Presented By Chris Petrov Leverage Point Corporation SCQAA Inland.
Post on 14-Jan-2016
212 Views
Preview:
Transcript
Stories from the Trenches
Seven Productivity Improvements for Test Automation Frameworks
Presented By
Chris PetrovLeverage Point Corporation
SCQAA Inland Empire Chapter May 8, 2008
Leverage Point Corporation417B W. Foothill Blvd. #164Glendora, CA 91741626-857-9446www.levpoint.com
Leverage Point Corporation
• Founded in 2006• Specialize In Software Quality Assurance
Consulting and Staffing• Outsourced Testing• Test Automation Framework Development• Testing Project Support
Leverage Point Corporation – Copyright 2007 www.levpoint.com
"We will provide the best people, both technically and in customer focus, to deliver specialized high-value and indispensable IT services. Each of our employees will maintain a singular focus on using all of their experience, skill and creativity to ensure the quality, performance and reliability of our customer’s critical business applications.”
Productivity Improvements
• Faster Learning • Faster Test Creation• Reduced Maintenance • Faster Analysis• Flow
Leverage Point Corporation – Copyright 2007 www.levpoint.com
Productivity Improvements• Give the Users a Familiar Test Creation
Environment• Supply List of Available Test Actions
• Lightweight Interface• Intuitive vs. Usable
• Static Test Case Validation• Build Compartments• Improve user experience
Leverage Point Corporation – Copyright 2007 www.levpoint.com
Project Profile
• Clients Background • 2 Independent Organizations• Similar Applications• Compressed Test Schedules • Limited Application Availability• Different Framework Users
– Testers with no automation experience and no application experience in one
– Business analysts with application experience, but no testing experience in
the other
Leverage Point Corporation – Copyright 2007 www.levpoint.com
Project GoalsCreate a Keyword Driven Framework • Fast and Easy Test Case Creation• Require Minimal Training for Users with no
Automation Experience• Tests Cases Creation Before the Application is
Available• Frequent Incremental Deliverables
Leverage Point Corporation – Copyright 2007 www.levpoint.com
Automation Challenges• Complexity• Maintenance• Extensibility• Robustness• Learning Curve• ROI
Leverage Point Corporation – Copyright 2007 www.levpoint.com
Best Framework• What are your goals?• What are your products?• What are your users?• What is the culture?• What lies in the Future?• Trade offs
Leverage Point Corporation – Copyright 2007 www.levpoint.com
Framework Design• Repository• Engine• Documentation• Front End
Leverage Point Corporation – Copyright 2007 www.levpoint.com
Keywords Selection• Keyword Selection Options– Many (200+) Keywords Based on Business
Scenarios– Few (20-) Low Level Keywords– Combined Approach• Low Level Keywords• High Level Action available as executable scripts• Script Areas (Libraries)
Leverage Point Corporation – Copyright 2007 www.levpoint.com
Keywords Selection• Selecting Limited Amounts of Actions Available to the User
– 11 Frequently Used Actions• Enter• Click• Select• Run Script• Validate
• Hide Control Knowledge– It looks like a button, but it is a link – Click vs. Click Button
• Action Overloading -Using the same action for different controls• Click Link, Button, Checkbox• Select Radio Button, Dropdown, Checkbox
• Hiding Complex Flows Behind Scripts– Identifying the common business processes– Getting the best of both worlds
Leverage Point Corporation – Copyright 2007 www.levpoint.com
Keywords Selection
Leverage Point Corporation – Copyright 2007 www.levpoint.com
GUI Map Organization• Create Maintainable and User Friendly GUI Map• Map Interface for Application that is not yet
Available• Make the GUI Map customizable for the intended
product• Building Object Hierarchy from Usability Point of
View– “Menu -> Screen -> Frame -> Field” Approach– “Menu -> Screen -> Field” Approach
• GUI Map that allows user friendly naming convention• Removes the confusion for the tester
Leverage Point Corporation – Copyright 2007 www.levpoint.com
GUI Map Organization
Leverage Point Corporation – Copyright 2007 www.levpoint.com
GUI Map Organization• Object Naming Conventions
– Name the object exactly as it is on the screen– Screens – how do we name the screens to be recognizable even by
users that don’t know the application– Objects with the Same Label – how do we differentiate
• Change the name of both objects, to avoid misidentification• Add the Frame name after the label• Add the Action name after the label
– Objects without label• Use the Help file descriptions• Use Purpose + Default Values
– Grids• Column Name: Grid Name
Leverage Point Corporation – Copyright 2007 www.levpoint.com
Give the Users a Familiar Test Creation Environment
• No Testers interaction with the Test Tool• Easy to use• Familiar To your users• Domain Experts could write automated test cases• Fast Test Creation• Minimal Effort• Copy and Paste
Leverage Point Corporation – Copyright 2007 www.levpoint.com
Supply List of Available Test Actions• Problems when typing names
– Spelling (Disbursments - Disbursements)– Misidentifying Controls ( Address 1 - Address)– Using Wrong Duplicate Controls ( Zip Address - Zip Information)– Abbreviations (Addr – Address)– Ambiguous Entries – (Name - Last Name or First Name)– Partial Entries – (Last – Last Name)– Single/Plural– Remembering the control Name
• Dropdowns– Based on Menu, have only the Screens available for this menu as a choice– Based on Screen, have only the Fields children of that menu available in the
dropdown– Update the dropdown values dynamically– Demo or Movie
Leverage Point Corporation – Copyright 2007 www.levpoint.com
Framework Front End Demo
Leverage Point Corporation – Copyright 2007 www.levpoint.com
Lightweight Interface• No wizards• Playing Music• Performance Measurements
– Initial Prototype with 1000 screens – 45 sec– Redesigned Prototype with 1000 screens – 2 sec
• Identify Time Required for Specific Actions– No delays between actions
• Screen Frame Field or Screen Field Measurements
Leverage Point Corporation – Copyright 2007 www.levpoint.com
Intuitive vs. Usable• Difference• Frequency of Use• Design that Reduces Test Case Creation Time
– Screens by Tab Order – because the application already is measured for usability
– Fields by Alphabetical order• Tab Order Changes• Duplicate Controls are next to each other• Easier to find the control that you barely remember
– Keywords by frequency used
Leverage Point Corporation – Copyright 2007 www.levpoint.com
Dropdown Usability Design• Performance Measurements
– Initial Prototype with 1000 screens – 45 sec– Redesigned Prototype with 1000 screens – 2 sec
• Identify Time Required for Specific Actions– No delays between actions
• Screen Frame Field or Screen Field Measurements• Design that Reduces Test Case Creation Time
– Screens by Tab Order – because the application already is measured for usability
– Fields by Alphabetical order• Tab Order Changes• Duplicate Controls are next to each other• Easier to find the control that you barely remember
– Keywords by frequency usedLeverage Point Corporation – Copyright 2007 www.levpoint.com
Static Test Case Validation • Static Test Case Validation• Correct many errors before the test case is executed
– If possible fix the problems before, not during the test• Identifying Frequent Errors
– During the Initial Design– Root Cause Analysis of Errors in Existing Tests
• Adding Validation for Frequent Errors• Visual Indication of the Defect with Correction Advice• Formatting the report with the corresponding Font styles and colors• Error Report with identification of the file, sheet and the row the
error occurs• Single feature that reduced the Automation Debug Time by 40%
Leverage Point Corporation – Copyright 2007 www.levpoint.com
Static Test Case Validation
Leverage Point Corporation – Copyright 2007 www.levpoint.com
Compartments • Hide Complex Flows• Isolate Volatile Areas• Isolate Frequently Used Actions• Specify the Essential• Keep default values
Leverage Point Corporation – Copyright 2007 www.levpoint.com
Improve user experience • Continuously improve productivity– Watch the users– Improve the experience– Actively Eliminate problems– Flow
• Build the needed tools
Leverage Point Corporation – Copyright 2007 www.levpoint.com
Productivity Tools • GUI Map Builder– Build Complete GUI Map with Single Click
• “Where Used” Maintenance Tool– Update Test Cases when the GUI Changes
• Traceability Matrix with Integrated Progress Reports and Trends– One-Click Reporting
• UAT Builder– Build “Bare Bones” Test Cases from a List of
RequirementsLeverage Point Corporation – Copyright 2007 www.levpoint.com
Productivity Tools
Leverage Point Corporation – Copyright 2007 www.levpoint.com
Productivity Tools
Leverage Point Corporation – Copyright 2007 www.levpoint.com
Framework Updates• Designed for Unobtrusive Updates• Server Location• Single Update File• Notification that New Version is Available
Leverage Point Corporation – Copyright 2007 www.levpoint.com
Data Driven Add-in • Benefits and Limitations of the Data Driven Tests– Fast Design– Great for Discreet logic when equivalence partitioning is
used– Require Advanced User to write and parameterize them
• Getting the Best of Both Worlds– Build the test using the keywords– Parameterize them on the fly with the build in variable
functionality
• Running Tests from the Design Sheet– Demo or Movie
Leverage Point Corporation – Copyright 2007 www.levpoint.com
Data Driven Add-in
Leverage Point Corporation – Copyright 2007 www.levpoint.com
GUI Unit Test Add-in • Testing GUI Screens from the Specification• Learning Curve• Integration with the Keyword Driven
Approach– Changing the Paradigm
Leverage Point Corporation – Copyright 2007 www.levpoint.com
GUI Unit Test Add-in
Leverage Point Corporation – Copyright 2007 www.levpoint.com
DB Query Engine Add-in • Challenges
– Data Control of the Test Artifacts– Testing Converted Data– No Application Database Refresh Available– Ever Changing Data– Complex Database Structure– Different logic based on record data
• User Friendly Implementation– Hide the Complex SQL Statements behind user friendly names– Change the where clause on the fly– Mark the record as used, so it is not locked by other test case
Leverage Point Corporation – Copyright 2007 www.levpoint.com
Accomplishments• Established Sustainable, Scalable Automation
Solutions• Reduced Test Creation Time by 50%• Reduced the Test Automation Debug Time by
40%• Learning Curve of 2 to 8 Hours
Leverage Point Corporation – Copyright 2007 www.levpoint.com
top related