VUGen


LOAD RUNNER
Introduction
LOAD RUNNER: It is a performance Testing Tool.

Performance:
ü  Performance testing allows tester to judge how well an application or website performance under specific  circumstances .

ü  Performance Testing is the process by which software is tested and tuned with the intent of realizing the required performance.

ü  The performance testing part of performance engineering encompasses what's commonly referred to as load, spike, and stress testing, as well as validating system performance.

ü  Performance can be classified into three main categories:
a.       Speed
b.       Scalability
c.        Stability
Speed Does the application respond quickly enough for the intended users?
Scalability — Will the application handle the expected user load and beyond?
Stability — Is the application stable under expected and unexpected user loads
?
Why should you automate performance testing?
a.       Speed
b.       Scalability
c.        Stability
Will the application handle the number of transactions required by the business?


LoadRunner components
LoadRunner contains the following components:
a.       Virtual User Generator
b.       Controller
c.        Load Generators
d.       Analysis
e.        Agent process
f.       Launcher

Virtual User Generator
Virtual User Generator is also known as a Vuser script or VuseGen
Captures end-user business processes and creates an automated performance testing script.

Controller
The Controller organizes drives, manages, and monitors the load test.
Design the scenario and to execute the multiple users.

Load Generators
The Load Generators create the load by running Vusers.
Generates the lode against the application.

Analysis
Analysis helps you view, dissect, and compare the performance results.

Agent process 
Establish the connection between controller and load generator. Agent process is used to connect the load generator and controller.

Launcher
The Launcher provides a single point of access for all of the LoadRunner components

Performance Testing Life Cycle
What is performance testing or what does it do?

Def : Performance testing  allows tester to judge how  well an application or S/w  perform under specific Circumstances.
The performance testing life cycle contains following modules
a.       POC : Proof of concepts
b.      Test plane
c.       NFR  :Non Functional Requirements
d.      Work Load Model / Work Loader/Load Model
e.       VuGen(Recording & Enhancement, Test Data Peroration)
f.       Controller (Design the scenario & Execute the scenario, Analyzing, Reporting,          Recommendations)
POC contains
ü  Business (What the actual process of the Agent business)
ü  Arictu      (How the structure of the project looks)
ü  Protocol Bundle (SAP, Web 2.0,DataBase ,JSP..ect)
ü  User Requirements (Requirements of the user and the Specifications of the Agent)
ü  Navigation Part of the Application.

Test plane
ü   It’s the Road map to reach the ‘NFR’
ü  The Test Plane Module contains :
a)      Overview
b)       Objective
c)       Scope
d)       Item out of scope
e)       Testing Environment
f)        Entry Criteria
g)       Exit Criteria
h)       Approach
i)        CBT’s   critical business transaction
j)        Deliverables
k)       Infrastructure
l)        Monitoring Tools
m)     Number of Cycles per Hours
n)       Risk
o)       Schedule
p)       Test Data
q)       Type of testing







Overview
The overview includes a summary of information about the actual content.
The Executive Summary area that's included in formal business plans, is a high-level overview of the business plan document that includes a summary of information about
Objective
An end that can be reasonably achieved with in an expected timeframe and with available resources.
In general, an objective is broader in scope than a goal, and may consist of several individual goals. Objectives are a basic tools that underlying all planning and strategic activities.
Whether the application meets the non functional requirements or not.
Scope 


Item out of scope

Testing Environment
  • Development
  • QA == Functional testing of the system
  • System Integration Testing == Tests the system from end to end
  • User Acceptance Testing = Allows the user to validate the functionality over time
  • Production == Production
  • Production Parallel == A parallel of production to replicate production issues
  • CCE = Client Certification Environment


Entry Criteria

In order to enter in to system testing stage it is very much necessary that for all customization work exit criteria for module testing stage is passed and preparation for system testing is completed. The preparation includes writing and review of 'end to end' and 'scenario based' functional test cases and non functional test cases. So following can be considered as entry criteria for the system testing stage.

Exit Criteria

After completion of system testing all functional as well as non functional requirements must be tested and important defects should not be in open state. System testing stage is also appropriate for the final security review of the application as is customized application is in almost in (except some possible issues discovered during regression testing). So following may be considered as exit criteria for the system testing stage.


Approach

CBT’s   Critical Business Transaction

Deliverables

Infrastructure

Monitoring Tools

Number of Cycles per Hours

Risk

Schedule

Test Data     Data Preparation

Type of testing

NON FUNCTIONAL REQUIREMENTS

 What is NFR?

