IP Library Granted Patent US 8,433,811
Granted Patent B2
US 8,433,811 · App. 13/153,797 · Granted Apr 30, 2013

Test driven deployment and monitoring of heterogeneous network systems

Inventors: Kowsik Guruswamy (Sunnyvale, CA); James Maze (Sunnyvale, CA)
Assignee: Spirent Communications, Inc.
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,433,811
App. No.
13/153,797
Granted
Apr 30, 2013
Kind
B2
Abstract

A test system (and corresponding method and computer program product) for generating unit tests for a heterogeneous network system and validating test results to ensure that the network system functions properly is described. In one embodiment, the test system is an appliance that is capable of normalizing communication protocols supported by component systems of the network system. The test system creates objects and methods corresponding to component systems and their supported protocol commands in the network system, and generates unit test cases based on the objects, the methods, and the normalized protocols. The test system transmits the unit test cases to the component systems, receives test results, and validates the test results to ensure that the network system functions properly.

Claims (60)

1. A method for testing a heterogeneous network including a plurality of interconnected component systems, each component system supporting one or more communication protocols, the method comprising:

normalizing communication protocols supported by the plurality of component systems into corresponding protocol grammars;

after the normalizing, representing the plurality of component systems as a set of objects with methods corresponding to supported protocol commands;

after the representing, generating a unit test for the heterogeneous system comprising a collection of method calls that correspond with a series of interactions among the plurality of component systems;

after generating the unit test, converting the collection of method calls into test protocol messages based on the corresponding protocol grammars;

after the converting, transmitting the test protocol messages to the plurality of component systems;

monitoring returning messages received from the plurality of component systems in response to the test protocol messages; and

determining whether the heterogeneous network functions properly based on the returning messages received from the plurality of component systems.

2. The method of claim 1 , wherein the set of objects with methods are displayed in an Integrated Development Environment, and a user can program the collection of method calls using the set of objects and methods.

3. The method of claim 1 , further comprising:

prior to the steps of normalizing and representing, discovering the plurality of component systems and their supported communication protocols and protocol commands by sending messages to component systems and observing responses to those messages.

4. The method of claim 1 , further comprising adding assertions into the returning messages to validate future returning messages.

5. A computer program product having a non-transitory computer-readable medium having computer program instructions recorded thereon for testing a heterogeneous network including a plurality of interconnected component systems, each supporting one or more communication protocols, the computer program instruction comprising instructions for:

normalizing communication protocols supported by the plurality of component systems into corresponding protocol grammars;

representing the plurality of component systems as a set of objects with methods corresponding to supported protocol commands;

generating a unit test for the heterogeneous system comprising a collection of method calls that correspond with a series of interactions among the plurality of component systems;

converting the collection of method calls into test protocol messages based on the corresponding protocol grammars;

transmitting the test protocol messages to the plurality of component systems;

monitoring returning messages received from the plurality of component systems in response to the test protocol messages; and

determining whether the heterogeneous network functions properly based on the returning messages received from the plurality of component systems.

6. The computer program produce of claim 5 , wherein the set of objects with methods are displayed in an Integrated Development Environment, and a user can program the collection of method calls using the set of objects and methods.

7. The computer program product of claim 5 , wherein the computer program instructions further comprise instructions for:

prior the normalizing and representing, discovering the plurality of component systems and their supported communication protocols and protocol commands by sending messages to component systems and observing responses to those messages.

8. The computer program product of claim 5 , wherein the computer program instructions further comprise instructions for:

adding assertions into the returning messages to validate future returning messages.

9. An apparatus for testing a heterogeneous network including a plurality of interconnected component systems, each supporting one or more communication protocols, the apparatus comprising:

a protocol engine configured to normalize communication protocols supported by the plurality of component systems into corresponding protocol grammars, represent the plurality of component systems as a set of objects with methods corresponding to supported protocol commands, generate a unit test for the heterogeneous system comprising a collection of method calls that correspond with a series of interactions among the plurality of component systems, convert the collection of method calls into test protocol messages based on the corresponding protocol grammars, and transmit the test protocol messages to the plurality of component systems;

an assertion engine configured to determine whether the heterogeneous network function properly based on returning messages received from the plurality of component systems in response to the test protocol messages; and

a data store configured to store the protocol grammars, the set of objects with methods, and the collection of method calls.

10. A method for testing a heterogeneous network including a plurality of interconnected component systems, each component system supporting one or more communication protocols, the method comprising:

