Thursday, 25 February 2016

Where do you set Iteration for Vuser testing?

We set Iterations in the Run Time Settings of the VuGen. The navigation for this is Run time settings, Pacing tab, set number of iterations.

What are the changes you can make in run-time settings?

The Run Time Settings that we make are: a) Pacing - It has iteration count. b) Log - Under this we have Disable Logging Standard Log and c) Extended Think Time - In think time we have two options like Ignore think time and Replay think time. d) General - Under general tab we can set the vusers as process or as multithreading and whether each step as a transaction.

How do you find out where correlation is required? Give few examples from your projects?

Two ways: First we can scan for correlations, and see the list of values which can be correlated. From this we can pick a value to be correlated. Secondly, we can record two scripts and compare them. We can look up the difference file to see for the values which needed to be correlated.  In my project, there was a unique id developed for each customer, it was nothing but Insurance Number, it was generated automatically and it was sequential and this value was unique. I had to correlate this value, in order to avoid errors while running my script. I did using scan for correlation.

How can we view the summary of the data when we happen to process heavy data say more than 100 Mb?

In large load test scenarios, with results exceeding 100 MB, it can take a long time for Analysis to process the data. While LoadRunner is processing the complete data, you can view a summary of the data.
To view the summary data, choose Tools > Options, and select the Result Collection tab. To process the complete data graphs while you view the summary data, select Display summary data while generating complete data, or select Generate summary data only if you do not want LoadRunner to process the complete Analysis data.

How do we create Analysis Sessions?

When you run a load test scenario, data is stored in a result file with an .lrr extension. Analysis is the utility that processes the gathered result information and generates graphs and reports.
When you work with the Analysis utility, you work within a session.
An Analysis session contains at least one set of scenario results (.lrr file).
Analysis stores the display information and layout settings for the active graphs in a file with an .lra extension.

What is the Graph Data and Raw Data views?

These are the tool to view a summary of the results after the load test scenario execution.
The Graph Data and Raw Data views display the actual data used to generate the graph in a spreadsheet format. You can copy this data into external spreadsheet applications for further processing.

What is Analysis Graphs?

It is a tool to view a summary of the results after the load test scenario execution.
The Analysis graphs help you determine system performance and provide information about transactions and Vusers. You can compare multiple graphs by combining results from several load test scenarios or merging several graphs into one.

What is the utility of Analysis module of HP LoadRunner?

LoadRunner enables you to test your system under controlled and peak load conditions.
Whereas Analysis module of LoadRunner provides in–depth reports and graphs hilighting the information that you need to evaluate the performance of your application.

Wednesday, 24 February 2016

When do you disable log in Virtual User Generator, When do you choose standard and extended logs?

 Once we debug our script and verify that it is functional, we can enable logging for errors only. When we add a script to a scenario, logging is automatically disabled.Standard Log Option: When you select
Standard log, it creates a standard log of functions and messages sent during script execution to use for debugging. Disable this option for large load testing scenarios. When you copy a script to a scenario, logging is automatically disabled Extended Log OptionSelect
extended log to create an extended log, including warnings and other messages. Disable this option for large load testing scenarios. When you copy a script to a scenario, logging is automatically disabled. We can specify which additional information should be added to the extended log using the Extended log options.

What Component of LoadRunner would you use to play Back the script in multi user mode?

The Controller component is used to playback the script in multi-user mode. This is done during a scenario run where a vuser script is executed by a number of vusers in a group.

How do you debug a LoadRunner script?

Virtual user generator allows two methods to debug a script:

- Breakpoints
- Step by step command

The debug information which is written on the output can be controlled using the debug settings. These settings control the extent of trace of a particular scenario. If debug information for a small section of script is desired, lr_set_debug_message function can be manually set.

Explain the Load testing process.

The following steps are involved in Load testing process:

1. Plan the test - A clearly defined test plan need to be developed for ensuring the test scenarios in order to accomplish the objectives of load testing.

2. Creation of Vusers - Vusers scripts are created which contains the tasks performed by each and every Vuser and all Vuser tasks collectively as a whole.

3. Creation of scenario - The events that occur during the testing session are described. This process includes the list machines, scripts, and Vusers which run during the scenario. The Load Runner controller is used for creation of automatic scenarios.

What is the advantage of running the Vuser as thread?

The advantages of running a VUser are following:

- Vusers support multithread environments.
- Using this multithread environment we can run more Vusers per load generator.
- If the Vuser is run as a thread, only one instance of the driver program is needed to loaded into memory for the given number of Vusers.
- Sharing of memory take place between each thread, helping in running of more Vusers per generator.

What are reports provided by the analysis window?

After running a scenario, we can view reports that summarize system’s performance. The analysis provides following reports:

SUMMARY REPORT: provides general information about the scenario run. We can view the summary report at any time form the analysis window.

HTML REPORTS: the analysis creates an HTML report for each one of the open graph.

TRANSACTION REPORTS: provides performance information about the transaction defined within the Vuser scripts. These reports give a statistical breakdown of results and allow printing and exporting the data.

What is the difference between correlation and parameterization?

Differences between correlation and parameterization are below:

- In correlation, dynamically generated values or data are used throughout the script where as in parameterization, user defined or user provided values are used.

- The values in correlation is given by the server automatically where as in parameterization, values is given by database manually.

- In correlation, Tester doesn’t know these values but in parameterization tester know these values.

- Sometime correlation is mandatory but parameterization is optional.

What is the need of Checkpoints in LR?

When running a test, sometime we need to verify if certain content is found on the returned page. A content check verifies that expected information appears on Web page while the script is running.

Two types of content check:

Text Check: checks that a text string appears on a web page.
Image Checks: checks for an image on a web page.

Why VUGen is used in LR?

The Virtual User Generator (VUGen) enables to develop Vuser scripts for a variety of application types and communication protocols. It is used to record and run the scripts. Running scripts form VUGen is useful when debugging. It tells how Vuser scripts will run when executed as a part of scenario. While recording a Vuser scripts it generates functions those action which is performed during the recording session. VUGen inserts these generated functions into VUGen editor to create a basic Vuser Script.

Explain LoadRunner Testing process.

We can easily create and run load test scenario by following below process:

Planning test: a thorough test plan is required for successful load testing.

Creating Vuser Script: script contain task performed by each Vuser or multiple Vuser.

Creating the Scenario: Scenario describes event that occur during a testing session. It includes list of machine on which Vuser run, list of script that Vuser run and no of Vuser.

Running the Scenario: emulate load on server by instructing multiple Vusers to perform task.

Monitoring Scenario: By executing LR online run-time, transaction resources, database resources and firewall resources can be monitors.

Analyzing results: Graphs and reports are used to analyze the performance of application.

How to Configuring Load Runner Monitors?

Configuring Load Runner Monitors

1. Go to run tab of controller window.
2. Select the corresponding monitor.
3. Drag and drop the monitor into any graphs.
4. Right click on graph and select add measurements.
5. Click on ADD and enter the machine name of the Web/App/DBserver
6. Click on ADD and select the required performance counter to be measured during the scenario.
7. Click on OK.

Monday, 22 February 2016

Perfmon to capture the Process Performance of server or system

 How do we track and log system and process information on a Windows operating system?

 Windows system tools available for monitoring almost every type of performance, including CPU, memory, file system and network usage. You do not have to rely merely on the Task Manager.

There is a Windows utility called PerfMon (Performance Monitor) that has the ability to graph and log performance metrics for specific processes, as well as set alarms and timing for performance monitoring and logging.

Steps to View and Log Performance Data Using Windows 7 Performance Monitor:

1.Make sure LabVIEW is open.

2.Click on the Start Menu and click Run.
3.Type perfmon into the Run command prompt and click OK.



4.You will then see the Performance Monitor pop up.



5.Click on the green ‘+’ sign near the top of the Performance Monitor Window to bring up theAdd Counters window.

6.On the left side,choose which counters to add and click Add >>. Your counters should now appear under Added Counters. Click OK.



There are many options for what counters to add. A few that may be of special note when dealing with LabVIEW performance issues are:
Memory
Processor
Process (shown above): Under process, one can choose specific programs to monitor. In the upper left Window, you can select the aspects of the process that you’d like to monitor such as % Processor Time or Virtual Bytes. In the lower left hand window, you can select which process you’d like to monitor. Above, LabVIEW has been selected.

Now you should be able to see all chosen counters updating on the graph

In order to log this data to file, right-click on Performance Monitor and select New»Data Collector Set.


Type in a name for your data set and press Next.



Complete the rest of the steps including choosing the location you want to save your log file.
When you want to start logging the performance data, right-click on your Data Collector Set and select Start. To stop logging, right-click and select Stop.





