

|
 |

FAQs

Licensing
Support and Training
Installation and Configuration
Recording and Post-Processing of Web Surfing Sessions
Load Test Execution
Licensing
Q: Where I can purchase Proxy Sniffer?

A: You can purchase Proxy Sniffer only from us
and from of our general agencies in specific countries.

Q: How much is a Proxy Sniffer license?

A: You will find this information on our website Buy.
There are competitive "Starter Packages" available. Our license prices are starting from 518 Euro / 673 USD per year (without VAT)
for simulating 200 virtual users.

Q: How much is the license price for using Proxy Sniffer without any restrictions?

A: Please ask us to get an offer for a site license. Depending on the number of members of your
quality assurance team - and also depending on the number of your software developers which use Proxy Sniffer - you will
receive an accommodating binding offer from us.

Q: Where can if find more detail information about licensing and license conditions?

A: On our website "Buy" (at the bottom part), there are
more detail information about licensing available.
The general license conditions are defined in the
End User License Agreement (PDF).


Support and Training
Q: Is unlimited support available?

A: Yes, but only in combination with ordering the On-Site Proxy Sniffer Training Course I
(product training). A better education of your team will also reduce your effort for support cases.


Installation and Configuration
Q: How can I update the license without reinstalling Proxy Sniffer?

A: You have to update the content of the files prxsniff.key and ExecAgentTicket.dat by using a normal text editor like
notepad.exe or vi. Both files are located in the Proxy Sniffer installation directory. The file prxsniff.key contains
your GUI license key and the File ExecAgentTicket.dat contains your Exec Agent License Ticket. You have to restart
Proxy Sniffer after you have updated your license.
Note: if you do not have an Exec Agent License Ticket for your local system on which the GUI is running you can let the content
of the file ExecAgentTicket.dat empty. In such a case only 5 virtual users can be simulated by your local Exec Agent.

Q: How to upgrade Proxy Sniffer to a newer version?

A: If you have installed Proxy Sniffer by using an installation kit for Windows, Mac OS X or Ubuntu, you have first to uninstall
Proxy Sniffer by calling the corresponding uninstall utility. Your load test data will not be deleted. After that install the new Proxy Sniffer version.
During installation, select the same installation directory that was used in the previous version in order that the content
of your MyTests sub-directory continues to be accessible from the Project Navigator. Ensure that all additional (remote)
Exec Agents are also upgraded to the new Proxy Sniffer Version.
Mixing different Proxy Sniffer versions for the GUI and the (remote) Exec Agents is not supported, and will lead to errors
when starting Load Tests.
Note: in case if you have installed Proxy Sniffer manually on a Unix-like system without using an installation kit
you have only to replace the file prxsniff.jar. After that restart Proxy Sniffer. If the restart fails you should
delete the file javaSetup.dat and then try to restart Proxy Sniffer again. Both files, prxsniff.jar as well as
javaSetup.dat, are located in your Proxy Sniffer installation directory.

Q: Why are my load test jobs restricted to simulate only 5 virtual users?

A: The reason is that the content of the file ExecAgentTicket.dat which contains your Exec Agent License Ticket data cannot
be read or contains invalid data. If you have started Proxy Sniffer in a normal way by clicking on the "Proxy Sniffer Console"
icon, please scroll up inside the Proxy Sniffer Console (the black window with the green text) at the beginning of the output to see
the corresponding error message. Please note that the content of the file ExecAgentTicket.dat must also include the delimiter lines
"-----BEGIN EXEC AGENT LICENSE TICKET-----" and "-----END EXEC AGENT LICENSE TICKET-----".

Note for Proxy Sniffer version 4.3 or older versions: if
you have started Proxy Sniffer (or an Exec Agent) from a command line of a terminal - or by writing your own startup script -
you must use the Java option -Xbootclasspath/p:<file path to prxsniff.jar> in order that the data of the
Exec Agent License Ticket can be read correctly.

Example of starting an Exec Agent on an Unix-like system from a command line of a terminal:

V4.3 or lower versions:
export CLASSPATH=.:prxsniff.jar
nohup java -Xmx768m -Xbootclasspath/p:prxsniff.jar ExecAgent -tz ECT 2>&1 > ExecAgent.log &

V4.4 or higher versions:
export CLASSPATH=.:prxsniff.jar:iaik_jce_full.jar:iaikPkcs11Provider.jar
nohup java -Xmx768m ExecAgent -tz ECT 2>&1 > ExecAgent.log &

Q: How can I start an Exec Agent (Load Generator) as a Windows Service?

A: Starting an Exec Agent (load generator) as a Windows service is only recommended on (remote) systems where no
Proxy Sniffer Console is started. As first step, install Proxy Sniffer by running the normal
Windows installation kit, but do not enter a GUI license key during installation: enter only the corresponding Exec Agent License
Ticket data. After installation, call InstallExecAgentService.bat. This script will register the Windows Service
ProxySnifferExecAgent. At the first time - after running this script - you have to start this service manually.
Consider also that you have to reconfigure the firewall in such a way that inbound connections on TCP/IP port 7993 are
enabled. Note for Windows Vista and Windows 7 systems: it may be necessary to disable UAC to start this service successfully.
Special notes for uninstalling Proxy Sniffer in such a case: before uninstalling Proxy Sniffer you have first to stop
manually the service ProxySnifferExecAgent. Then deregister the service by calling UninstallExecAgentService.bat.
After that you can continue to uninstall Proxy Sniffer in the normal way.

Q: How to install an external Exec Agent on a Unix-like system?

A: Depending on your Proxy Sniffer version, please take a look at the Application Reference Manual V4.3 or Application Reference Manual V4.4, chapter 3.3, 3.5 and 3.6,
or use the installation kit for Unix-like systems (*.bin file).

Q: Where I can register additional Exec Agents in the GUI?

A: From the Main Menu, call first the "Project Navigator", and after that click on the "Network" icon at the top
of the "Project Navigator" window which will open the "Exec Agent Network Configuration" window.

Q: What kinds of network protocols are supported for transferring load test jobs to external Exec Agents?

A: For internal communication between the GUI and the Exec Agents, plain TCP/IP network connections as well as HTTP/S tunneling is supported.
Usually the Exec Agents are listening on plain TCP/IP port 7993 - or on port 80 / 443 when HTTP / HTTPS is used for internal communication.

Q: How can I change the root directory of the Project Navigator?

A: Modify the content of the file mytests.dat inside the installation directory. Then
restart Proxy Sniffer and clear all cookies of your web browser.
Hint: the root directory of the Project Navigator can also point to a directory of a file share in order that
several users of the Proxy Sniffer product have access to the same data.

Q: How can I change the default time zone?

A: Modify the content of the file prxsniff.dat inside the installation directory. Then
restart Proxy Sniffer and clear all cookies of your web browser.

Q: How to remove Proxy Sniffer completely from a computer?

A: If you have installed Proxy Sniffer by using an installation kit, please call first the corresponding uninstall utility.
However the uninstall utility does not delete your license data and it does also not delete your load test programs and
results. After running the uninstall utility, you have additionally to delete the Proxy Sniffer installation directory
manually in order that everything is uninstalled.


Recording and Post-Processing of Web Surfing Sessions
Q: Which web browser products are supported for recording of web surfing sessions?

A: Every web browser product is supported (Firefox, Microsoft Internet Explorer, Safai, ..).
For recording of a web surfing session you have only to modify the Proxy settings of your web browser.

Q: Which web browser products can be emulated during a load test?

A: In our opinion, this is a wrong question. In opposite to many other products - Proxy Sniffer emulates
during a load test exactly
the traffic of the web browser product with which one the web session has been recorded. So if you use for example
a German Mozilla V1.0 web browser for recording, a German Mozilla V1.0 web browser is emulated during the load test - with all of its
specific traffic. This may be a big benefit if the web server delivers browser-specific content.
Many other products are only able to record web surfing sessions with a modified Microsoft browser which is not the same.
Please note that altering only the HTTP header field "User Agent" (this is what they do) for emulating another web
browser does not the same because the internal behavior will be still based on the Microsoft browser engine.