normalizing communication protocols supported by the plurality of component systems into corresponding protocol grammars;

representing the plurality of component systems as a set of objects with methods corresponding to supported protocol commands;

generating a unit test for the heterogeneous system comprising a collection of method calls that correspond with a series of interactions among the plurality of component systems;

converting the collection of method calls into test protocol messages based on the corresponding protocol grammars;

transmitting the test protocol messages to the plurality of component systems;

monitoring returning messages received from the plurality of component systems in response to the test protocol messages;

determining whether the heterogeneous network functions properly based on the returning messages received from the plurality of component systems;

extracting information regarding interdependencies among the system components;

generating test messages that verify that the interdependencies remain valid;

sending the test messages;

observing the responses to the test messages; and

verifying the interdependencies remain valid among the system components based on the responses to the test messages.

11. A computer program product having a non-transitory computer-readable medium having computer program instructions recorded thereon for testing a heterogeneous network including a plurality of interconnected component systems, each supporting one or more communication protocols, the computer program instruction comprising instructions for:

normalizing communication protocols supported by the plurality of component systems into corresponding protocol grammars;

representing the plurality of component systems as a set of objects with methods corresponding to supported protocol commands;

generating a unit test for the heterogeneous system comprising a collection of method calls that correspond with a series of interactions among the plurality of component systems;

converting the collection of method calls into test protocol messages based on the corresponding protocol grammars;

transmitting the test protocol messages to the plurality of component systems;

monitoring returning messages received from the plurality of component systems in response to the test protocol messages;

determining whether the heterogeneous network functions properly based on the returning messages received from the plurality of component systems;

extracting information regarding interdependencies among the system components;

generating test messages that verify that the interdependencies remain valid;

sending the test messages;

observing the responses to the test messages; and

verifying the interdependencies remain valid among the system components based on the responses to the test messages.

12. An apparatus for testing a heterogeneous network including a plurality of interconnected component systems, each supporting one or more communication protocols, the apparatus comprising:

a protocol engine configured to normalize communication protocols supported by the plurality of component systems into corresponding protocol grammars, represent the plurality of component systems as a set of objects with methods corresponding to supported protocol commands, generate a unit test for the heterogeneous system comprising a collection of method calls that correspond with a series of interactions among the plurality of component systems, convert the collection of method calls into test protocol messages based on the corresponding protocol grammars, and transmit the test protocol messages to the plurality of component systems;

an assertion engine configured to determine whether the heterogeneous network functions properly based on returning messages received from the plurality of component systems in response to the test protocol messages; and

a data store configured to store the protocol grammars, the set of objects with methods, and the collection of method calls,

wherein the protocol engine is further configured to extract information regarding the interdepedencies among the system components, and is configured to generate test messages that verify that the interdependencies remain valid, and to transmit the test messages that verify that the interdependencies remain valid, and wherein the assertion engine is further configured to determine, based on returning responses to the test messages, that the interdependencies remain valid among the system components.

Assignments (6)
RELEASE OF SECURITY INTEREST AT REEL/FRAME 73189/0873 Recorded May 28, 2026
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: INERTIAL LABS, INC.; VIAVI SOLUTIONS INC.; VIAVI SOLUTIONS LICENSING LLC
Reel/Frame 075642/0381 →
SECURITY INTEREST Recorded Nov 14, 2025
From: VIAVI SOLUTIONS INC.; VIAVI SOLUTIONS LICENSING LLC; INERTIAL LABS, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS AGENT
Reel/Frame 073571/0137 →
SECURITY AGREEMENT Recorded Oct 21, 2025
From: INERTIAL LABS, INC.; VIAVI SOLUTIONS INC.; VIAVI SOLUTIONS LICENSING LLC
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
Reel/Frame 073189/0873 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 20, 2025
From: SPIRENT COMMUNICATIONS, INC.
To: VIAVI SOLUTIONS LICENSING LLC
Reel/Frame 073121/0549 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 13, 2014
From: MU DYNAMICS, INC
To: SPIRENT COMMUNICATIONS, INC.
Reel/Frame 033099/0185 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 6, 2011
From: GURUSWAMY, KOWSIK; MAZE, JAMES
To: MU DYNAMICS, INC.
Reel/Frame 026395/0653 →
Continuity (2)
Continuation 12234450 · Sep 19, 2005
Related Publication 20110238852A1 · Sep 29, 2011