Winrunner Usage - Best Practices S.A.Christopher.

Slides:



Advertisements
Similar presentations
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 15 Introduction to Rails.
Advertisements

DETAILED DESIGN, IMPLEMENTATIONA AND TESTING Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Key-word Driven Automation Framework Shiva Kumar Soumya Dalvi May 25, 2007.
Test Automation An Approach to Automated Software Regression Testing Presented by Adnet, Inc Feb 2015.
Programming Types of Testing.
Browsers and Servers CGI Processing Model ( Common Gateway Interface ) © Norman White, 2013.
J4www/jea Week 3 Version Slide edits: nas1 Format of lecture: Assignment context: CRUD - “update details” JSP models.
A Guide to SQL, Seventh Edition. Objectives Embed SQL commands in PL/SQL programs Retrieve single rows using embedded SQL Update a table using embedded.
Understanding of Automation Framework A Storehouse of Vast Knowledge on Software Testing and Quality Assurance.
Pan-European infrastructure for Ocean & Marine Data management An EU Integrated research Infrastructure Initiative (I3) MIKADO : Java tool for XML Creation.
© 2006, Cognizant Technology Solutions. All Rights Reserved. The information contained herein is subject to change without notice. Automation – How to.
Static VS Dynamic websites. 1-What are the advantages and disadvantages? 2- Which one should you choose and why?
MSF Testing Introduction Functional Testing Performance Testing.
Page 1 ISMT E-120 Introduction to Microsoft Access & Relational Databases The Influence of Software and Hardware Technologies on Business Productivity.
Microsoft Access Ervin Ha.
 ETL: Extract Transformation and Load  Term is used to describe data migration or data conversion process  ETL may be part of the business process repeated.
