Siebel 7.x Record and Replay for LoadRunner 8.x
Preparation before record – Internet Explorer Settings
To avoid problems, verify and change the following Internet
Explorer’s settings before you try to record:
1.
Enable all ActiveX controls and plug-ins. This option
is available in Internet Explorer ® Tools ® Internet Options ® Security ®
Custom Level).
2. Enable
the “Use HTTP 1.1 through proxy connection” option. This option is available in
Internet Explorer ®
Tools ®
Internet Options ®
Advanced, under the “HTTP 1.1 settings” radio button.
Recording Siebel script with Auto-Correlation option
Correlation
is the mechanism by which VuGen saves dynamic values to parameters during
record and replay, for use at a later point in the script. For general
information about correlation, you can refer to Problem
ID 11806 - What is correlation and how is it done
For
Siebel script, you can instruct VuGen to automatically apply correlation during
recording using one of the following methods:
·
VuGen Native Siebel Correlation
The native, built-in rules, work on a low level, allowing
you to debug your script and understand the correlations in depth.
·
Siebel Correlation Library
The Siebel correlation library automatically correlates
most of the dynamic values, creating a concise script that you can replay
easily. Note that this is only available for Siebel 7.7 and the library is
distributed by Siebel.
How to record with VuGen Native Siebel Correlation
VuGen’s
native built-in rules for the Siebel server detect the Siebel server variables
and strings, automatically saving them for use at a later point within the
script. It is available in VuGen recording option by default; you do not need
to have any additional components installed.
Steps to record with Native Siebel
correlation:
1.
From the ‘New Multiple Protocol Script’ window, add
‘Siebel-Web’ and click OK.
2.
Set the following Recording Options:
a.
Internet Protocol: Recording:
·
Select ‘
HTML based script’
·
Click on
‘HTML Advanced’ and select the following
i.
Script Type:
a script containing explicit URLs only
ii. Non
HTML-generated elements: Do not record
- Internet Protocol: Advanced:
i.
Clear the ‘Reset
context for each action’ option.
ii.
Select ‘Support Charset’ then select ‘UTF-8’
- Internet Protocol: Correlation:
i.
Make sure that you have ‘Enable Correlation during
recording’
ii.
Make sure that ‘Siebel’ is selected. You can expand the
list to see the details about each rule if you wish.
- Leave other options as default.
3.
Record in the following way:
·
Record the login in the vuser_init section
·
Record the Business Process in Action1
·
Record the logout in the vuser_end section
How to record with Siebel Correlation Library
Siebel
has released a correlation library file, ssdtcorr.dll,
as part of the Siebel Application Server version 7.7. This library is available
only through Siebel and can be found on siebsrvr\bin directory for Windows
Note: The Siebel Correlation API is
supported on Windows 2000 and Windows XP only. This implies that if you
correlate the script with this method, you cannot replay this script on UNIX
platform. If you need to run the script on UNIX platform, use the VuGen Native Siebel Correlation
method.
The
library file, ssdtcorr.dll, must be
available to all machines where a Load Generator, Controller, or Tuning Console
resides.
Steps to record with Siebel correlation
library:
1.
Copy ssdtcorr.dll
into the <LoadRunner>\bin directory of Controller / Tuning Console, and
ALL Load Generator machines
2.
From the ‘New Multiple Protocol Script’ window, add
‘Siebel-Web’ and click OK.
3.
Set the following Recording Options:
a.
Internet Protocol: Recording:
·
Select ‘HTML
based script’
·
Click on ‘HTML
Advanced’ and select the following
- Script Type: a script containing explicit URLs only
- Non HTML-generated
elements: Do not record
- Internet Protocol: Advanced:
i.
Clear the ‘Reset
context for each action’ option.
ii.
Select ‘Support
Charset’ then select ‘UTF-8’
- Internet Protocol: Correlation:
i.
Delete the default ‘Siebel’ correlation rule
ii.
Click on ‘Import’, the ‘Import correlation Settings
from a file’ window opens.
iii.
Navigate to
<LoadRunner>\dat\webrulesdefaultsetting directory, select
‘WebSiebel77Correlation.cor’ and click ‘Open’
iv.
On the ‘Confirm Rule Replacement’ window, select
‘Overwrite’
Note: To revert
back to the default correlation, delete all of the Siebel rules and click ‘Use Defaults’.
- Leave other options as default.
4.
Record in the following way:
·
Record the login in the vuser_init section
·
Record the Business Process in Action1
·
Record the logout in the vuser_end section
Replaying Siebel script – Run-Time Settings
Make sure that “Simulate a
new user on each iteration” is not selected in the Browser Emulation options.
Common
Replay Errors
Error: “We detected an Error which may have
occurred for one or more of the following reasons: We are unable to process
your request. This is most likely because you used the browser BACK or REFRESH
button to get to this point.”
Diagnosis: A HTTP
request has been sent twice to the server. This could be an individual web_url
request or part of the resources being downloaded from another request. When
sending the second request to the server, the Siebel 7.x server detects
multiple requests and thus, issues the above error.
Example:
The following is a sample HTML-based script. Even though
“start.swe3” is a frame within step “start.swe2,” you can see that an
additional request is generated for “start.swe3” because of the “wait.html”
step. On replay, the server may reject the second request, “start.swe3,” since it is the same for the
HTTP call generated by “start.swe2.” This may be due to the SWECount or SWEC.
web_submit_data("start.swe2",
"Action=http://64.242.155.45/callcenter/start.swe",
"Method=POST",
"RecContentType=text/html",
"Referer=http://64.242.155.45/callcenter/start.swe?SWECmd=Start",
"Mode=HTML",
ITEMDATA,
"Name=SWEUserName",
"Value=sadmin", ENDITEM,
"Name=SWEPassword",
"Value=sadmin", ENDITEM,
"Name=SWENeedContext",
"Value=false", ENDITEM,
"Name=SWEFo",
"Value=SWEEntryForm", ENDITEM,
"Name=SWETS",
"Value=1024549479671", ENDITEM,
"Name=SWECmd",
"Value=ExecuteLogin", ENDITEM,
"Name=SWEBID",
"Value=-1", ENDITEM,
"Name=SWEC",
"Value=0", ENDITEM,
LAST);
web_url("wait.html",
"URL=http://64.242.155.45/callcenter/wait.html",
"TargetFrame=",
"Resource=0","RecContentType=text/html","Referer=",
"Snapshot=t6.inf","Mode=HTML",
LAST);
web_url("start.swe3",
"URL=http://64.242.155.45/callcenter/start.swe?SWEFrame=top._swe&_sn={Siebel_sn_body3}&SWECmd=GetCachedFrame&SWEC=1",
"TargetFrame=",
"Resource=0",
"RecContentType=text/html",
"Referer=http://64.242.155.45/callcenter/start.swe",
"Mode=HTML",
LAST);
Solutions:
- Change the Mode in
"start.swe2" to “Mode=HTTP”
The idea behind changing the mode
from HTML to HTTP is to avoid parsing the HTML page that is returned by the
server, so that resources are not downloaded. This helps to avoid multiple
downloads of same request.
If the script still fails on the
first iteration, go to step 2. If the
script fails on the second iterations onward, go to step 3.
- Disable the Run-Time Viewer
If the script still fails on the
first iteration after the change from step 1, try to close the Run-Time Viewer.
This option is in VuGen’s Tools ® General Options ® Display tab; clear the
“Show Browser during Replay” option. For
more information about this, refer to Problem
ID 17234 - Errors in Web replay because of conflict with the runtime browser.
If problem persists, refer to step
4
- Correlate SWECount or SWEC
If you are able to run the first
iteration, but the script fails on the second iteration or onwards, you will
need to correlate SWECount (7.0.3) or SWEC (7.0.4) from the previous step
“start.sweXXX.” For information about
correlation, refer to Problem
ID 11806 - What is correlation and how is it done.
If problem persists, refer to step
4.
- Run the script with the extended log
If none of the above helps, replay the script with
the extended log and identify the HTTP request that is being downloaded
multiple times. Search for a similar HTTP Request being sent earlier in the
execution log. Once you locate the same, set “Mode=HTTP” so that the resources
for that request are not downloaded,
and try replaying the script again.
No comments:
Post a Comment