How to perform a stress test with WCAT tool
Background:
Here suppose we have two machines: one is the web server, and another one which simulates a client to send out HTTP requests. And the web server name is renhe2.
Normally speaking, the steps to have a load test with WCAT can be summarized as below 3 steps:
§ Initialize the WCAF Controller
§ Start the web server to make sure the web server get prepared.
§ Begin test by the WCAT client.
We will list the details for each step in the following.
Implementation
Step 1: Initialize the WCAF Controller
Actually all the HTTP request are sent out by the WCAT controller during the test. So there are lots of parameters that we need to configure to instruct the WCAT controller how to behavior. For instance, how many clients you want to simulate, how frequently does the HTTP request is sent, which URL you want to test, how long you want the test persists. Actually all these parameters can be specified in 3 kinds of files, they are: configuration file, script file, and distribution file.
a) Configuration file:
Configuration file is to determine how many clients are included in the test and which test instructions to send to the clients. You can get more details from the help file of WCAT tool.
Below is a configuration file (config.txt) just for your reference:
Warmuptime 5s
Duration 60s
CooldownTime 5s
NumClientMachines 1
NumClientThreads 20
b) Script file:
Script file is to define the client and server transactions that are performed during the experimental period. After the controller is started and connected to the test clients, the controller application reads the script file and sends instructions to each client. These instructions describe the content requests that the clients will send to the server during the experimental period.
Below is a script file(script.txt) just for your reference:
NEW TRANSACTION
classId = 1
NEW REQUEST HTTP
Verb = "GET"
URL = "https://renhe2/ASPXTest/Default.aspx"
NEW TRANSACTION
classId = 2
NEW REQUEST HTTP
Verb = "GET"
URL = https://renhe2/iisstart.htm
c) Distribution file:
The controller and the client computers use the distribution file to assign a percentage of total test time to each transaction. Each listed transaction is assigned a weight value. The weight identifies the portion (percentage) of the experimental period during which each transaction is performed.
Below is a distribution file (distritution.txt) just for your reference:
1 80
2 20
After above 3 configuration files get prepared, we can start the WCAT controller with below CMD:
C:\Program Files\IIS Resources\WCAT Controller>wcctl.exe -c config.txt -d distri
tion.txt -s script.txt -a renhe2
Below is the screenshot when the WCAT controller is started.
Step 2: Start the web server to make sure the web server get prepared.
This steps is very easy, just make sure your web server is online.
Step 3: Begin test by the WCAT client
Type below CMD to start WCAT client:
C:\Program Files\IIS Resources\WCAT Client>wcclient.exe <controller>
For example:
C:\Program Files\IIS Resources\WCAT Client>wcclient.exe v-renhe0302
Below is the screenshot when the WCAT is running:
NOTE:
Once the test is completed, you can found the summary log in the folder where the WCAT controller is located.
Regards,
Winston He from APGC DSI Team
Comments
- Anonymous
November 14, 2015
can we use WCAT to hit web site URLs to compile them after any change to avoid delays in processing request when end user browse the site.