Sei sulla pagina 1di 16

TeamQuest Capacity Modelling on PHP Application

By
Shital Nanna & Pavithra M
Performance Engineering CoE team

| BUSINESS APPLICATION SERVICES |
| WIPRO TECHNOLOGIES |
Neoload and Oracle Apps
Proof of Concept
February 2012


Neoload is the Performance Testing tool implemented on Java. This tool can be used to record the
traffic between the Browser and the Server and simulate load with multiple users.

PoC on Neoload and Oracle Application
2

Contents
Neoload and Oracle Apps - Introduction ............................................ 3
Performance Scripting Approach ......................................................... 3
Configure the Neoload Tool .........................................................................3
Scenario used for Oracle Apps Scripting .....................................................4
Record Oracle Applications ..........................................................................5
Script Anatomy ..............................................................................................7
Request Body......................................................................................................... 7
Response Body ...................................................................................................... 7
Customizing the Performance Script ...........................................................8
Process Correlation ............................................................................................ 8
Process - Parameterization ................................................................................... 9
Process Validation [Check Virtual User] .......................................................... 10
Test Execution ................................................................................................11
Report Generation .........................................................................................12
Challenges Faced and Guidelines.................................................................12
Productivity Factor ........................................................................................13
Appendix ................................................................................................. 15
References .......................................................................................................15
About Authors ........................................................................................ 15
About Wipro Technologies ................................................................... 16

PoC on Neoload and Oracle Application
3


Neoload and Oracle Apps - Introduction
Oracle Applications provides an ERP suite that covers various modules which an Enterprise will be
using for their proper functioning.
Neoload is the performance testing tool to measure the performance of the web applications and
provide pragmatic solutions to developers to help optimize performance before the application goes
into production on the web application
Neoload works by simulating traffic up to thousands of users in order to determine application
performance under load, effectively analyzing response times and the number of the simultaneous
users which the web application is able to handle.
Neoload monitors the newest web, database and application servers such as JBoss application server,
HP-UX 11, Weblogic, WebSphere, Tomcat, and MySQL database.
Performance Scripting Approach
A procedural approach is followed to perform this activity. The approach is represented
diagrammatically below:

Configure the Neoload Tool
The following configurations were done to setup the Neoload ready for Oracle Apps Performance
Testing
1. Copy the latest version of frmall.jar to the Neoload machine
(Neoload\lib\plugins\ext\frmall.jar)
2. Update the JAR file in the CLASSPATH (under Environment Variables)

Note: This is to ensure that the XML request and XML response are visible properly which allows the
customization
3. Open the Neoload Tool
PoC on Neoload and Oracle Application
4

Scenario used for Oracle Apps Scripting
The scenario Create Miscellaneous Transaction was used to script using Neoload performance Tool.
The step-by-step navigation is in tabulated below:
Create Miscellaneous Transaction
TRANSACTIONS STEPS DATA
Oracle_Apps_Launch Launch URL -
http://patorasrvr.wipro.com:8000/OA_HTML/RF.jsp?functio
n_id=1032925&resp_id=-1&resp_appl_id=-
1&security_group_id=0&lang_code=US&params=IBV5Xazm.o
pT.fX7Q2QJLxB2udxqY3PJjJXzOD58iWw

Oracle_Apps_Login Enter the Username and the Password pavithra
perf@123
T01_Navigator 1.Click on the Inventory
2.Click on the Material Transaction

T02_Select_Organizati
on
Select an Organization VI-Vision Operations
T03_Inventory 1.Click on Transaction
2.Click on Miscellaneous Transaction
3.Click on Open

T04_Miscellaneous_Tr
ansaction
In the Miscellaneous Transaction Window
1.Enter date
2.Enter Type
3.Click on Transaction Lines
Miscellaneous Issue
T05_Miscellaneous_Iss
ue
In the Miscellaneous Issue Window
1.Enter Item
2.Enter Sub inventory
3.Enter Units of Measure(UOM)
4.Enter the Quantity
5.Check the On Hand quantity in available text box
1001
Stores
Ea-(Each)
1
T06_Account In the Operation Accounting Flex Window
1. Enter Department
2. Enter Account and click on ok
3.Go to file and then save
000-(No Department)
1001-(Asset)
T07_View_Count 1.Close the Miscellaneous Issue Window
2.In the Miscellaneous Transaction Window enter date and type
3.Click on Transaction Lines
Miscellaneous Issue
T08_View_Miscellane
ous_Issue
In the Miscellaneous Issue Window
1.Enter Item
2.Enter Sub inventory
3.Check the On Hand quantity in available text box
1001
Stores
PoC on Neoload and Oracle Application
5

