System and method for software test analysis
US-2024419581-A1 · Dec 19, 2024 · US
US2023333972A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2023333972-A1 |
| Application number | US-202318334786-A |
| Country | US |
| Kind code | A1 |
| Filing date | Jun 14, 2023 |
| Priority date | Feb 23, 2021 |
| Publication date | Oct 19, 2023 |
| Grant date | — |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Test cases written to test a software application can be dynamically distributed among a set of software application instances such that different sets of test cases can execute simultaneously in parallel, thereby speeding up testing relative to executing the test cases sequentially. To avoid database conflicts that may occur when different test cases are executed in parallel, each software application instance can be associated with a different database instance. Accordingly, a first test case executing in association with a first database instance can avoid interfering with a second test case executing in association with a second database instance.
Opening claim text (preview).
What is claimed is: 1 . A method, comprising: distributing, by a processor, a group of test cases among different test sets prior to execution of the group of test cases, wherein the group of test cases is configured to test interactions between a software application and a database; initiating, by the processor, different software application instances of the software application, wherein the initiating causes the different software application instances to: create different database instances of the database that respectively correspond to the different software application instances; and executing, by the processor, the different test sets in parallel in association with corresponding instances of: the different software application instances, and the different database instances that respectively correspond to the different software application instances. 2 . The method of claim 1 , further comprising: collecting, by the processor, test result sets associated with execution of the different test sets in parallel; and combining, by the processor, the test result sets into an aggregated test result report. 3 . The method of claim 1 , wherein execution of the different test sets in parallel causes the different database instances to store different data. 4 . The method of claim 1 , wherein the initiating causes the different software application instances to create the different database instances as in-memory databases. 5 . The method of claim 1 , wherein the group of test cases was created based on an expectation of individual test cases, of the group of test bases, being executed in a sequential execution order. 6 . The method of claim 1 , wherein: the group of test cases includes a first test case and a second test case, the first test case and the second test case both being configured to access a same data element in the database, the distributing causes: the first test case to be assigned to a first test set associated with a first software application instance that corresponds to a first database instance, and the second test case to be assigned to a second test set associated with a second software application instance that corresponds to a second database instance, and executing the different test sets in parallel avoids database errors by permitting the first test case and the second test case to simultaneously access different instances of the same data element in the first database instance and the second database instance. 7 . The method of claim 1 , wherein the different software application instances are initiated in association with at least one of: different virtual machines, or different processing threads. 8 . The method of claim 1 , wherein: code of the group of test cases is expressed in a set of class files, individual class files of the set of class files each including one or more methods, and the distributing is performed at one or more of: a class level associated with the set of class files, or a method level associated with the one or more methods. 9 . The method of claim 1 , further comprising: identifying, by the processor, test cases within a particular test set that is associated with a particular software application instance; distributing, by the processor, the test cases among different test subsets, wherein the different test subsets are associated with different processing threads that correspond to the particular software application instance; and executing, by the processor, and via the different processing threads, the different test subsets in parallel, in association with the particular software application instance and a particular database instance that corresponds to the particular software application instance. 10 . The method of claim 1 , wherein the group of test cases is distributed based at least in part on predicting execution times of the different test sets. 11 . A computing device, comprising: a processor; memory storing computer-executable instructions that, when executed by the processor, cause the processor to perform operations comprising: distributing a group of test cases among at least a first test set and a second test set prior to execution of the group of test cases, wherein the group of test cases is configured to test interactions between a software application and a database; initiating a first software application instance of the software application and a second software application instance of the software application, wherein the initiating causes: the first software application instance to create a first database instance of the database that corresponds to the first software application instance, and the second software application instance to create a second database instance of the database that corresponds to the second software application instance; and executing the first test set and the second test set in parallel, wherein: the first test set executes in association with the first software application instance and the first database instance, and the second test set executes in association with the second software application instance and the second database instance. 12 . The computing device of claim 11 , wherein execution of the first test set and the second test set in parallel causes the first database instance and the second database instance to store different data. 13 . The computing device of claim 11 , wherein the initiating causes the first software application instance and the second software application instance to respectively create the first database instance and the second database instance as different in-memory databases. 14 . The computing device of claim 11 , wherein the first software application instance and the second software application instance are associated with at least one of: different virtual machines on the computing device, or different processing threads on the computing device. 15 . The computing device of claim 11 , wherein the operations further comprise: distributing test cases within the first test set among different test subsets, the different test subsets being associated with different processing threads on the computing device that correspond to the first software application instance; and executing, via the different processing threads, the different test subsets in parallel in association with the first software application instance and the first database instance. 16 . One or more non-transitory computer-readable media storing computer-executable instructions that, when executed by a processor, cause the processor to perform operations comprising: distributing a group of test cases, configured to test interactions between a software application and a database, among different test sets prior to execution of the group of test cases; initiating different software application instances of the software application, wherein the initiating causes the different software application instances to: create different database instances of the database that respectively correspond to the different software application instances; and executing the different test sets in parallel in association with corresponding instances of: the different software application instances, and the different database instances that respectively correspond to the different software application instances. 17 . The one or more non-transitory computer-readable media of claim 16 , wherein execution of the different test sets in parallel causes the different database instances
for test execution, e.g. scheduling of test suites · CPC title
Program synchronisation; Mutual exclusion, e.g. by means of semaphores · CPC title
for test results analysis · CPC title
between a Database Management System and a front-end application · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.