IP Library Granted Patent US 10,705,947
Granted Patent B2
US 10,705,947 · App. 16/069,661 · Granted Jul 7, 2020

Impairment in an application test execution

Inventors: Shlomo Jacobson (Yehud, IL); Yoran Shamir (Yehud, IL); Don Moore (Yehud, IL)
Assignee: MICRO FOCUS LLC
G06F11/3688G06F11/3664
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 10,705,947
App. No.
16/069,661
Granted
Jul 7, 2020
Kind
B2
Abstract

A method includes, in a distributed environment for a test execution of an application, measuring impairment in the distributed environment; and, during the application test execution, subtracting the measured impairment from a test impairment that is artificially introduced into the application test execution based on a test profile.

Claims (48)

1. A method performed by a system comprising a hardware processor, comprising:

in a distributed test environment for a test execution of a program, measuring an actual impairment in communication of data in the distributed test environment;

computing an artificial impairment based on subtracting the actual impairment from a test impairment that is to be artificially introduced into the test execution based on a test profile; and

when performing the test execution of the program in the distributed test environment,

introducing the artificial impairment into the distributed test environment, and

simulating a real operating environment using an impairment that includes the introduced artificial impairment added to the actual impairment in the distributed test environment.

2. The method of claim 1 , further comprising iteratively measuring values of the actual impairment in the distributed test environment and adjusting an amount of the artificial impairment introduced into the distributed test environment based on each respective value of the values of the actual impairment during the test execution of the program.

3. The method of claim 1 , wherein the actual impairment comprises an actual latency in communication of data packets in the distributed test environment, and measuring the actual latency in the distributed test environment comprises:

recording a transit timestamp for a data packet forwarded in the distributed test environment; and

upon receipt of an acknowledgment message for the data packet, calculating a round-trip time based on the recorded transit timestamp.

4. The method of claim 1 , wherein the actual impairment comprises an actual packet loss rate in communication of data packets in the distributed test environment, and measuring the actual packet loss rate in the distributed test environment comprises:

recording a transit timestamp for a data packet forwarded in the distributed test environment; and

upon failing to receive an acknowledgment message for the data packet within a pre-configured time-out, recording a packet loss event.

5. The method of claim 1 , wherein the test execution of the program in the distributed test environment comprises a communication between a client and a server, the method further comprising:

measuring a first impairment to the client from a network virtualization point in the distributed test environment; and

measuring a second impairment to the server from the network virtualization point in the distributed test environment,

wherein the actual impairment comprises the first impairment and the second impairment, and the artificial impairment introduced into the distributed test environment is applied to data transmissions at the client in the distributed test environment and data transmissions at the server in the distributed test environment.

6. The method of claim 1 , further comprising:

for a plurality of sessions, measuring respective actual impairments in the distributed test environment; and

calculating the actual impairment based on an average impairment of the actual impairments in the plurality of sessions.

7. The method of claim 6 , wherein the test execution of the program in the distributed test environment comprises a communication between a client and a server, the method further comprising, for each session of the plurality of sessions:

measuring a first impairment to the client from a network virtualization point in the distributed test environment;

measuring a second impairment to the server from the network virtualization point in the distributed test environment; and

combining the first and second impairments before calculating the average impairment.

8. The method of claim 7 , further comprising using half of the average impairment as the actual impairment to be subtracted from the test impairment used to send a data packet either to the client or the server.

9. A non-transitory computer-readable medium, comprising instructions that, when executed, cause a test device to:

access a test profile to determine whether a test impairment is to be introduced artificially into a test execution of a program in a distributed test environment;

responsive to the test profile directing introduction of the test impairment, measure an actual impairment in communication of data in the distributed test environment and subtract the actual impairment from the test impairment;

separate from the actual impairment, introduce an artificial impairment into the test execution of the program in the distributed test environment, the artificial impairment being the actual impairment minus subtracted from the test impairment; and