Oracle_Apps_Logout 1.Go to File-->Close The Form
2.Go to File-->Exit Oracle Application
3.Click on Logout

Record Oracle Applications
Once the configuration is done, the Neoload is ready for Oracle Apps scripting. The HTTP is selected
for recording.

Note: As a best practice, it was ensured the cookies were cleared before starting the recording
1. Created a Container called T01_Launch as the 1
st
transaction for the application Launch

2. Created a Container called T01_Login

PoC on Neoload and Oracle Application
6

3. Created a Container called T05_Miscellaneous_Issue and committed a transaction of type
Miscellaneous Issue. On successful commit, the Quantity on Hand is reduced by the quantity
configured in the Transaction.

4. After saving the form, review the Quantity available by revisiting the page and searching for the
Item / Sub inventory combination. This is for validation.

5. After finishing the recording Neoload finalizes the recording process and script is generated

6. In post recording wizard selected Skip this step option and clicked on finish
PoC on Neoload and Oracle Application
7


Script Anatomy
Request Body
The request that is sent from the browser through the thick client (Java Applet) is in the form of XML.
The XML request for a typical request Save Miscellaneous Transaction is found below:


Response Body
The response from the Oracle Apps web server is also in XML format as received by the Java Applet
and rendered on the browser. A typical XML response for the event Tabbing next from the sub-
inventory which retrieves the Available quantity and On-hand quantity is displayed below:
PoC on Neoload and Oracle Application
8


Customizing the Performance Script
Process Correlation
After recording of the script done the correlation was done for the dynamic value icx_ticket as below:
1. Used Flags for checking where exactly the icx_ticket value is present
2. Selected the request for the first occurrence for icx_ticket
3. In Recorded response tab found the icx_ticket value
4. After that in Variable Extrator created a new variable a called icx for extracting the value
PoC on Neoload and Oracle Application
9


5. Replaced the dynamic value of icx_ticket with created variable extractor (icx)

6. In the same way done the correlation for jsessionid to extract its dynamic value
Process - Parameterization
Done parameterization for login with two different users as below:
1. First created the .csv file in which gave two usernames
2. Then created a new variable called Login with varibale type as File

PoC on Neoload and Oracle Application
10

3. Replaced the username with created variable

Process Validation [Check Virtual User]
The following steps were followed for validating the functionality executed by the script.
1. Correlated the Quantity on Hand before and after. The variables were named as Qty_Before
and Qty_After

2. Added the Java script to the script which prints the value of Qty_Before and Qty_After
PoC on Neoload and Oracle Application
11


3. Checked the script by executing once using Check Virtual User button

4. Validated the output message in the log as printed through the Java script. If they Qty_After is
reduced on virtue of running the script (Create Misc Transaction), the script is successful.

Test Execution
Configure the settings in Runtime to run the test for 2 users 4 iterations
PoC on Neoload and Oracle Application
12


Report Generation
After execution of the test report will be generated in Reports tab by selecting Generate Report
button


Challenges Faced and Guidelines
The following challenges were faced during the Proof of concept
S.No Challenge Mitigation
1 Identifying the values that should be
extracted (correlated)
Run the check VU and look at the result. If
there are errors, select the related pages,
there must dynamic content (or just on the
PoC on Neoload and Oracle Application
13

page before). Also, another way is to make
two similar records and comparing the
parameters.
2 The request body was not displaying XML
rather a junk characters
<frmall.jar in the class path> from
OracleHome in Neoload installation folder



3 Scripts created using the commercial license
cannot be customized and saved in the
computer that has non-commercial license
This is the licensing feature of Neoload
Acquiring the Commerical license is the
only choice
Productivity Factor
Since the Request and Responses are in XML format, the following advantages are present in Neoload
scripting. These advantages improve the productivity and maintenance factor. This comes handy if
there are multiple roll-outs in Oracle Applications.
Page Screenshot display after the recording - For each page/request, the snapshot taken while
recording is displayed when the user traverses across the scripts. This allows the performance test
engineer to find out the place which response to be extracted (correlated). This snapshot feature is
seldom available in other commercial tools.