Q: What kind of data are captured during the recording of a web surfing session?

A: Completely all data which are exchanged between the web browser and the web server(s), inclusive exchanged data released by
JavaScript code and AJAX, and released by Pop-Up windows.

Q: Is it possible to record a web surfing session over several web servers?

A: Yes. However for testing web portals, it might be a good idea to strip off advertising banners from
external severs by using the filter of the Web Admin GUI or by deleting individual URL calls.

Q: Are session cookies supported?

A: Yes (no special configuration is needed).

Q: How can I handle session specific parameters which are exchanged as CGI or as form values?

A: The GUI based "Variable Finder" and "Variable Handler" menues support to extract session specific parameters from HTML forms, from hyperlinks, from XML data, from JSON data, and by using an integrated GUI based parser from any response content.
The assignement of such extracted values to succeeding URL calls happens automatically. Please take a look at this example - and please read the corresponding
chapter about "Dynamically-Exchanged Session Parameters" in the "Users Guide".

Q: How can I assign to each simulated user an own username and password during the execution of a load test?

A: You have to define an "Input File". Please take a look at this example - and please read the corresponding
chapter about Input Files in the "Users Guide".


Load Test Execution
Q: I have recorded a web surfing session which uploads a file - But why does the load test fails?

A: The load test fails because the uploaded file has not been zipped together with the load test program.
You have to copy the uploaded file also into the same "Project Navigator" directory, in which your load test program
is located. After that, you have to ZIP the compiled class (*.class file) of the load test program together with the
uploaded file (and optionally together with your Input Files and Plug-Ins) to one ZIP archive by using the ZIP functionality
inside the "Project Navigator". After that you can start the load test by clicking on the Execute-Icon of the newly
created ZIP archive.

Q: Is it possible to run in parallel several load test jobs which are based on different web surfing sessions?

A: Yes, this is fully supported. The GUI only 'queues' a load test job to a local or to
a remote Exec Agent (load injector), which allows to execute an unlimited number of parallel load test jobs at the same time.
Each Exec Agent is able to execute several load test jobs at the same time by using an own Java virtual CPU for each job.
Nevertheless, the GUI can (but not must) hold a live network connection to each load test job which allows to display real time statistics.
Closing a real time statistic window will not interrupt a load test job.

Q: What is the maximum number of virtual users that can be reached by a load test?

A: The Proxy Sniffer architecture supports to execute high-end load tests with an in reality unlimited number of virtual users.
All product components are fully multithreaded implemented. However, the underlying operating system
of a single Exec Agent (load injector) can be overloaded if too many concurrent virtual users are executed
by the same system. In most common cases of overload, the CPU(s) of an Exec Agent are always
nearly 100% used and the measured response times are in such a case not valid, because the measuring system
by itself is overloaded.

Proxy Sniffer supports therefore to combine an unlimited number of Exec Agents to a cluster,
so that an unlimited number of virtual users can be reached - or in other words, the maximum number
of virtual users is only limited by the power and the number of the Exec Agents. Proxy Sniffer supports to execute
cluster jobs in an absolutely transparent way, and merges automatically the measured results of the
corresponding Exec Agents to an united load test result. Several cluster jobs can run in parallel,
by using the same or a different collection of Exec Agents. Exec Agent Clusters can be composed by using a mixed
collection of local and remote Windows and Unix-like systems.

Q: What should be measured?

A: We recommend, that you record a web surfing session which covers the key menus
(most used menus) of the web application and that you execute the same
load test several times by using a different number of concurrent users for each test-run
(1, 2, 5, 10, 20, 50, 100, 200 ...). After that a graphical comparison of the measured
results can be done (so called "Load Curves") which will give you an excellent overview about
the stability and the maximal capacity of the web application:

You should also have a closer look on the response times per web page and within a page to
the response time per URL to isolate the top-time consuming URLs. If you encounter big
differences between the URL response times - which are more or less size independent - you have
found valuable candidates for a server-sided tuning.

You will obtain a lot of additional information by examining the detail results of each test-run.
Up to 19 different diagrams and statistics are available. Example - composition of slowest URL calls:

To detect memory and resource leeks at server side we recommend that you additionally perform an endurance test over a couple
of hours by using a moderate number of concurrent users.

Q: How can I determine if the network is the reason for slow response times?

A: Whatever somebody is trying to tell you - the network throughput is commonly not the reason for slow response times.
We suggest that you compare the response time of a bigger static image ore a style sheet with the response time
of a server side generated HTML page which has approximately the same size. For example: if a image of 20 kBytes
size has been received within 200 Milliseconds, but a server side generated HTML page with a size of 30 kBytes
takes 5 Seconds, the network is definitively not the reason that the server side generated
html page has a slow response time. There must be an other reason which is outside the network, commonly found
inside the web server.

Q: What can be done if embedded images are slowly displayed?

A: If the text of a web page is received within a moderate response time, but the embedded images are
displayed slowly bit by bit, it might be that the keep-alive option has been disabled at server side or
a downgrade to the older HTTP protocol version 1.0 is forced by the web server - instead of using
the newer HTTP protocol version 1.1. You can check this by selecting the "HTTP Keep-Alive Efficiency"
diagram on the result details menu of a test-run:

If the rate of the "Successful Recycled Network Connections" is less than 70% - or if only "New Created Network Connections"
have been measured, the web server is wrong configured and you should try to enable its keep-alive option.
Thereafter you should measure the web server again to check if it performs better. We recommend that the
keep-alive timeout is configured within a range of 7-15 Seconds.

Q: What means the error type "Network Error at Client Side"?

A: You are out of free client sockets (free network connections) on your load initiating system (Exec Agent) and you have to
tune the TCP/IP configuration of the system. This may happen especially on Windows systems if the load test uses the older
HTTP V1.0 protocol - or when the application server does not support "keep-alive" and therefore network connections can not be reused or recycled.
This may also happen if the web application performs very well and therefore the load initiating system is using a lot of new network
connections within a short time.
Action: add the following new entries with regedit on your load initiating system. Afterwards
you must reboot the system.
\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
Windows NT and 2000 - Add the following entries:

| MaxFreeTcbs | 20000 | (REG_DWORD, decimal) |
| MaxUserPorts | 65534 | (REG_DWORD, decimal) |
| TcpTimedWaitDelay | 30 | (REG_DWORD, decimal) |

Microsoft Knowledge Base Article - 120642
Windows XP - Add the following entries:

| MaxFreeTcbs | 20000 | (REG_DWORD, decimal) |
| TcpTimedWaitDelay | 30 | (REG_DWORD, decimal) |

Microsoft Knowledge Base Article - 314053
Windows XP with Service Pack 2

Additionally to the suggestions above you should install the patch from
www.lvllord.de. We recommend to increase the number of half-open concurrent network connections per
host to a value of 200-500.
Windows 2003 Server - Add the following entries:

| SynAttackProtect ¹ | 0 | (REG_DWORD, decimal) |
| TcpTimedWaitDelay * | 30 | (REG_DWORD, decimal) |
| MaxFreeTcbs * | 20000 | (REG_DWORD, decimal) |
| MaxUserPort * | 65534 | (REG_DWORD, decimal), inkonsistent Microsoft documentation |
| MaxUserPorts * | 65534 | (REG_DWORD, decimal), inkonsistent Microsoft documentation |

* client and server side tuning suggestions
¹ additional server side tuning suggestion

UNIX-like Systems

This problem usually does not occur on Unix-like systems: you can check with "ulimit -n" the number of
maximal available file and network connections per process. Increasing this value can be done
with "ulimit -n <number>". Example: "ulimit -n 4096". This has to be done before a Proxy Sniffer Exec Agent process is started.

If you are running load tests with hundreds or thousands of concurrent users we recommend
that you follow the suggestions of the BEA WebLogic site: Tuning Hardware, Operating System, and Network Performance.
These tuning suggestions should be applied on client side as well as on server side. The same suggestions can be applied for other web application servers like Sun ONE, IBM WebSphere, Oracle IAS, JBoss, Tomcat or Apache.


|