Page 1 ISMT E-120 Desktop Applications for Managers Introduction to Microsoft Access.
Class 6 Data and Business MIS 2000 Updated: September 2012.
Microsoft Visual Basic 2012 CHAPTER ONE Introduction to Visual Basic 2012 Programming.
TESTING STRATEGY Requires a focus because there are many possible test areas and different types of testing available for each one of those areas. Because.
Server-side Scripting Powering the webs favourite services.
4-1 INTERNET DATABASE CONNECTOR Colorado Technical University IT420 Tim Peterson.
® IBM Software Group © 2009 IBM Corporation Rational Publishing Engine RQM Multi Level Report Tutorial David Rennie, IBM Rational Services A/NZ
What is QTP ► QTP stands QuickTest Professional ► It is an automated testing tool provided by HP/Mercury Interactive ► QTP integrates with other Mercury.
Obsydian OLE Automation Ranjit Sahota Chief Architect Obsydian Development Ranjit Sahota Chief Architect Obsydian Development.
Designing For Testability. Incorporate design features that facilitate testing Include features to: –Support test automation at all levels (unit, integration,
1 PHP and MySQL. 2 Topics  Querying Data with PHP  User-Driven Querying  Writing Data with PHP and MySQL PHP and MySQL.
Automatic Software Testing Tool for Computer Networks ADD Presentation Dudi Patimer Adi Shachar Yaniv Cohen
Universiti Utara Malaysia Chapter 3 Introduction to ASP.NET 3.5.
SOFTWARE DESIGN (SWD) Instructor: Dr. Hany H. Ammar
_______________________________________________________________________________________________________________ PHP Bible, 2 nd Edition1  Wiley and the.
AUTOMATION OF WEB-FORM CREATION - KINNERA ANGADI – MS FINAL DEFENSE GUIDANCE BY – DR. DANIEL ANDRESEN.
Exploring an Open Source Automation Framework Implementation.
Introduction of Geoprocessing Topic 7a 4/10/2007.
Putting it all together Dynamic Data Base Access Norman White Stern School of Business.
Extending HTML CPSC 120 Principles of Computer Science April 9, 2012.
FlexElink Winter presentation 26 February 2002 Flexible linking (and formatting) management software Hector Sanchez Universitat Jaume I Ing. Informatica.
Ganga A quick tutorial Asterios Katsifodimos Trainer, University of Cyprus Nicosia, Feb 16, 2009.
I Power Higher Computing Software Development Development Languages and Environments.
What is WinRunner ► WinRunner is Mercury’s legacy automated testing tool ► It is similar to QTP in functionality ► WinRunner integrates with other Mercury.
1 Chapter 4: Creating Simple Queries 4.1 Introduction to the Query Task 4.2 Selecting Columns and Filtering Rows 4.3 Creating New Columns with an Expression.
Database Management Supplement 1. 2 I. The Hierarchy of Data Database File (Entity, Table) Record (info for a specific entity, Row) Field (Attribute,
Introduction of Geoprocessing Lecture 9. Geoprocessing  Geoprocessing is any GIS operation used to manipulate data. A typical geoprocessing operation.
LANDESK SOFTWARE CONFIDENTIAL Tips and Tricks with Filters Jenny Lardh.
Introduction Selenium IDE is a Firefox extension that allows you to record, edit, and debug tests for HTML Easy record and playback Intelligent field selection.
8 Chapter Eight Server-side Scripts. 8 Chapter Objectives Create dynamic Web pages that retrieve and display database data using Active Server Pages Process.
IT System Administration Lesson 3 Dr Jeffrey A Robinson.
Ranking of Database Query Results Nitesh Maan, Arujn Saraswat, Nishant Kapoor.
CSC 2720 Building Web Applications Basic Frameworks for Building Dynamic Web Sites / Web Applications.
Introduction of Geoprocessing Lecture 9 3/24/2008.
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
 Project Team: Suzana Vaserman David Fleish Moran Zafir Tzvika Stein  Academic adviser: Dr. Mayer Goldberg  Technical adviser: Mr. Guy Wiener.
Visual Basic.NET Comprehensive Concepts and Techniques Chapter 1 An Introduction to Visual Basic.NET and Program Design.
Some of the utilities associated with the development of programs. These program development tools allow users to write and construct programs that the.
Chapter Goals Describe the application development process and the role of methodologies, models, and tools Compare and contrast programming language generations.
Web Database Programming Using PHP
A Guide to SQL, Seventh Edition
Recent trends in estimation methodologies
Key Ideas from day 1 slides
Introduction to Visual Basic 2008 Programming
Test Automation CS 4501 / 6501 Software Testing
Understanding of Automation Framework
Designing For Testability
Web Database Programming Using PHP
Course Name: QTP Trainer: Laxmi Duration: 25 Hrs Session: Daily 1 Hr.
Lecture 1: Multi-tier Architecture Overview
Fast-Track UiPath Developer Module 3: Workflow Organization
Framework Anil
Presentation transcript:

Winrunner Usage - Best Practices S.A.Christopher

Origin of the Document VRZIVS team, a part of IVS is using a framework that makes the Automation Testing for Web applications easier using Winrunner. This presentation briefly explains the usage, Pros & cons of the architecture

Contents Need and Criteria for Automation Brief Introduction of the Architecture Software Requirements Components of the Architecture and their responsibility Table Structure Details Comparison of the architecture with the General Scripting adopted Pros & Cons of the Architecture

Test Automation gives improvement in test cycles. Automation is the only long- term solution for reduced costs in software testing and better quality Products. But these aims are achieved only when certain best practices are followed before and while developing the automation suite Howard Fear has aptly stated, "Take care with test automation. When done well, it can bring many benefits. When not, it can be a very expensive exercise, resulting in frustration”. Need For Automation

Which Test Cases to Automate?  Tests that need to be run for every build of the application (sanity check, regression test)  Tests that use multiple data values for the same actions (data–driven tests)  Tests that require detailed information from application internals (e.g., SQL, GUI attributes)  Stress/load testing  More repetitive execution? Better candidate for automation

Which Test Cases Should Not be Automated?  One-time testing  Usability testing “How easy is the application to use?”  “ASAP” testing “We need to test NOW!”  Ad hoc/random testing based on intuition and knowledge of application  Tests without predictable results  Improvisation required? Poor candidate for automation

Brief Introduction about the methodology adopted This is purely a Data Driven Type of testing. All the test data required to perform the automation testing are entered in the Microsoft access tables. The Winrunner scripts establishes a database connection, retrieve the test data and perform the automation run. The only modification to be done is the changes in the GUI Map File (due to any change in the GUI) and the corresponding entries in the tables.

Software Requirements Automation Tool Used : WinRunner 7.5 ( No Add-ins required) Data Base Used: Microsoft Access

Automation Architecture Winrunner Configuration Files Winrunner Driver Scripts Microsoft Access Database Application Under Test Initialize and Run Establish DB connection and Query Return the result for the Query Run Test

Components of the Architecture Configuration Files (.ini files and Winrunner scripts) Microsoft Access Tables WinRunner Driver Scripts Application under Test ( Web application )

1. Configuration Files This is the starting point of the whole automation process. The different tasks these Configuration files perform include: Initialization of Variables. Creation of reusable User Defined functions. Loading the User Defined functions to Win Runner’s Function Generator. Passing the control to the Driver Scripts after the initiation process.

……..Configuration Files The Winrunner scripts used for initializing should be called from the :\ProgramFiles\MercuryInteractive\WinRunner\dat\tslinit” file. As this is the first file called whenever the Winrunner tool is invoked, calling the configuration/initialization scripts in this file will initialize the parameters whenever the tool is started.  The “wrun.ini” file should be placed under “C:\Windows”. This should contain the environment which should be considered, the DSN name and the location of the Driver scripts.

2. Microsoft Access Tables The three tables used in the architecture are : APPLOGIN WIN_SEQ SCRIPTDATA

a. APPLOGIN – Table Structure

APPLOGIN – Contents The computer name in which the script should run. The Script name The sequence in which each scripts should be executed. Flag to turn ON/OFF any of the scripts.

b. WIN_SEQ – Table Structure

WIN_SEQ - Contents The Script Name Window names that each Script should invoke. The sequence in which the windows would be accessed. Flag to turn ON/OFF any of the sequence.

c. SCRIPTDATA - Table

SCRIPTDATA - Contents The Script Name and the Window name The GUI Window name and the GUI Object name that is in the GUI Map file. The Test Data to be supplied (if any) The Actions to be performed over each Html Object. The sequence in which each operation should be performed. Flag to turn ON/OFF the steps. Note : This table is the backbone of the whole architecture. All the parameters required for the execution of Winrunner scripts should be passed from this table.

C. Winrunner Driver Script These is the script that drivers the whole architecture. Following are the list of tasks these scripts perform. Establishing Database Connection. Executes the Database queries and retrieves the records from the tables. Performs required operations on the objects of the application depending upon the records fetched from the database. Checks for the desired outputs in each step. Generates the Final Report based upon the results.

Sub sections of the Driver script genericAction - To perform link clicks, List Select and others…. setData - For passing any value as the input…. getData - To retrieve the state of any Html Object….. verifyData - To verify the Expected (vs.) Actual Results…..

……Driver Scripts These sub-sections will in turn call the Winrunner functions. Appropriate arguments are passed to the relevant Winrunner functions from the database tables.

A snapshot of the Driver Script Switch ( Arg1 ) case "genericAction": Switch (Type) { case "Link Click": rc = web_link_click(Data); if (rc != 0) msg = “Data Execution Success..” else msg = “Data could not be executed”

In a Nut Shell ( About Driver Scripts) Get the Machine and Script Names Retrieve the Window names in Sequence Get all GUI Objects in the Window under Consideration Retrieve the Test Data and the Action to be performed on the GUI Objects (in sequence) Perform the action, check the Actual Result with the Expected and generate Report

Comparison of the architecture with General Scripting Usage of Architecture Usage of General Scripting Less number of scripts usedMore number of scripts used Reusability of code is maximumReusability of Code is minimum Frequency of Modification of script is minimum Frequency of modification of script is high Same set of scripts can be used for testing any web application. Too many changes required to use the same set scripts to test other applications. Debugging during test run is easyDebugging is complex. Selective scripts can be run in different Machines. This scenario is difficult to achieve.

Advantages Minimum amount of scripting is required. Changes need not be made to the scripts in the intermediate process Scripts can be run across different machines. Debugging a single scenario is simple as the rows associated with the other scenario’s can be turned OFF. Modifications needs to be made only for selected columns in the table whenever there is a change in the GUI of the application. Separate GUI Map Files can be used for each module.

Disadvantages The Bulk size of the table. Much involvement of Microsoft access tables. Creation of Dynamic Inputs is difficult. Run-time change in the GUI Map file is not possible.

Thank You