NON FUNCTIONAL REQUIREMENTS?
Users have implicit expectations about how well the software will work.
These characteristics include how easy the software is to use, how quickly it executes, how reliable it is, and how well it behaves when unexpected conditions arise. The nonfunctional requirements define these aspects about the system.

The nonfunctional requirements should be defined as precisely as possible. Often, this is done by quantifying them. Where possible, the nonfunctional requirements should provide specific measurements that the software must meet. The maximum number of seconds it must take to perform a task, the maximum size of a database on disk, the number of hours per day a system must be available, and the number of concurrent users supported are examples of requirements that the software must implement but do not change its behave.
Is there a nonfunctional requirements checklist that I can use?
Preparing  NFR  we have to gather NFR in the terms of Expected average Response’s time, Expected No. of users , Transaction per hours , CPU & Memory  Utilization, Paging ,Swapping, Heap, Availability, Reusability, Scalability, Usability.
  • Availability:
A system's availability, or "uptime," is the amount of time that it is operational and available for use. This is specified because some systems are designed with expected downtime for activities like database upgrades and backups.
  • Efficiency:
Specifies how well the software utilizes scarce resources: CPU cycles, disk space, memory, bandwidth, etc.
  • Flexibility:
If the organization intends to increase or extend the functionality of the software after it is deployed, that should be planned from the beginning; it influences choices made during the design, development, testing, and deployment of the system.
  • Portability:
Portability specifies the ease with which the software can be installed on all necessary platforms, and the platforms on which it is expected to run.
  • Integrity:
Integrity requirements define the security attributes of the system, restricting access to features or data to certain users and protecting the privacy of data entered into the software.

  • Performance:
The performance constraints specify the timing characteristics of the software. Certain tasks or features are more time-sensitive than others; the nonfunctional requirements should identify those software functions that have constraints on their performance.
  • Reliability:
Reliability specifies the capability of the software to maintain its performance over time. Unreliable software fails frequently, and certain tasks are more sensitive to failure (for example, because they cannot be restarted, or because they must be run at a certain time).
  • Reusability:
Many systems are developed with the ability to leverage common components across multiple products. Reusability indicates the extent to which software components should be designed in such a way that they can be used in applications other than the ones for which they were initially developed.
  • Robustness:
A robust system is able to handle error conditions gracefully, without failure. This includes a tolerance of invalid data, software defects, and unexpected operating conditions.
  • Scalability:
Software that is scalable has the ability to handle a wide variety of system configuration sizes. The nonfunctional requirements should specify the ways in which the system may be expected to scale up (by increasing hardware capacity, adding machines, etc.).
  • Usability:
Ease-of-use requirements address the factors that constitute the capacity of the software to be understood, learned, and used by its intended users.
Work Loader
·         Capturing the Load Pattern, Load Distribution & Transaction Distribution, Peak Window, etc.
·         The work load should be thoroughly reviewed by various stake holders of the system,
 Like
                                i.            Architectures,
                              ii.            Business Users,
                            iii.            Analysts,
                            iv.            Designers and Performance Engineers.

NOTE: Whenever the client is not well-known about the production.
·         Application under Production
Web server/DB server/ they need to provide Log files about
How many no. of users are accessing the application?
We need to test what are the peak times? (½ Peak time, hour peak time)
What are the various Critical Business Transactions?
What is the response time of the application?
·         Application not under production

·         Comparators







VuGen:
Create the new Script
Open
Templates
Protocol adviser
Def: Analysis your business process and it will provides the Guide lines for selecting a protocol to record a script.
The protocol adviser is introduced in 9.5 versions.
The major difference between 9.1 Load Runner to 9.5 Load Runner is protocol adviser.
From 9.5 to 11.0 Ajax Truclient and wireless protocols.
Protocol: Protocol is a set of rules
Types of protocols:
Single Protocols
Multiple Protocols

2 comments:

  1. Can u please explain (½ Peak time, hour peak time)

    ReplyDelete
  2. This is really a worthy and wonderful blog about Software Testing Companies in Chennai to read and further more tips on the Software Testing Companies in Bangalore have been learnt. thanks for sharing your views among us and its great time spending on this. I am waiting for new post here about Software Testing Services in Chennai and Please keep it up in future..

    ReplyDelete

About ShankarChinn

My photo
Bangalor, karnataka, India
I created this Blog to store knowledge and help other with the same. URL:http://shankarchinn.blogspot.in/ By : Shankar Nath.Chokkam