IP Library Granted Patent US 9,785,533
Granted Patent B2
US 9,785,533 · App. 13/317,440 · Granted Oct 10, 2017

Session template packages for automated load testing

Inventors: Charles A. Vazac (San Francisco, CA); Tana Christine Jackson (San Francisco, CA); Tal Broda (Sunnyvale, CA); Kendall Cosby (Aurora, CA)
Assignee: SOASTA, Inc.
G06F11/3433G06F11/3414H04L43/14H04L43/50G06F11/3476G06F2201/875
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,785,533
App. No.
13/317,440
Granted
Oct 10, 2017
Kind
B2
Abstract

A computer-implemented method includes scanning a clip of messages that includes message requests and message responses arranged in a sequence. The scanning is performed based on one or more search parameters and produces a list of one or more name/value pairs. The clip is utilized to perform a load test on a target website. Each name/value pair has a corresponding value. For each name/value pair in the list a message request in the clip is identified where the corresponding value is first used. Then, looking backwards in the sequence from the message request where the corresponding value is first used, prior message responses are located where the corresponding value is found. An extraction point is specified in the clip for the corresponding value as a latest message response in the sequence where the corresponding value was returned from the target website. The corresponding value is then stored as a property.

Claims (26)

1. A computer automated method for creating a session template comprising:

automatically scanning a clip of messages that includes message requests and message responses arranged in a sequence, the clip being utilized to perform a load test on a target website server, the load test comprising communications from a plurality of virtual users to the target website server, the communications being maintained through the exchange of tokens during running of the load test, the scanning being performed based on one or more search parameters and producing a list of one or more name/value pairs, each name/value pair having a corresponding value which comprises a token used for authentication of a virtual user, the corresponding value produced by the target website server changing over the sequence;

for each name/value pair in the list:

identifying a message request in the clip where the corresponding value is first found;

looking backwards in the sequence from the message request where the corresponding value is first found to locate one or more prior message responses where the corresponding value is found;

specifying an extraction point in the clip for the corresponding value as a latest message response in the sequence where the corresponding value was returned from the target website server;

storing the corresponding value as a variable of the session template, wherein at run-time of the load test the stored variable of the session template being applied to subsequent message requests that require a correct dynamic value sent back to the website;

bundling a plurality of session templates into a session template package; and

applying the session template package to the clip.

2. The computer automated method of claim 1 further comprising providing a user interface (UI) that allows a user to specify the one or more search parameters prior to the scanning of the clip of messages.

3. The computer automated method of claim 1 wherein the variable is stored in a machine-readable storage medium.

4. The computer automated method of claim 1 further comprising substituting the variable in subsequent message requests in the sequence after the extraction point where the value is found.

5. The computer automated method of claim 1 further comprising discarding the name/value pair in the event that the corresponding value is not found in a message response prior to the message request where the corresponding value is first found.

6. A computer program product comprising a non-transitory computer-readable medium encoded with programmed instructions, execution of the programmed instructions by a computer operable to:

automatically scan a clip of messages that includes message requests and message responses arranged in a sequence, the clip being utilized to perform a load test on a target website server, the load test comprising communications from a plurality of virtual users to the target website server, the communications being maintained through the exchange of tokens during running of the load test, the scan being performed based on one or more search parameters and producing a list of one or more name/value pairs, each name/value pair having a corresponding value which comprises a token used for authentication of a virtual user, the corresponding value comprising a dynamic value produced by the target website server, the dynamic value changing over the sequence;

for each name/value pair in the list:

identify a message request in the clip where the corresponding value is first found;

look backwards in the sequence from the message request where the corresponding value is first found to locate one or more prior message responses where the corresponding value is found;

specify an extraction point in the clip for the corresponding value as a latest message response in the sequence where the corresponding value was returned from the target website server;

store the corresponding value as a variable of a session template, wherein at run-time of the load test the stored variable of the session template being applied to subsequent message requests that require a correct dynamic value sent back to the website;

bundle a plurality of session templates into a session template package; and

apply the session template package to the clip.

7. The computer program product of claim 6 wherein execution of the programmed instructions by the computer is further operable to provide a user interface (UI) that allows a user to specify the one or more search parameters prior to the scanning of the clip of messages.

8. The computer program product of claim 6 wherein the variable is stored in a machine-readable storage medium.

9. The computer program product of claim 6 wherein execution of the programmed instructions by the computer is further operable to substitute the variable in one or more subsequent message requests in the sequence after the extraction point where the name/value pair is found.

10. The computer program product of claim 6 wherein execution of the programmed instructions by the computer is further operable to discard the name/value pair in the event that the corresponding value is not found in a message response prior to the message request where the corresponding value is first found.

Assignments (3)
CORRECTIVE ASSIGNMENT TO CORRECT THE 15338002 RECORDED ON PREVIOUSLY RECORDED ON REEL 044798 FRAME 0558. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNOR (S) HEREBY CONFIRMS THE MERGER. Recorded Apr 2, 2018
From: SOASTA INC.
To: AKAMAI TECHNOLOGIES, INC.
Reel/Frame 046110/0306 →
MERGER Recorded Feb 1, 2018
From: SOASTA, INC.
To: AKAMAI TECHNOLOGIES, INC.
Reel/Frame 044798/0558 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 18, 2011
From: VAZAC, CHARLES A.; JACKSON, TANA CHRISTINE; BRODA, TAL; COSBY, KENDALL
To: SOASTA, INC.
Reel/Frame 027256/0287 →
Continuity (1)
Related Publication 20130097307A1 · Apr 18, 2013