when performing the test execution of the program in the distributed test environment, simulate a real operating environment using a simulated impairment that includes the introduced artificial impairment added to the actual impairment in the distributed test environment.

10. The non-transitory computer-readable medium of claim 9 , wherein the test profile indicates whether the test impairment is to be applied for a server-side transmission independent of a client-side, for a client-side transmission independent of a server-side, or for both the sever-side transmission and the client-side transmission.

11. A system comprising:

a processor;

a non-transitory storage medium storing instructions executable on the processor to:

measure an actual impairment of packets communicated in a distributed test environment; and

during a test execution of a program in the distributed test environment:

compute an artificial impairment based on subtracting the actual impairment from a specified test impairment,

selectively introduce the artificial impairment into communication of packets in the distributed test environment, and

simulate a real operating environment using an impairment that includes the introduced artificial impairment added to the actual impairment in the distributed test environment.

12. The system of claim 11 , wherein the instructions are executable on the processor to receive a test profile including the specified test impairment.

13. The system of claim 12 , wherein the instructions are executable on the processor to receive a setting determining whether the specified test impairment is to be applied independently on a server or a client during the test execution of the program.

14. The system of claim 11 , wherein the instructions are executable on the processor to measure the actual impairment by averaging impairment values determined in a plurality of sessions in the distributed test environment.

15. The system of claim 14 , wherein the instructions are executable on the processor to combine impairments measured on a client-side of a network virtualization point with impairments measured on a server-side of the network virtualization point to measure the actual impairment.

16. The method of claim 1 , wherein the test execution of the program in the distributed test environment comprises a communication between a client and a server, and wherein the artificial impairment introduced into the distributed test environment is applied to data transmissions at the client in the distributed test environment or data transmissions at the server in the distributed test environment.

17. The method of claim 1 , wherein the distributed test environment simulates the real operating environment using a network virtualization that includes the impairment including the introduced artificial impairment added to the actual impairment.

18. The method of claim 17 , wherein the impairment simulates the test impairment specified by the test profile.

19. The non-transitory computer-readable medium of claim 9 , wherein the distributed test environment simulates the real operating environment using a network virtualization that includes the simulated impairment including the introduced artificial impairment added to the actual impairment.

20. The system of claim 11 , wherein the distributed test environment simulates the real operating environment using a network virtualization that includes the impairment including the introduced artificial impairment added to the actual impairment.

Assignments (7)
RELEASE OF SECURITY INTEREST REEL/FRAME 052295/0041 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC; MICRO FOCUS SOFTWARE INC. (F/K/A NOVELL, INC.); NETIQ CORPORATION
Reel/Frame 062625/0754 →
RELEASE OF SECURITY INTEREST REEL/FRAME 052294/0522 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC; MICRO FOCUS SOFTWARE INC. (F/K/A NOVELL, INC.); NETIQ CORPORATION
Reel/Frame 062624/0449 →
SECURITY AGREEMENT Recorded Apr 2, 2020
From: MICRO FOCUS LLC; BORLAND SOFTWARE CORPORATION; MICRO FOCUS SOFTWARE INC.; NETIQ CORPORATION; MICRO FOCUS (US), INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 052295/0041 →
SECURITY AGREEMENT Recorded Apr 2, 2020
From: MICRO FOCUS LLC; BORLAND SOFTWARE CORPORATION; MICRO FOCUS SOFTWARE INC.; NETIQ CORPORATION; MICRO FOCUS (US), INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 052294/0522 →
CHANGE OF NAME Recorded Aug 8, 2019
From: ENTIT SOFTWARE LLC
To: MICRO FOCUS LLC
Reel/Frame 050004/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 13, 2018
From: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
To: ENTIT SOFTWARE LLC
Reel/Frame 047064/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 13, 2018
From: JACOBSON, SHLOMO; SHAMIR, YORAM; MOORE, DON
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 046860/0671 →
Continuity (1)
Related Publication 20190034324A1 · Jan 31, 2019