IP Library Granted Patent US 11,416,380
Granted Patent B2
US 11,416,380 · App. 16/742,470 · Granted Aug 16, 2022

Micro services tests prioritization

Inventors: Avitan Gefen (Tel Aviv, IL); Roi Gamliel (Moshav Tkuma, IL); Amihai Savir (Sansana, IL)
Assignee: EMC IP HOLDING COMPANY LLC
G06F11/3688G06F11/3672G06F11/3684G06F8/36G06F8/60G06F11/3604G06F11/3636G06F11/3664G06F11/3676G06F16/8373G06F16/906G06F16/9024
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 11,416,380
App. No.
16/742,470
Granted
Aug 16, 2022
Kind
B2
Abstract

One example method includes identifying a changed microservice whose code has been changed, mapping, for each microservice in a group of microservices that includes the changed microservice, microservice dependencies associated with the changed microservice, determining, for each microservice in the group, a relative risk that the microservice will be adversely affected by the change to the code of the changed microservice, and based on the respective relative risks, generating a test order indicating an order in which the microservices in the group will be tested.

Claims (28)

1. A method, comprising:

identifying a changed microservice whose code has been changed;

mapping, for each microservice in a group of microservices that includes the changed microservice, microservice dependencies associated with the changed microservice;

determining, for each microservice in the group, a relative risk that the microservice will be adversely affected by the change to the code of the changed microservice, wherein the relative risk for each microservice in the group corresponds to a respective distance between that microservice and the changed microservice, and wherein the distances respectively associated with the microservices in the group are determined by a traversing process that traverses a graphical structure having nodes that each represent a respective microservice, and the traversing process commences at a root location and traverses all the microservices that are at a first distance from the changed microservice; and

based on the respective relative risks, generating a test order indicating an order in which the microservices in the group will be tested.

2. The method as recited in claim 1 , wherein the traversing process is performed for all microservices up to, and including, a distance ‘n’ from the changed microservice, wherein ‘n’ is any positive integer equal to, or greater than, 1.

3. The method as recited in claim 2 , wherein as between first and second distances, where the first distance is greater than the second distance, the microservice at the first distance has a relatively lower risk of a problem occurring due to the code change than the microservice at the second distance.

4. The method as recited in claim 2 , wherein any microservices, represented by a respective node in the graphical structure, that are beyond a boundary distance greater than ‘n’ from the root node are not traversed by the traversing process.

5. The method as recited in claim 1 , wherein mapping microservice dependencies comprises one or both of: identifying a microservice that is a consumer of the changed microservice; and, identifying a microservice that is provided to the changed microservice.

6. The method as recited in claim 1 , wherein the tests are ordered from highest risk to lowest risk of the respective associated microservices.

7. The method as recited in claim 1 , wherein the microservice dependencies are mapped using information included in a service mesh.

8. The method as recited in claim 1 , wherein each microservice corresponds to a different respective test.

9. The method as recited in claim 1 , wherein a microservice immediately downstream of the changed microservice has a relatively higher relative risk than either of: a microservice upstream of the changed microservice; and a microservice downstream of the microservice that is immediately downstream of the changed microservice.

10. The method as recited in claim 1 , further comprising performing testing of each of the microservices in the test order.

11. A non-transitory storage medium having stored therein instructions that are executable by one or more hardware processors to perform operations comprising:

identifying a changed microservice whose code has been changed;

mapping, for each microservice in a group of microservices that includes the changed microservice, microservice dependencies associated with the changed microservice;

determining, for each microservice in the group, a relative risk that the microservice will be adversely affected by the change to the code of the changed microservice, wherein the relative risk for each microservice in the group corresponds to a respective distance between that microservice and the changed microservice, and wherein the distances respectively associated with the microservices in the group are determined by a traversing process that traverses a graphical structure having nodes that each represent a respective microservice, and the traversing process commences at a root location and traverses all the microservices that are at a first distance from the changed microservice; and

based on the respective relative risks, generating a test order indicating an order in which the microservices in the group will be tested.

12. The non-transitory storage medium as recited in claim 11 , wherein the traversing process is performed for all microservices up to, and including, a distance ‘n’ from the changed microservice, wherein ‘n’ is any positive integer equal to, or greater than, 1.

13. The non-transitory storage medium as recited in claim 12 , wherein as between first and second distances, where the first distance is greater than the second distance, the microservice at the first distance has a relatively lower risk of a problem occurring due to the code change than the microservice at the second distance.

14. The non-transitory storage medium as recited in claim 12 , wherein any microservices, represented by a respective node in the graphical structure, that are beyond a boundary distance greater than ‘n’ from the root node are not traversed by the traversing process.

15. The non-transitory storage medium as recited in claim 11 , wherein mapping microservice dependencies comprises one or both of: identifying a microservice that is a consumer of the changed microservice; and, identifying a microservice that is provided to the changed microservice.

16. The non-transitory storage medium as recited in claim 11 , wherein the tests are ordered from highest risk to lowest risk of the respective associated microservices.

17. The non-transitory storage medium as recited in claim 11 , wherein the microservice dependencies are mapped using information included in a service mesh.

18. The non-transitory storage medium as recited in claim 11 , wherein each microservice corresponds to a different respective test.

19. The non-transitory storage medium as recited in claim 11 , wherein a microservice immediately downstream of the changed microservice has a relatively higher relative risk than either of: a microservice upstream of the changed microservice; and a microservice downstream of the microservice that is immediately downstream of the changed microservice.

20. The non-transitory storage medium as recited in claim 11 , wherein the operations further comprise performing testing of each of the microservices in the test order.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053311/0169) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0742 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052216/0758) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0680 →
RELEASE OF SECURITY INTEREST AF REEL 052243 FRAME 0773 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0152 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 053311/0169 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 26, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 052243/0773 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Mar 24, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052216/0758 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 14, 2020
From: GEFEN, AVITAN; GAMLIEL, ROI; SAVIR, AMIHAI
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 051511/0589 →
Cited By (1)
US 12,561,237