IP Library › Granted Patent US 8,977,599
Granted Patent B2
US 8,977,599 · App. 12/944,198 · Granted Mar 10, 2015

Method and system for testing client-server applications

Inventors: Nityanand Sharma (Tampa, FL); Nitesh Malviya (Tampa, FL)
Assignee: Verizon Patent and Licensing Inc.
G06F11/3672
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 8,977,599
App. No.
12/944,198
Filed
Nov 11, 2010
Granted
Mar 10, 2015
Kind
B2
Art Unit
2158
USPC
707/769
Abstract

A database-driven testing method and system for testing client-server applications are described. The system first receives a command to test a module on a server and identifies in a database a message list corresponding to the module. The message list indicates at least a request message and an expected response message supported by the module to be tested. The system then retrieves from the database a plurality of parameters for the messages in the message list and constructs the request message based on the parameters. The system then transmits the request message to the module on the server, receives a server response message from the server in response to the request message, and compares the server response message with the expected response message.

Claims (41)

1. A method for testing, comprising:

receiving a command to test a plurality of modules residing on a server, the command including identifications of the modules;

identifying in a database one or more message lists corresponding to the modules, the one or more message lists defining, for the respective modules, at least a request message and an expected response message corresponding to the request message;

retrieving, for the respective modules from the database, definitions of the request message and the expected response message and a plurality of parameters for the request message and the expected response message;

constructing copies of the request message and the expected response message for the respective modules based on the definitions and the parameters;

generating child processes for the respective modules to be tested;

within the child process for each respective module, performing the following steps:

transmitting the constructed copy of the request message to the respective module;

receiving a server response message from the server in response to transmitting the copy of the request message to the respective module; and

comparing, for the respective module, the server response message with the constructed copy of the expected response message.

2. The method of claim 1 , wherein identifying a message list further comprises:

retrieving from the database module names associated with the respective modules; and

retrieving from the database the one or more message lists corresponding to the modules based on the corresponding module names, the one or more message lists including a message identifier and a message name associated with each message.

3. The method of claim 1 , further comprising:

creating templates for the request message and the expected response message in accordance with the definitions.

4. The method of claim 3 , wherein the definitions define a message identification field, one or more parameter name fields, and one or more parameter value fields associated with the parameter name fields.

5. The method of claim 3 , further comprising constructing copies of the request message and the expected response message based, additionally, on the templates.

6. The method of claim 1 , wherein the parameters include a parameter name and a parameter value.

7. The method of claim 1 , wherein comparing the server response message with the constructed copy of the expected response message further comprises:

matching parameters of the server response message and the constructed copy of the parameters of the expected response message; and

adding a comparison result to a report.

8. A non-transitory computer-readable storage medium including instructions which, when executed by a processor, cause the processor to:

receive a command to test a plurality of modules residing on a server, the command including identifications of the modules;

identify in a database one or more message lists corresponding to the modules, the one or more message lists defining, for the respective modules, at least a request message and an expected response message corresponding to the request message;

retrieve, for the respective modules from the database, definitions of the request message and the expected response message and a plurality of parameters for the request message and the expected response message;

construct copies of the request message and the expected response message for the respective modules based on the definitions and the parameters; and

generate child processes for the respective modules to be tested;

wherein within the child process for each respective module, the instructions cause the processor to:

transmit the constructed copy of the request message to the respective module;

receive a server response message from the server in response to the transmission of the copy of the request message to the respective module; and

compare, for the respective module, the server response message with the constructed copy of the expected response message.

9. The computer-readable medium of claim 8 , wherein the instructions for causing the processor to identify a request message further comprise instructions for causing the processor to:

retrieve from the database module names associated with the respective modules; and

retrieve from the database the one or more message lists corresponding to the modules based on the corresponding module names, the one or more message lists including a message identifier and a message name associated with each message.

10. The medium of claim 8 , further comprising instructions for causing the processor to create templates for the request message and the expected response message in accordance with the definitions.

11. The medium of claim 10 , wherein the definitions define a message identification field, one or more parameter name fields, and one or more parameter value fields associated with the parameter name fields.

12. The medium of claim 10 , further comprising instructions for causing the processor to construct copies of the request message and the expected response message based, additionally, on the templates.

13. The medium of claim 8 , wherein the parameters include a parameter name and a parameter value.

14. The medium of claim 8 , where the instructions for causing the processor to compare the server response message with the constructed copy of the expected response message further comprise instructions for causing the processor to:

match parameters of the server response message and the constructed copy of the parameters of the expected response message; and

add a comparison result to a report.

Assignments (3)
CORRECTIVE ASSIGNMENT TO CORRECT THE LAST NAME OF THE SECOND INVENTOR PREVIOUSLY RECORDED AT REEL: 025349 FRAME: 770. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 29, 2015
From: SHARMA, NITYANAND; MALVIYA, NITESH
To: VERIZON PATENT AND LICENSING INC.
Reel/Frame 034859/0359 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 18, 2010
From: SHARMA, NITYANAND; MALVIVA, NITESH
To: VERIZON PATENT AND LICENSING INC
Reel/Frame 025307/0100 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 11, 2010
From: SHARMA, NITYANAND; MALVIVA, NITESH
To: VERIZON PATENT AND LICENSING INC.
Reel/Frame 025349/0770 →
Continuity (1)
Related Publication 20120124074A1 · May 17, 2012