Automated and unattended process for testing software applications
First Claim
1. A method, comprisingidentifying, by a server computing device, tools and services used to test a software application, wherein the tools and services comprise at least one of a continuous integration (CI) tool or a test reporting tool;
- determining, by the server computing device, an order of execution of the identified tools and services in testing the software application;
designing, by a business process management (BPM) service of the server computing device, a testing management process that integrates the identified tools and services in the determined order of execution for testing the software application in an automated and unattended manner;
deploying, by the server computing device, the testing management process to act as a controlling layer over the identified tools and services in the testing of the software application;
allocating, by the server computing device, resources for the identified tools and services, wherein the resources comprise at least one of a database, a test machine, or a storage device, and wherein the allocating further comprises connecting to the resources and confirming the resources are ready to execute; and
providing, by the testing management process, instructions, parameters, and the allocated resources to programming code of the identified tools and services to enable the identified tools and services to perform the testing of the software application in the determined order of execution;
wherein the testing management process comprises a subprocess to control acceptance or rejection of a build of the software application being tested, a subprocess to determine differences of the build of the software application from any previous builds of the software application, and a subprocess to apply regression tests, integration tests, and performance tests to the build.
1 Assignment
0 Petitions
Accused Products
Abstract
In one embodiment, a mechanism for business process-managed testing of software applications is disclosed. In one embodiment, a method for business process-managed testing of software applications includes identifying, by a server computing device, all tools and services used to test a software application deployed on the server computing device, and determining, by the server computing device, an order of execution of the identified tools and services in testing the software application. The method further includes designing, by a business process management (BPM) service of the server computing device, a testing management process that integrates the identified tools and services in the determined order of execution for testing the software application in an automated and unattended manner, and deploying, by the server computing device, the testing management process to act as a controlling layer over the identified tools and services in the testing of the software application.
65 Citations
12 Claims
-
1. A method, comprising
identifying, by a server computing device, tools and services used to test a software application, wherein the tools and services comprise at least one of a continuous integration (CI) tool or a test reporting tool; -
determining, by the server computing device, an order of execution of the identified tools and services in testing the software application; designing, by a business process management (BPM) service of the server computing device, a testing management process that integrates the identified tools and services in the determined order of execution for testing the software application in an automated and unattended manner; deploying, by the server computing device, the testing management process to act as a controlling layer over the identified tools and services in the testing of the software application; allocating, by the server computing device, resources for the identified tools and services, wherein the resources comprise at least one of a database, a test machine, or a storage device, and wherein the allocating further comprises connecting to the resources and confirming the resources are ready to execute; and providing, by the testing management process, instructions, parameters, and the allocated resources to programming code of the identified tools and services to enable the identified tools and services to perform the testing of the software application in the determined order of execution; wherein the testing management process comprises a subprocess to control acceptance or rejection of a build of the software application being tested, a subprocess to determine differences of the build of the software application from any previous builds of the software application, and a subprocess to apply regression tests, integration tests, and performance tests to the build. - View Dependent Claims (2, 3, 4)
-
-
5. A system, comprising:
-
a memory; a processing device communicably coupled to the memory; a business process management (BPM) service executable from the memory by the processing device, the BPM service to define a testing management process for a complete test of an application deployed on the system; and a testing management module executable from the memory by the processing device, the testing management module to; identify tools and services on the server computing device and on the application server used to test the application, the tools and services comprising a continuous integration (CI) tool provided by a server computing device communicably coupled to the system via a network; determine an order of execution of the identified tools and services in testing the application; utilize the BPM service to integrate the identified tools and services in the determined order of execution for testing the application in an automated and unattended manner; deploy the testing management process to act as a controlling layer over the identified tools and services in the testing of the application; allocate resources for the identified tools and services, wherein the resources comprises at least one of a database, a test machine, or a storage device, and wherein the allocating further comprises connecting to the resources and confirming the resources are ready to execute; and provide, by the testing management process, instructions, parameters, and the allocated resources to programming code of the identified tools and services to enable the identified tools and services to perform the testing of the software application in the determined order of execution; wherein the testing management process comprises a subprocess to control acceptance or rejection of a build of the software application being tested, a process determining differences of the build of the software application from any previous builds of the software application, and a subprocess to apply regression tests, integration tests, and performance tests to the build. - View Dependent Claims (6, 7, 8, 9)
-
-
10. A non-transitory machine-readable storage medium including instructions that, when accessed by a server computing machine, cause the server computing device to perform operations comprising:
-
identifying, by the server computing device, tools and services used to test a software application, wherein the tools and services comprise at least one of a continuous integration (CI) tool or a test reporting tool; determining, by the server computing device, an order of execution of the identified tools and services in testing the software application; designing, by a business process management (BPM) service of the server computing device, a testing management process that integrates the identified tools and services in the determined order of execution for testing the software application in an automated and unattended manner; deploying, by the server computing device, the testing management process on the server computing device to act as a controlling layer over the identified tools and services in the testing of the software application; allocating, by the server computing device, resources for the identified tools and services, wherein the resources comprise at least one of a database, a test machine, or a storage device, and wherein the allocating further comprises connecting to the resources and confirming the resources are ready to execute; and providing, by the testing management process, instructions, parameters, and the allocated resources to programming code of the identified tools and services to enable the identified tools and services to perform the testing of the software application in the determined order of execution; wherein the testing management process comprises a subprocess controlling acceptance or rejection of a build of the software application being tested, a process determining differences of the build of the software application from any previous builds of the software application, and a subprocess to apply regression tests, integration tests, and performance tests to the build. - View Dependent Claims (11, 12)
-
Specification