• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Test automation process
 

Test automation process

on

  • 4,118 views

Automation Testing Process

Automation Testing Process

Statistics

Views

Total Views
4,118
Views on SlideShare
4,118
Embed Views
0

Actions

Likes
2
Downloads
163
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • So, this is what automation really means for software testing.
  • Instructor notes: Automating tests by using only a capture tool such Quick Test Professional to record and play back test cases has its drawbacks. When you use only a capture tool, it is very time consuming and expensive when running complex and powerful tests. These tests are created ad hoc and hence any changes in the functionality or UI can be difficult to track and reproduce, and therefore can be costly to maintain. A better choice for an Automated Testing Team that is just getting started might be to use a Test Automation Framework. This abstract gives a brief description about a modular framework, which helps in designing scripts independent of the application.
  • Instructor notes: Automating tests by using only a capture tool such Quick Test Professional to record and play back test cases has its drawbacks. When you use only a capture tool, it is very time consuming and expensive when running complex and powerful tests. These tests are created ad hoc and hence any changes in the functionality or UI can be difficult to track and reproduce, and therefore can be costly to maintain. A better choice for an Automated Testing Team that is just getting started might be to use a Test Automation Framework. This abstract gives a brief description about a modular framework, which helps in designing scripts independent of the application.

Test automation process Test automation process Presentation Transcript

  • Test Automation Process
  • What Does Test Automation Mean?
    • It really means using tools to:
        • Manage test scheduling
        • Do repetitive and tedious testing tasks
        • Simulate users of the product
        • Be able to accurately reproduce tests
        • Run more tests in a shorter period of time
        • Build regression test suites
        • Build tests to validate requirements / functionality
        • Reduce Test Team headcount
    Test Effort Saving through Automation
    • Test Automation will not:
      • Help a late project
      • Pay off on the first release
      • Completely replace manual testing
      • Eliminate test planning
      • Succeed without respect for basic software engineering practices
    Root Causes: Strategy not well defined Improper ROI calculation Improper test tool selection Improper framework design Insufficient coverage Automation Objectives Improve time to market Efficient resource utilization Improve efficiency Automation Challenges High Initial Investment Skill-set availability ROI duration Automation Strategy Reliability Reusability Repeatability
  • Automation Guidelines for Testers
    • Modularize test scripts for multiple execution combinations.
    • Identify and abstract common functions used across multiple
    • test scripts.
    • Structure scripts with minimal dependencies to ensure scripts
    • can run unattended even when multiple failures occur.
    • Decouple complex business function testing from navigation,
    • limit-testing, and other simple verification and validation
    • activities.
    • Abstract and decouple test data from the test scripts.
    • follow the consistency in Process.
    • Maintain Logs and Documents.
    • Analyze and evaluate the Failures.
  • Benefits of Automation
      • Reduced post delivery defects with extensive test coverage.
      • Generation of consistent, repeatable, accurate logs and test results.
      • Redeploy test resources to focus high value tasks.
      • Consistency of Test Execution
      • Test Automation yields significant reductions in testing time and
      • means a new software release gets to market faster.
      • Detect defects early in the life cycle.
      • Reduced Manual Effort.
      • Reduced cost of testing after initial cost of implementation.
      • Reduce regression efforts in the steady state.
    Improved Quality Reduced Cost Reduced Cycle Time
  • Guidelines to Identify Test Cases to automated
    • Persistent application features:
    • Core functionality Test Cases of the system that are unlikely to change significantly over time.
    • Driving with Value :
    • At a fundamental level, automation value is driven by the coverage it provides contrasted against
    • the time it takes to automate it versus the time saved by the automation.
    • Time and Effort Saving : Which test cases consume huge amount of manual effort, they should be
    • getting automated
    • Consistent and Accurate Test Execution : Where manual testing fail to provide accurate results
    • and consistency in every run.
    Automation Selection Criteria – Picking the “ Right” Candidates The decision of whether or not to automate the test process should be driven by ROI considerations
  • Challenges in Test Automation
  • Automation Framework
  • Introduction to Automation Framework
    • Test Automation Framework is defined as a set of assumptions, concepts, and practices that constitute a work platform or support for automated testing.
    • Automation Framework is a process of Structuring and Organizing Scripts to increase the level of reusability and readability of scripts.
  • Automation Framework Features
  • Types of Test Automation Framework Data Driven Automation Framework Hybrid Automation Framework Modular Automation Framework Keyword Driven Automation Framework Test Automation Framework
  • Architecture of Hybrid Automation Framework Application Driver Sheet Main DataSheet ResultSheet Sub Script IF Flag Y/N No Yes Perform Validation Driver Script IF Flag Y/N Yes No Main Script IF Flag Y/N No Yes Perform Validation Sub Suite Yes No Sub Suite Folder Regression Suite Automation Framework Start
  • Framework - Work Flow Design Siebel App Type SAP Object Class Siebel Button Siebel EditBox Operation Checkpoint Function Operation Type Std.CheckPoint TxtCheckPoint User Defined Function Call
    • Framework design will be independent of functionality and technology
    • Framework need to be upgraded for new technology and Automation Suites to be upgraded for new functionally, but design remains constant
    • Application type, Object Class, Object Name, Operation and Operation Type are the deciding factor of the automation flow of execution
    • Your Data Drives the Flow not the framework
    • Framework will process the inputs and perform the operation in the application, update the result back to the suite,
    • If your data is incorrect then the suite will fail
  • High Level Framework Design
    • Driver Sheet :
    • The Starting Point of Framework and will contain all the information about Regression Suite( like (Path, Suite Name, Module Name and Flag, etc )
    • Driver Script :
    • Will check the Flag status of All the Regression Suite in the Driver sheet
    • Flag = Yes ( Suite need to be executed)
    • Flag = No ( Suite need not to execute)
    • Main Script :
    • It will locate the regression suite and get data from the Main datasheet
    • It will read all the rows in the datasheet, 1 to n rows,
    • before process a row, it will check the Flag Status( Yes/No)
    • Main Datasheet :
    • Each Row will contain technical data, test data and a flag
    • One line of Script will be converted into one row in Datasheet
    • Sub Script and Sub Data Sheet :
    • We can call Reusable Suites inside your Reg. Suites
    • Function Library : Set of Reusable Functions
    • ResultSheet : Customized results for user s better understanding
    Driver Script Driver Sheet Main Script Main Data Sheet Sub Script Sub Data Sheet N N Frame work Automation Suite
    • Driver Sheet
    • Driver Script
    • Main Script
    • Sub Script
    • Function Library
    • Recovery scenarios
    • Main Data Sheet
    • Object Repository
    • Reusable Suite
    • Result Sheet
  • Steps to Create the Automation suite using Framework Step 1: Create a Folder for your Automation Suite (Ex. Support_Request) Step 2: Record the Flow which you need to automate and Save the Flow Script Step 3: Save the Local Object Repository as Shared Obj. Repository in the Folder (Automation Suite Folder) Step 4: Use the “Data Generator” to Convert your Flow into Datasheet and save the same In the automation Folder Step 5: Save a Result Sheet Template
  • Driver Sheet
    • Driver sheet is a Starting point of the framework architecture
    • Driver Sheet is an repository to store all the automation suite informations
    • Path and Flag are mandatory fields
    • We can free to add more fields for user reference. (Like tester name, comments)
    Application ModuleName Path Dependencies Flag CRM Login C:Shell AutomationCRMLogin   Yes CRM Transaction C:Shell AutomationCRMTransaction   Yes CRM Opportunity C:Shell AutomationCRMOpportunity   No SAP SupportRequest C:Shell AutomationSAPSupportRequest   Yes
  • Main Data Sheet
    • Main Data Sheet will have a huge amount of data, they are Flow Data,
    • technical and test data, Test case information's
    • Flow data : Windows Name, Object Name and Object Class etc.,
    • Test Data : Account Id, Customer Id, Login Details and URL etc.,
    • Technical Data : Operation, Operation Type, Parameters, Flag & Comments
    • Test case Info(Optional ) : Test case Id, Test Description etc.,
    • Your Flow Scripts will be converted into Main Data and the Same will be saved in Excel
    • Single Line of Flow Script will be converted into data structure in Main Data Sheet
    • Main Data Sheet is in a table form, so easy for the end user to understand the flow and
    • execute/ maintain the same,
    • Main Data Sheet is like a “keyword view” of your flow script
  • Flow Script
    • Flow Script is the script which you recorded to automate
    • Later Data Generator will covert your flow script into data in a form which the framework can understand.
  • Main Data Sheet
  • Common Components
    • Below are the components of the
    • Automation Framework:
    • Data Tables
    • Environment
    • Libraries
    • Object repository
    • Results
    • Runtime
    • Scripts
    • Recovery scenario
    • Documents
    • Tools
    Tools Data Tables Environment Object Repository Scripts Libraries Recovery scenario
    • Runtime
    • Documents
    Framework Results
  • Data Tables
    • Data table leads to Parameterization
    • Repository for Test Data
    • Designed for User Interaction
    • Data table can be an Excel Document, Ms-Access, Database
    • Framework will Design the Data table Structure
    • and mapping
    Username Password User1 pwd1 User2 pwd2 User3 pwd3    
  • Environment
  • Libraries
    • Time and resource can be saved using reusable functions.
    • Decomposing the scripts into functions, will increate the level of scripts understand ability.
    • Creating functions will reduce the dependencies within the scripts.
    • Scripts maintenance cost will considerably come down.
    • Support future enhancements.
    • .
    Function library Collection of Reusable operations in the form of Predefined Structur e Application Driver Scripts Function Library
  • Object Repositories / Object Maps
    • The Storage band for Application Objects
    • It Provides the interaction between scripts and
    • application
    • The object repository is shared and
    • module-specific.
    • While Execution the Object repository will help
    • the script to Identify the Objects in the application
    • Repository will have list of objects along with
    • configured properties and their values
    • Object Repository will have enough no.of properties
    • to uniquely identify an Object
    • Shared object repository should have the extn :
    • ABC.tsr ( T est S hared R epository)
    • Module-specific repository should have a extn :
    • ABV.mtr ( M odule T est R epository)
    Structure of Object Repository Object Repository Object1 Property Name Property Name Property Value Property Value Object2 Property Name Property Name Property Value Property Value
  • Tools & Scripts, Recovery scenario, Results
    • Tools : This folder contains macro files. Using these files will reduce time for writing scripts, converting files, and shortcut to generate code.
    • Scripts : This folder contains local test scripts; this folder will be used while development and maintenance stage. Once script gets delivered it will upload to centralize location Test Director or Quality Centre.
    • Recovery scenario : This folder can be used as recovery scenario function library file. Also, through QTP particular scenario, converted file is kept under this folder and associates the test script.
    • Results : The current execution status will be updated after every run. All the Script failures, test status, recovery actions will be logged in Result.
    QTP Settings Library Files Recovery Scenarios Object Configuration Environment Open Script Test Script Run Script Test Script Script Failure Test Script Resume Execution Execution Completed Update Result CLOSE QTP Execution -End