Note: PerfMon provides ActiveX properties and methods, allowing you to control it through another ADE and even use it as an embedded control in an application.

How do you identify which protocol to use for any application?

 Previously Performance tester had to depend much on the development team to know about the protocol that application is using to interact with the server. Sometimes, it also used to be speculative.
However, LoadRunner provides a great help in form of Protocol Advisor from version 9.5 onwards. Protocol advisor detects the protocols that application uses and suggest us the possible protocols in which script can be created to simulate the real user.

What is the difference between Performance testing and Performance engineering?

In Performance testing, testing cycle includes requirement gathering, scripting, execution, result sharing and report generation. Performance Engineering is a step ahead of Performance testing where after execution; results are analyzed with the aim to find the performance bottlenecks and the solution is provided to resolve the identified issues.

Wednesday, 17 February 2016

Why to create parameters in HP LoadRunner Vugen?

Parameters acts as variables in vuser scripts which helps in emulating real users by sending different values every time script is run. If same values are passed every time, response is cached and doesn’t give the exact time of execution as it will fetch the result from the catch, it will not hit the server. Static values in the scripts are parameterised. For example, user id, tel no, address, etc.

Analysis Scenario (Bottlenecks)

In Running Vuser graph correlated with the response time graph you can see that as the number of Vusers increases, the average response time of the check itinerary transaction very gradually increases. In other words, the average response time steadily increases as the load
increases. At 56 Vusers, there is a sudden, sharp increase in the average response
time. We say that the test broke the server. That is the mean time before failure (MTBF). The response time clearly began to degrade when there were more than 56 Vusers running simultaneously.

If you want to stop the execution of your script on error, how do you do that?

 The lr_abort function aborts the execution of a Vuser script. It instructs the Vuser to stop executing the Actions section, execute the vuser_end section and end the execution. This function is useful when you need to manually abort a script execution as a result of a specific error condition. When you end a script using this function, the Vuser is assigned the status "Stopped". For this to take effect, we have to first uncheck the Continue on error option in Run-Time Settings.

When do you disable log in Virtual User Generator, When do you choose standard and extended logs?

Once we debug our script and verify that it is functional, we can enable logging for errors only. When we add a script to a scenario, logging is automatically disabled. Standard Log Option: When you select Standard log, it creates a standard log of functions and messages sent during script execution to use for debugging. Disable this option for large load testing scenarios. When you copy a script to a scenario, logging is automatically disabled Extended Log Option: Select extended log to create an extended log, including warnings and other messages. Disable this option for large load testing scenarios. When you copy a script to a scenario, logging is automatically disabled. We can specify which additional information should be added to the extended log using the Extended log options.

What are the types of Bottlenecks in Performance testing?

The biggest bottleneck in performance testing is that it requires well experienced man power. Besides, since performance testing aims to test the performance of system in terms of speed, response time etc, it also calls for expensive tools.

What is the need of Checkpoints in LR?

When running a test, sometime we need to verify if certain content is found on the returned page. A content check verifies that expected information appears on Web page while the script is running.

Two types of content check:

- Text Check: checks that a text string appears on a web page.
- Image Checks: checks for an image on a web page.

How to Configuring Load Runner Monitors?

Configuring Load Runner Monitors

1. Go to run tab of controller window.
2. Select the corresponding monitor.
3. Drag and drop the monitor into any graphs.
4. Right click on graph and select add measurements.
5. Click on ADD and enter the machine name of the Web/App/DBserver
6. Click on ADD and select the required performance counter to be measured during the scenario.
7. Click on OK.

What are the languages used in Load Runner?

Following languages are supported by LoadRunner:
1. C Language
2. Visual Basic Scripting
3. Visual Basic For Applications
4.  Java Scripting

What is the Configuration of systems when using Load Runner?

The configuration of systems refers to that of the client machines in which we will run Vusers. The configuration of client machine includes its hardware settings, memory, operating system, software applications, development tools, etc.
This system component configuration should match with the overall system configuration so as to achieve the load testing objectives.

What are all the reasons to use the Server Resources Monitor?

Server resources monitor is used to find how much data is coming from Cache and helps to find out what are all the parts of the system have bottlenecks.

What is the benefit of running a Vuser script as a thread?

The advantage of running a Vuser script as a thread which allows more Vusers to be used for one load generator. Running Vuser scripts as processes utilizes a lot of memory because all of the loaded scripts use the same driver.
This limits the number of Vuser scripts that can be run on one generator.

