IP Library › Granted Patent US 10,318,412
Granted Patent B1
US 10,318,412 · App. 16/024,098 · Granted Jun 11, 2019

Systems, methods, and apparatus for dynamic software generation and testing

Inventors: Gary S. McKearney, Jr. (Brooklyn, CT); Rakesh Narra (South Windsor, CT); Puneeth Lakshminarayanappa (Karnataka, IN); Rajdeep Si (Hartford, CT); David Lusignan (Woodstock, CT); Anuradha Gupta (Sitamarhi, IN)
Assignee: The Travelers Indemnity Company
G06F11/3684G06F8/10G06F8/30G06F8/60G06F8/71G06F11/3664G06F11/3688G06F11/3692
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,318,412
App. No.
16/024,098
Granted
Jun 11, 2019
Kind
B1
Abstract

Systems, apparatus, methods, and articles of manufacture provide for dynamic software generation and testing of software projects. In one example implementation, a controller device automatically defines a test case; generates an SQL definition for the automatically-defined test case, and executes the test case SQL definition to determine a test case SQL result of the test case SQL definition.

Claims (83)

1. A controller device for testing software, comprising:

a processor; and

a computer-readable medium storing instructions that when executed by the processor direct the processor to:

retrieve a stored timing requirement for executing a testing process for a software project;

retrieve a stored release version requirement for executing the testing process for the software project;

based on the timing requirement and the release version requirement, identify and retrieve stored parameters for the testing process for the software project, the stored parameters comprising:

a software release version,

a data model having at least one attribute,

at least one attribute identifier that identifies an attribute of the data model to be impacted by the software project,

a data table identifier that identifiers a data table, and

a plurality of test category statuses, each corresponding to a respective test category;

for each test category status of the plurality of test category statuses that indicates a corresponding test category is required for the testing process, automatically define and store at least one respective test case for the corresponding test category, wherein each test case comprises:

a test case identifier that identifies the respective test case,

the data table identifier,

an indication of the corresponding test category, and

a test case expected result for the test case;

retrieve a first predetermined structured query language (SQL) format for a first automatically-defined test case, based on the test category associated with the first automatically-defined test case;

generate a first test case SQL definition for the first automatically-defined test case based on the first predetermined SQL format, the data table identifier, and the at least one attribute identifier;

execute the first test case SQL definition to determine a first test case SQL result of the first test case SQL definition for the first automatically-defined test case;

compare the first test case SQL result to the test case expected result that is associated with the first automatically-defined test case, to determine a first test case status for the first automatically-defined test case;

based on at least the first test case status, determine an execution status for the testing process; and

transmit to at least one user an indication of the execution status for the testing process.

2. The controller device of claim 1 , wherein automatically defining the first automatically-defined test case comprises updating an existing smoke test case definition.

3. The controller device of claim 1 , wherein automatically defining the first automatically-defined test case comprises creating a new smoke test case definition.

4. The controller device of claim 1 , wherein the first automatically-defined test case defines a primary key check test.

5. The controller device of claim 1 , wherein the first automatically-defined test case defines a change data capture test.

6. The controller device of claim 1 , wherein the first automatically-defined test case defines a duplicate data test.

7. The controller device of claim 1 , wherein the first automatically-defined test case defines a data table completeness test.

8. The controller device of claim 1 ,

wherein the processor is in communication with a software quality management system, and

wherein the instructions when executed by the processor further direct the processor to:

upload the first automatically-defined test case to a test plan section of the software quality management system.

9. The controller device of claim 8 , wherein the instructions when executed by the processor further direct the processor to:

map, in the software quality management system, the first automatically-defined test case to a stored requirement of the testing process.

10. The controller device of claim 1 , wherein the instructions when executed by the processor further direct the processor to:

create, in the software quality management system, a test set comprising the at least one respective test case.

11. The controller device of claim 1 , wherein automatically transmitting to the at least one user the indication of the execution status comprises:

creating a message including the indication of the execution status;

determining at least one developer associated with the testing process; and

transmitting the message to the at least one developer.

12. The controller device of claim 1 , wherein the instructions when executed by the processor further direct the processor to:

transmit the software project to a production environment.

13. A method comprising:

retrieving, by a controller device in communication with a software quality management system, a stored timing requirement for executing a testing process for a software project;

retrieving a stored release version requirement for executing the testing process for the software project;

based on the timing requirement and the release version requirement, identifying and retrieving stored parameters for the testing process for the software project, the stored parameters comprising:

a software release version,

a data model having at least one attribute,

at least one attribute identifier that identifies an attribute of the data model to be impacted by the software project,

a data table identifier that identifiers a data table, and

a plurality of test category statuses, each corresponding to a respective test category;

for each test category status of the plurality of test category statuses that indicates a corresponding test category is required for the testing process, automatically defining and storing at least one respective test case for the corresponding test category, wherein each test case comprises:

a test case identifier that identifies the respective test case,

the data table identifier,

an indication of the corresponding test category, and

a test case expected result for the test case;

retrieving a first predetermined structured query language (SQL) format for a first automatically-defined test case, based on the test category associated with the first automatically-defined test case;

generating a first test case SQL definition for the first automatically-defined test case based on the first predetermined SQL format, the data table identifier, and the at least one attribute identifier;

executing the first test case SQL definition to determine a first test case SQL result of the first test case SQL definition for the first automatically-defined test case;

comparing the first test case SQL result to the test case expected result that is associated with the first automatically-defined test case, to determine a first test case status for the first automatically-defined test case;

based on at least the first test case status, determining an execution status for the testing process; and

transmitting to at least one user an indication of the execution status for the testing process.

14. The method of claim 13 , wherein automatically defining the first automatically-defined test case comprises updating an existing smoke test case definition.

15. The method of claim 13 , wherein automatically defining the first automatically-defined test case comprises creating a new smoke test case definition.

16. The method of claim 13 , wherein the first automatically-defined test case defines one of the following types of tests:

a primary key check test,

a change data capture test,

a duplicate data test,

a data table completeness test,

a straight data move test, and

a derived data move test.

17. The method of claim 13 , further comprising:

uploading the first automatically-defined test case to a test plan section of the software quality management system.

18. The method of claim 17 , further comprising:

mapping, in the software quality management system, the first automatically-defined test case to a stored requirement of the testing process.

19. The method of claim 18 , further comprising:

creating, in the software quality management system, a test set comprising the at least one test case.

20. The method of claim 13 , wherein automatically transmitting to the at least one user the indication of the execution status comprises:

creating a message including the indication of the execution status;

determining at least one developer associated with the testing process; and

transmitting the message to the at least one developer.

21. The method of claim 13 , further comprising:

transmitting the software project to a production environment.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 30, 2019
From: MCKEARNEY, GARY S., JR.; NARRA, RAKESH; SI, RAJDEEP; LUSIGNAN, DAVID; GUPTA, ANURADHA
To: THE TRAVELERS INDENMITY COMPANY
Reel/Frame 050219/0484 →
Cited By (9)
US 12,229,537 US 12,229,727 US 12,236,214 US 12,242,784 US 12,248,394 US 12,326,802 US 12,547,699 US 12,554,699 US 12,688,037