IP Library › Granted Patent US 10,691,582
Granted Patent B2
US 10,691,582 · App. 15/991,391 · Granted Jun 23, 2020

Code coverage

Inventors: John Afsal Elias Kuner (San Francisco, CA); Jun Yu (San Rafael, CA); Zhou J. Deng (Walnut Creek, CA)
Assignee: Sony Interactive Entertainment LLC
G06F11/3676G06F8/71G06F11/3684G06F11/3688G06F21/52
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,691,582
App. No.
15/991,391
Granted
Jun 23, 2020
Kind
B2
Abstract

The present disclosure describes methods and systems directed towards providing code coverage during software development. Implementation of code coverage assist developers in visualizing what portions of new code being developed can be tested via available tests as well as evaluating those portions of new code. The testing of the new code in this manner allows developers to understand whether portions of the new code have been developed properly. When the new code is determined to be satisfactory, via the tests and coverage, the new code can be incorporated into the master code branch. By testing the new code before merging, interruptions and downtime associated with the master code branch can be minimized.

Claims (45)

1. A method for identifying applicability of tests to new code sets, the method comprising:

receiving new code to be merged into a master code branch of an operational software application;

receiving a plurality of tests, each test applicable to a respective different type of code portion;

evaluating applicability of the tests to the new code, wherein evaluating the applicability of the tests comprises identifying one or more portions of the new code to which at least one of the tests is applicable and at least one other portion of the new code to which none of the tests is applicable;

generating a visual map of the new code, wherein the generated visual map:

illustrates which of the portions of the new code have been identified as the portions to which the at least one of the tests is applicable and which of the portions of the new code have been identified as the at least one other portion to which none of the tests is applicable, and

indicates an outcome of the at least one test applied to the respective identified portion of the new code;

storing the outcome of each of the tests applied to the identified portions of the new code in memory; and

merging the new code into the master code branch based on the outcome of each of the applied tests.

2. The method of claim 1 , further comprising receiving a modification to one or more of the tests, the modified tests applicable to test a new function of one of the identified portions of the new code.

3. The method of claim 2 , wherein the new function includes one or more new conditions that had not been considered by the master code branch.

4. The method of claim 1 , wherein the visual map utilizes different colors each indicating a different severity level of the outcome for each of the identified portions of the new code.

5. The method of claim 1 , wherein the visual map utilizes different colors each indicating a different threshold amount of the new code having applicable tests.

6. The method of claim 1 , wherein merging the new code into the master code branch includes saving a backup copy of a current version of the master code branch prior to merging.

7. The method of claim 1 , wherein the operational software application is a massively multiplayer online game.

8. The method of claim 1 , wherein the new code corresponds to new content to be implemented within the operational software application.

9. The method of claim 1 , wherein the new code corresponds to a patch for the operational software application.

10. The method of claim 1 , further comprising querying for tests stored in memory that are applicable to the new code, wherein the received tests are responsive to the query.

11. The method of claim 1 , wherein at least one of the received tests is applicable to identify that the new code has one or more security issues.

12. The method of claim 1 , wherein at least one of the received tests is applicable to test compatibility between the new code and the master code branch.

13. The method of claim 1 , wherein merging the new code into the master code branch is further based on the identified portions of the new code meeting at least a pre-determined threshold amount within the new code.

14. The method of claim 1 , wherein merging the new code into the master code branch is further based on the outcome for each of the applied tests meeting at least a pre-determined threshold amount of satisfactory results.

15. The method of claim 1 , wherein at least one of the identified portions of the new code includes a line of the new code, and wherein the visual map illustrates the outcome of the at least one test applied to the line of the new line.

16. A system for identifying applicability of tests to new code sets, the system comprising:

a development platform that receives:

new code to be merged into a master code branch of an operational software application, and

a plurality of tests, each test applicable to a respective different type of code portion;

a processor that executes instructions stored in memory, the processor executing the instructions to:

evaluate applicability of the tests to the new code, wherein evaluating the applicability of the tests comprises identifying one or more portions of the new code to which at least one of the tests is applicable and at least one other portion of the new code to which none of the tests is applicable,

generate a visual map of the new code, wherein the generated visual map:

illustrates which of the portions of the new code have been identified as the portions to which the at least one of the tests is applicable and which of the portions of the new code have been identified as the at least one other portion to which none of the tests is applicable, and

indicates an outcome of the at least one test applied to the respective identified portion of the new code, and

merge the new code into the master code branch based on the outcome of each of the applied tests.

17. The method of claim 1 , wherein the visual map also highlights the at least one other portion of the new code to which none of the tests is applicable.

18. A non-transitory computer-readable storage medium, having embodied thereon a program executable by a processor to perform a method for identifying applicability of tests to new code sets, the method comprising:

receiving new code to be merged into a master code branch of an operational software application;

receiving a plurality of tests, each test applicable to a respective different type of code portion;

evaluating applicability of the tests to the new code, wherein evaluating the applicability of the tests comprises identifying one or more portions of the new code to which at least one of the tests is applicable and at least one other portion of the new code to which none of the tests is applicable;

generating a visual map of the new code, wherein the generated visual map:

illustrates which of the portions of the new code have been identified as the portions to which the at least one of the tests is applicable and which of the portions of the new code have been identified as the at least one other portion to which none of the tests is applicable, and

indicates an outcome of the at least one test applied to the respective identified portion of the new code;

storing the outcome of each of the tests applied to the identified portions of the new code in memory; and

merging the new code into the master code branch based on the outcome of each of the applied tests.

19. The method of claim 1 , wherein the visual map illustrates a plurality of different code portions within a project, and wherein a respective size of each code portion is illustrated in proportion to an overall size of the project.

20. The method of claim 1 , wherein the visual map allows access to another visual map associated with a second project, the visual map for the second project illustrating different code portions within the second project.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 23, 2018
From: KUNER, JOHN AFSAL ELIAS; YU, JUN; DENG, ZHOU J.
To: SONY INTERACTIVE ENTERTAINMENT LLC
Reel/Frame 047521/0304 →
Continuity (1)
Related Publication 20190370156A1 · Dec 5, 2019