How can performance bottlenecks can be identified?

Monitors can be used to detect performance bottlenecks. These include network, web server, application server, and database server monitors.
These monitors can be used to locate trouble spots in scenarios that cause increase in response time and throughput, network delays, performance response time, hits/second, etc.

How can we find database related issues?

Monitors and the Data Resource Graph can be used to find database related issues. LoadRunner allow the tester to specify the resource that needs to be measured before the controller is run.

"HttpSendRequest" failed, Windows error code=12002 - Perf Center Error_load runner error

While running an internal application using the load runner Controller i was getting the "HttpSendRequest" failed, Windows error code=12002 - Perf Center Error .I solved these by following the below steps:

1.Check Vugen runs script as a process or running  vusers asa  thread?
You can check this in Run time settings-General-Miscellaneous-Multithreading then uncheck the value

2.Are you working with WinInet, and the error itself comes from WinInet API not specifically Vugen.We can see in part of the replay  errors comes from resources during the replay where they were timed out.
If we are forced to use WinInet then this will occur, but if you can use Sockets you may want to try that option instead or a Click and Script protocol.
you can uncheck the WinInet replay instead of sockets (Windows only) in the runtime settings-preferences.This will solve the problem.

3.And the another option is to use web_set_max_retries ("X") to increase the limit of 30 sec.You can place this before the action which is failing but  I wouldn't recommend that.

HttpSendRequest time out only occurres when any transaction takes more than 30 sec to connect to server. This default 30 sec time is because of the use of WinInet Replay engine. Thus this error pops up when you are running script with winInet replay and transactions are taking more than 30 sec. Only thing to get rid of this error is to fine tune the whole system and check the backend and servers to see any request que has formed up

How do we write a user defined function in LoadRunner?

Use should create the external library that contains the function. This library must then be added to the bin directory of VuGen. And then, the user-defined function can be assigned as a parameter

Advantages of load runner