Readability of scripts this is the biggest advantage and well displayed compared to any other
commercial performance testing tools since the Request and Responses are visible as XMLs
PoC on Neoload and Oracle Application
14


Recording the scripts is significantly faster this is because, the Neoload tool does not hook-up
inside the browser process which will cause more CPU overheads and larger Memory footprint.
Instead, the Neoload tool acts as a proxy between the Client and the Server trapping all the
requests that traverse between them

Ease of Variable Extraction-
1. The validation of extraction configuration is instantly visible which allows the performance
test engineer to check what value was retrieved using the Starting with and Ending with
configurations

PoC on Neoload and Oracle Application
15

2. The usage of variables (both inclusive the static and dynamic) is very easy and syntax mistakes
can be avoided due to the context-sensitive drop-down

JavaScript feature for customization - Any client-side logic that happens at the java applet can be
incorporated using the JavaScript feature of the Neoload.
However, this was not done in the test case that was picked up for this proof of concept
Shared Container feature - The common transactions like Launch, Login, Select Responsibility
can be grouped under shared container which is a common pool for all other Virtual User scripts.
Hence, the logins can be parameterized at a central place
Neoload is Faster-
Factor Neoload Other Performance Tool
Recording of the
script
For recording of the Create Miscellaneous
Transaction scenario it took 20 minutes
For recording of the Create
Miscellaneous Transaction scenario it
took 30 minutes
Variable Extraction
(Correlation)
It is easy with the help of Flags and need
to give only Staring with (Left boundary)
and Ending with (Right boundary) fields.
Took 10 minutes
For correlation we have to find where
exactly the dynamic value is coming
and need to write the code for the
same. Took 20 minutes
Parameterization For parameterization it took only 5
minutes
For parameterization it took 5
minutes
Checking (Reply) of
the script
Replay of the script is comparatively faster
and took only 2 minutes
In other tools replay of the script is
slower and took 5 minutes
Appendix
References
Neoload help Documentation
Application specification and Test cases
About Authors
Shital Nanna, is Performance Testing engineer in Wipro Technologies. She is a B.E. in Electronics and
Communication Engineering from Pune. Her main areas of expertise are Performance Testing with
tools like LoadRunner, Neoload and JMeter across technologies like Web, SAP and Oracle Apps.
PoC on Neoload and Oracle Application
16

Pavithra M, is Performance Testing engineer in Wipro Technologies. She is a B.E. in computer from
Coimbatore. Her main areas of expertise are Performance Testing with tools like LoadRunner,
Neoload.
About Wipro Technologies
Wipro is the first PCMM Level 5 and SEI CMMi Level 5 certified IT Services Company globally. Wipro
provides comprehensive IT solutions and services (including Systems Integration, IS Outsourcing,
Package Implementation, Software Application Development and Maintenance) and Research &
Development Services (hardware and software design, development and implementation) to
corporations globally.
Wipros unique value proposition is further delivered through our pioneering offshore Outsourcing
Model and stringent quality processes of SEI and Six Sigma.

Wipro in Testing Services
Wipros Testing Services is the largest offshore independent testing services provider with innovative
solutions and differentiated offerings that reduce cycle times and provide quality assurance for
software across industry verticals and domains by collaborating with our alliance partners. It has 10+
years of experience in independent Testing Services. It is a horizontal service line in Wipro having
testing capabilities across verticals and domains. With 8000+ dedicated testers, the Testing Services
Division of Wipro is amongst the largest third party offshore testing service providers in the world.










Copyright 2011. Wipro Technologies. All rights reserved. No part of this document may be reproduced,
stored in a retrieval system, transmitted in any form or by any means, electronic, mechanical, photocopying,
recording, or otherwise, without express written permission from Wipro Technologies. Specifications subject
without notice. All other trademarks mentioned herein are the property of their respective owners.
Wipro Technologies
Corporate Office: Doddakannelli, Sarjapur Road,
Bangalore - 560 035
Phone: +91 (80) 28440011
Fax: +91 (80) 28440256

Potrebbero piacerti anche