Advantages of load runner are as follows:

  • Reduces human intervention
  • Reduces the requirement of the systems
  • Helps in the better usage of time and money
  • Effective utilization of automation
  • Single point execution
  • Relationship between Response Time and Throughput

    The Throughput shows the amount of data in bytes that the Vusers received from the server in a second. When It is compared with transaction response time, throughput and response time get decreased.
    The peak throughput and highest response time would occur approximately at the same time.

    Tuesday, 16 February 2016

    SAP GUI protocol script development in Load Runner(PreRequisites)

    Before starting script development for SAP GUI the following prerequisites to be met.

    1. Enable Client scripting
    2. Enable Proper communication between SAP GUI and SAP Server.
    3. Enable server scripting

    The procedure is:


    1. Enable Client script:

    • Install SAP GUI client on Vugen and go to
    • Load Generator go to SAP GUI installation directory
    • Go to scripting Directory
    •  Verify that the scripting is available or not. If you don’t see the script directory   re install SAP GUI client with SAP scripting API option enabled.
    2. How to Enable Proper communication between SAP GUI and SAP server.
    • The port #### used by SAP GUI to communicate to the dispatcher is TCP 32***
    •  Verify that we have connectivity to this port XX=port number.
    • You need to know the system number.
    • You may need SAP router String.
    3. How to Enable server Script

    • Need admin access to the SAP Server.
    • Login to SAP server as admin RUN RZ11 TCODE
    • Enter parameter name sapgui/user_script
    • If parameter exists change current value to TRUE and Save it. Then the new script is enabled on server side.
    NOTE:  If the parameter name is not found contact SAP for correct package and support level.

    JVM MONITORING

    Acronym for Java Virtual Machine. An abstract computing machine, or virtual machine, JVM is a platform-independent execution environment that converts Java bytecode into machine language and executes it. Most programming languages compile source code directly into machine code that is designed to run on a specific microprocessor architecture or operating system, such as Windows or UNIX. A JVM -- a machine within a machine -- mimics a real Java processor, enabling Java bytecode to be executed as actions or operating system calls on any processor regardless of the operating system. 

    For example, establishing a socket connection from a workstation to a remote machine involves an operating system call. Since different operating systems handle sockets in different ways, the JVM translates the programming code so that the two machines that may be on different platforms are able to connect.


    JVM consist of following components:-

    1)Byte-code verifier :- It verify the byte-code ,it check's for unusual code.

    2)Class Loader :- After verifying Class Loader will load the byte-code into the memory for execution.

    3)Execution engine :-
    It further consist of 2 parts :-
    a)Interpreter :- It interpret the code & run.
    b)JIT(Just-in-Time Interpreter)
    JVM Hotspot defines when to use Interpreter or JIT.

    4)Garbage Collector:- It periodically check for the object on heap , whose link is broken
    So it can collect the garbage from Heap.

    5) Security Manager :- It constantly monitors the code.It is 2nd level of security.[1st level is Byte-code verifier ].

    How did you plan the Load? What are the Criteria?

    Load test is planned to decide the number of users, what kind of machines we are going to use and from where they are run. It is based on 2 important documents, Task Distribution Diagram and Transaction profile. Task Distribution Diagram gives us the information on number of users for a particular transaction and the time of the load. The peak usage and off-usage are decided from this Diagram. Transaction profile gives us the information about the transactions name and their priority levels with regard to the scenario we are deciding.

    HTTP WATCH

    Why do you need an HTTP Viewer or Sniffer?
    All web applications make extensive use of the HTTP protocol (or HTTPS for secure sites). Even simple web pages require the use of multiple HTTP requests to download HTML, graphics and javascript. The ability to view the HTTP interaction between the browser and web site is crucial to these areas of web development:
    • Trouble shooting
    • Performance tuning
    • Verifying that a site is secure and does not expose sensitive information
    How can HttpWatch Help?
    HttpWatch integrates with Internet Explorer and Firefox browsers to show you exactly what HTTP traffic is triggered when you access a web page. If you access a site that uses secure HTTPS connections, HttpWatch automatically displays the decrypted form of the network traffic.

    Conventional network monitoring tools just display low level data captured from the network. In contrast, HttpWatch has been optimized for displaying HTTP traffic and allows you to quickly see the values of headers, cookies, query strings .

    HttpWatch also supports non-interactive examination of HTTP data. When log files are saved, a complete record of the HTTP traffic is saved in a compact file. You can even examine log files that your customers and suppliers have recorded using the free Basic Edition.
    Why HttpWatch?

    Seven reasons to use HttpWatch rather than other HTTP monitoring tools:
    1. Easy to Use - start logging after just a couple of mouse clicks in Internet Explorer or Firefox. No other proxies, debuggers or network sniffers have to be configured
    2. Productive - quickly see cookies, headers, POST data and query strings without having to manually decode raw HTTP packets
    3. Robust - reliably log thousands of HTTP transactions for hours or days while tracking down intermittent problems
    4. Accurate - HttpWatch has minimal impact on the normal interaction of the browser with a web site. No extra network hops are added, allowing you to measure real world HTTP performance
    5. Flexible - HttpWatch only requires client-side installation and will work with any server side technology that renders HTML pages in Internet Explorer or Firefox. No special server-side permissions or configurations are required - ideal for use against production servers on the Internet or Intranet
    6. Comprehensive - works with HTTP compression, redirection, SSL encryption & NTLM authentication. A complete automation interface provides access to recorded data and allows HttpWatch to be controlled from most popular programming languages.
    7. Professional Support - updates and bug fixes are provided free of charge on our website and technical support is available by email, phone or fax.

    Uses of HttpWatch:
    1. Testing a web application to ensure that it is correctly issuing or setting headers that control page expiration
    2. Finding out how other sites work and how they implement certain features
    3. Checking the information that the browser is supplying when you visit a site
    4. Verifying that a secure web site is not issuing sensitive data in cookies or headers
    5. Tuning the performance of a web site by measuring download times, caching or the number of network round trips
    6. Learning about how HTTP works (useful for programming and web design classes)
    7. Alowing webmasters to fine tune the caching of images and other content
    8. Performing regression testing on production servers to verify performance and correct behavior

    CPU of Load Generator Exceeded 80%

    Recently i ran in to a load test and i saw the CPU of Load Generator Exceeded 80% and here are the ways to find out the root cause:

    There could be several things, but using 2008 machines on VMs is common. If you are using web vusers should be a small footprint.

    • Check if you have admin rights on the system or not?
    • Is CPU consumption above 80% during the entirety of the test
    • Check for any mismatch in versions in patch version
    • Try to run the agent using "Run as administrator"
    • Check for the mdrv process in the htask manager of the controller and the load generator machines while running the test
    • make sure to have the same patches level on every component, having a version mix is a real problem.
    • Please check if you have the following components installed on your LG machine McAfee Antivirus or  Symantec NetBackup

    "HttpSendRequest" failed, Windows error code=12002 - Perf Center Error_load runner error

    While running an internal application using the load runner Controller i was getting the "HttpSendRequest" failed, Windows error code=12002 - Perf Center Error .I solved these by following the below steps:

    1.Check Vugen runs script as a process or running  vusers asa  thread?
    You can check this in Run time settings-General-Miscellaneous-Multithreading then uncheck the value

    2.Are you working with WinInet, and the error itself comes from WinInet API not specifically Vugen.We can see in part of the replay  errors comes from resources during the replay where they were timed out.
    If we are forced to use WinInet then this will occur, but if you can use Sockets you may want to try that option instead or a Click and Script protocol.
    you can uncheck the WinInet replay instead of sockets (Windows only) in the runtime settings-preferences.This will solve the problem.

    3.And the another option is to use web_set_max_retries ("X") to increase the limit of 30 sec.You can place this before the action which is failing but  I wouldn't recommend that.

    HttpSendRequest time out only occurres when any transaction takes more than 30 sec to connect to server. This default 30 sec time is because of the use of WinInet Replay engine. Thus this error pops up when you are running script with winInet replay and transactions are taking more than 30 sec. Only thing to get rid of this error is to fine tune the whole system and check the backend and servers to see any request que has formed up.

    "Error -27778: SSL protocol error when attempting to connect with host" in load runner

    Recently i had some issues with SSL protocol error,while running the scripts in controller i am facing the "Error -27778: SSL protocol error when attempting to connect with host",so finally i got rid of that by using the below steps in the script

    Keep the below code at the start of of script

    use web_set_sockets_option("SSL_VERSION", "TLS");
        web_set_sockets_option("SSL_VERSION", "1");

    This forces the SSL connection to the server to use version 1 of the SSL protocol rather than letting the server suggest a version during the connection handshake.

    We had same issue on vugen 11.50 with new patch also then  we enabled the below setting
    Run-Time Settings -> Preferences -> Select "WinInet Replay Engine instead of Sockets (Windows Only)."

    WHAT IS A REVERSE PROXY SERVER?

    A proxy server is a go-between or intermediary server that forwards requests for content from multiple clients to different servers across the Internet. A reverse proxy  server is a type of proxy server that typically sits behind the firewall in a private network and directs client requests to the appropriate back-end server. A reverse proxy provides an additional level of abstraction and control to ensure the smooth flow of network traffic between clients and servers.

    Reverse proxy server benefits:


    1.Load balancing: A reverse proxy server can act as a “traffic cop,” sitting in front of your back-end servers and distributing client requests across a group of servers in a manner that maximizes speed and capacity utilization while ensuring no one server is overloaded, which can degrade performance. If a server goes down, the load balancer redirects traffic to the remaining online servers.

    2.Web acceleration:Reverse proxies can compress inbound and outbound data, as well as cache commonly requested content, both of which speed up the flow of traffic between clients and servers. They can also perform additional tasks such as SSL encryption to take load off of your web servers, thereby boosting their performance.

    3.Security and anonymity :By intercepting requests headed for your back-end servers, a reverse proxy server protects their identities and acts as an additional defense against security attacks. It also ensures that multiple servers can be accessed from a single record locater or URL regardless of the structure of your local area network.

    Error "An Authentication object was not found in the SecurityContext" in load runner

    Some times in our application with the web-services,during recording of the application VUGen doesn't record the authentication object and while replaying the script you get the error An Authentication object was not found in the Security Context

    The reason for the SOAP fault is: 

    "An Authentication object was not found in the SecurityContext"

    As mentioned by above error, the application  is mostly launched via a web-link where the run time jars / dlls are downloaded locally and application is launched. During launching itself the application takes the credentials from local system (your AD account details) and authenticates the user. In case of replaying this operation in VUGen this authentication information is not available, this can be done by sending the authentication information in the header before the first web-service request as shown below:




    Otherwise if your web service method has property for sending authentication object then you can do so in the request itself.

    What is the difference in running the Vuser as a process and as a thread? Which is more advantageous way of running Vuser?

    When Vuser is run as a process the same driver program is loaded into memory for each Vuser. This will take a large amount of memory and will limit the number of Vusers you can run on a single generator
    When Vuser is run as a thread, only one instance of driver program is shared by given number of Vusers.  You can run more number of Vusers on a single generator using the multi-threading mode.