Systems for enterprise-wide end-to-end automated software testing

An end-to-end automated testing platform that allows for standardized, enterprise-wide process, compliance and operational exposure testing. The testing platform is self-service, in that, users can manage the process by which (i) data sources are identified and data connections established, (ii) data is mapped from the data sources to meet test requirements, (iii) schedules for executing the test are established, and (iv) rules sets are established as the baseline for testing criteria. In addition, the platform provides for definition of the business rule logic to be used to perform the testing, application of the rule logic against appropriate business data to determine testing results and the dissemination of those results. Additionally, the platform provides for automated generation of test code, execution of the test code and compilation and dissemination of test results. Moreover, the testing platform provides for surveillance dashboards that allows for users to monitor tests currently in-progress and track results of completed tests.

FIELD OF THE INVENTION

The present invention relates to testing, and more particularly, to systems, methods, computer program products and the like for generating, managing and executing end-to-end automated process, compliance and operational exposure testing across an enterprise.

BACKGROUND

Many large enterprises need to ensure that both internal guidelines and external regulations are satisfied. For example, financial institutions are tasked with ensuring that they comply with both internal standards and government implemented rules and regulations. As a means of providing such insurance, these large enterprises perform ongoing process, compliance and operational exposure testing to determine if compliance issues exist and, if so, provide necessary corrective actions.

Currently many, if not most, of these tests involve some form of manual processing. In this regard, in many instances the tests are generated manually and/or include some form of manual execution. In large enterprise, which may have a need to implement thousands of process, compliance and operational exposure tests on a daily basis, manual intervention in the test process is inefficient and costly.

In addition, in a large enterprise with a high volume of testing requirements across many diverse business units, lines-of-business and the like, inconsistencies in the testing process from one business unit to the next are problematic. Inconsistencies are not only related to how the tests are performed/executed but also how and where test data is acquired, how the test data is stored and managed, how the tests are scheduled, how results are generated and presented and how issues are resolved.

Therefore, a need exists to develop systems, methods, computer program products and the like that provide an end-to-end automated process for process, compliance and operational exposure testing. The desired systems, methods, computer program products and the like should provide for automating all facets of the process, compliance and operational exposure test process including, but not limited to, configuring a test, generating the test, executing the test and presenting and providing results of the test. In addition, the desired systems, methods and computer program products should provide for standardizing testing, such that many, if not all, of the facets of the test process are consistent across the entire enterprise. Additionally, a need exists to develop systems, methods, computer program products and the like that allow an enterprise, conducting a high volume of process, compliance and operational exposure tests on an ongoing basis, to monitor the performance of such testing in real-time, as well as, assess results of such tests.

SUMMARY OF THE INVENTION

Embodiments of the present invention address the above needs and/or achieve other advantages by providing for an end-to-end automated testing platform that allows for enterprise-wide process, compliance and operational exposure testing. Specifically, the present invention provides for a self-service testing platform that allows users to manage the process by which (i) data sources are identified and data connections established, (ii) data is mapped from the data source to meet test requirements, (iii) schedules for executing the test are established, and (iv) rules sets are established as the baseline for testing criteria. In addition, the testing platform provides for the definition of the business rule logic to be used to perform the testing, application of the rule logic against appropriate business data to determine testing results and the dissemination of those results. In addition, the testing platform provides for automated generation of test code, execution of the test code and compilation and dissemination of test results.

Additionally, according to specific embodiments of the invention, the testing platform provides for surveillance dashboards that are configured to allow users to monitor the progress of tests in-progress, as well as, obtain results of completed tests. Further, the testing platform is configured to track occurrences of errors resulting from any facet of the testing platform and provides for communication of alerts, as necessary, based on test results and/or errors.

By implementing the testing platform enterprise-wide, the present invention results in highly standardized generation, management, execution and results of process, compliance and operational exposure tests. However, the platform is also flexible enough to allow users to customize any facet of the testing process and provide logging and recordation of any such customization. For example, while results of tests may include standardized data points, metrics and the like, the test results may also include test-specific attributes and results, as required by the test-initiator/user.

A system for end-to-end automated generation, execution and monitoring of process, compliance and operational exposure tests defines first embodiments of the invention. The system includes a plurality of data sources configured to store data; for example, a plurality of applications configured to receive, process and store data.

The system additionally includes a computing apparatus including a memory, one or more processing devices in communication with the memory and a display in communication with at least one of the processing devices. Additionally, the system includes a self-service automated test configuration and management platform that is stored in the memory, executable by the one or more processing devices.

The platform includes a data source identifier and connection engine that is configured to, in response to receiving first inputs that select a test for automation and test data required to execute the test, identify at least one of the data sources that store the identified test data and establish one or more data connections to the at least one data source.

The platform further includes a data analysis and mapping engine configured to, in response to receiving (i) second inputs and (ii) the test data via the established data connections, analyze the test data and second inputs to map the test data, as received from the data source, to test requirements. Additionally, the platform includes a rules building engine configured to, in response to receiving third inputs, build/establish a rules set applicable to the test, including business rule logic used to perform the testing, application of the rule logic against appropriate business data to determine testing results and the dissemination of those results.

Further, the platform includes a test coding engine configured to generate computer code for executing the process, compliance or operational exposure test based on the rules set and the mapping of the test data to the test requirements. In addition, the platform includes a compliance code execution engine configured to execute the computer code to run the test on test data received from the established data connections.

Moreover, the platform includes a test monitoring and results engine configured to present, on the display, one or more surveillance dashboards that are configured to allow a user to monitor live progress and results of the test.

In specific embodiments of the system, the platform further includes a scheduler engine configured to, in response to receiving fourth inputs, determine a schedule for executing the test. In such embodiments of the invention, the rules building engine is further configured to build the rules set applicable to the test and based at least on the determined schedule.

In other specific embodiments of the system, the platform further includes an Artificial Intelligence (AI) engine configured to receive and analyze an output of the test to determine at least a portion of the results of the test and provide the at least a portion of the results to the test monitoring and results engine for display on the one or more surveillance dashboards.

In further specific embodiments of the system, the test is further defined as an inline test and the test data is further defined as real-time production data.

In additional specific embodiments of the system, the platform further includes an error tracking engine configured to receive signals that indicate an occurrence of an error occurring in any other engine within the platform and record the error in test-specific logs. In related embodiments of the system, the platform further includes an alert and notification engine configured to receive error indications from the error tracking engine and test results from the test monitoring and results engine, determine that an alert is required based on an error indication or test results, identify recipients of the alert and initiate communication of the alert to the identified recipients.

In other specific embodiments of the system, the test monitoring and results engine is configured to generate (i) first results for the test that are standardized across a plurality of tests managed by the platform, and (ii) second results that are specific to the test. Moreover, in additional embodiments of the system, the test monitoring and results engine is further configured to identify one or more Systems of Record (SOR) for storing the results of the test, format the results to meet requirements of the identified SOR and write the results of the test to the identified SOR.

In still further specific embodiments of the system, the platform provides for (i) standardized data connections to data sources for each test configured and managed by the platform, (ii) each rule set for each test to include standardized rules applicable to each test configured and managed by the platform, (iii) standardized coding and execution of each test executed by the platform, and (iv) standardized reporting of results of each test configured and managed by the platform.

A computer-implemented method for configuring and managing process, compliance and operational exposure tests defines second embodiments of the invention. The method is executed by one or more processing devices. The method includes, in response to receiving first inputs that select a process, compliance and/or operational exposure test for automation and test data required to execute the test, identifying at least one data source that stores the identified test data and establishing a data connection each of the at least one data source. In addition the method includes, in response to receiving second inputs and the test data via the established data connections, analyzing the test data and second inputs to map the test data as received from the data source to test requirements. Further, the method includes in response to receiving third inputs, building a rules set applicable to the test. In addition, the method includes generating computer code for executing the test based on the rules set and the mapping of the test data to the test requirements and executing the computer code to run the test on the test data received from the one or more established data connections. Moreover, the method includes presenting, on a display, one or more surveillance dashboards that are configured to allow a user to monitor live progress and results of the test.

In further embodiments the method includes, in response to receiving fourth inputs, determining a schedule for executing the test. In such embodiments of the method building the rules set further includes building the rules set applicable to the test and based at least on the determined schedule.

In other specific embodiments the method includes receiving and analyzing, by an artificial intelligence engine, an output of the test to determine at least a portion of the results of the test and providing the at least a portion of the results for display on the one or more surveillance dashboards.

In still further specific embodiments of the method the process, compliance and/or operational exposure test is further defined as an inline test and the test data is further defined as real-time production data.

Moreover, in other specific embodiments the method includes receiving signals that indicate an occurrence of an error and record the error in test-specific logs. In other specific embodiments the method includes generating (i) first results for the test that are standardized across a plurality of tests managed by the platform, and (ii) second results that are specific to the test.

A computer program product including non-transitory computer-readable medium defines third embodiments of the invention. The computer-readable medium includes a first set of codes configured to cause a computer processor to, in response to receiving first inputs that select a test for automation and test data required to execute the test, identify at least one data source that stores the identified test data and establish a data connection each of the at least one data source. In addition, the computer-readable medium includes a second set of codes for causing a computer processor to, in response to receiving second inputs and the test data via the established data connections, analyze the test data and second inputs to map the test data as received from the data source to test requirements. Further, the computer-readable medium includes a third set of codes for causing a computer processor to, in response to receiving third inputs, build a rules set applicable to the test

In addition, the computer-readable medium includes a fourth set of codes for causing a computer processor to generate computer code for executing the test based on the rules set and the mapping of the test data to the test requirements and a fifth set of codes for causing a computer processor to execute the computer code to run the test on the test data received from the one or more established data connections. Moreover, the computer-readable medium includes a sixth set of codes for causing a computer processor to present, on a display, one or more surveillance dashboards that are configured to allow a user to monitor live progress and results of the test.

In specific embodiments of the computer program product, the computer-readable medium further includes a seventh set of codes for causing a computer processor to receive and analyze, by an artificial intelligence engine, an output of the test to determine at least a portion of the results of the test and providing the at least a portion of the results for display on the one or more surveillance dashboards.

In other specific embodiments of the computer program product, the process, compliance and/or operational exposure test is further defined as an inline test and the test data is further defined as real-time production data.

In other specific embodiments of the computer program product, the computer-readable medium further comprises a seventh set of codes for causing a computer processor to receive signals that indicate an occurrence of an error and record the error in test-specific logs.

In additional specific embodiments of the computer program product, the computer-readable medium further comprises a seventh set of codes for causing a computer processor to generate (i) first results for the test that are standardized across a plurality of tests managed by the platform, and (ii) second results that are specific to the test.

Thus, systems, apparatus, methods, and computer program products herein described in detail below provide for an end-to-end automated testing platform that allows for standardized, enterprise-wide process, compliance and/or operational exposure testing. As described below embodiments of the invention are defined by a self-service testing platform that allows users to manage the process by which (i) data sources are identified and data connections established, (ii) data is mapped from the data source to meet test requirements, (iii) schedules for executing the test are established, and (iv) rules sets are established as the baseline for testing criteria. Additionally, the platform provides for business rule logic used to perform the testing, and applied against appropriate business data to determine testing results and the dissemination of those results. In addition, the testing platform provides for automated generation of test code, execution of the test code and compilation and dissemination of test results. Additionally, the platform provides for automated generation of test code, execution of the test code and compilation and dissemination of test results. Moreover, the testing platform provides for surveillance dashboards that allows for users to monitor tests currently in-progress, as well as, track results of completed tests.

DETAILED DESCRIPTION OF EMBODIMENTS OF THE INVENTION

As will be appreciated by one of skill in the art in view of this disclosure, the present invention may be embodied as an apparatus (e.g., a system, computer program product, and/or other device), a method, or a combination of the foregoing. Accordingly, embodiments of the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.), or an embodiment combining software and hardware aspects that may generally be referred to herein as a “system.” Furthermore, embodiments of the present invention may take the form of a computer program product comprising a computer-usable storage medium having computer-usable program code/computer-readable instructions embodied in the medium.

The computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational events to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions, which execute on the computer or other programmable apparatus, provide events for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. Alternatively, computer program implemented events or acts may be combined with operator or human implemented events or acts in order to carry out an embodiment of the invention.

Thus, as described in more detail below, embodiments of the present invention provide for an end-to-end automated testing platform that allows for enterprise-wide process, compliance and/or operational exposure testing. Specifically, the present invention provides for a self-service testing platform that allows users to manage the process by which (i) data sources are identified and data connections established, (ii) data is mapped from the data source to meet test requirements, (iii) schedules for executing the test are established, and (iv) rules sets are established as the baseline for testing criteria. In addition, the platform generates business rule logic used to perform the testing and applies the rule logic against appropriate business data to determine testing results and to determine how and to whom results should be disseminated. In addition, the testing platform provides for automated generation of test code, execution of the test code and compilation and dissemination of test results. In addition, the testing platform provides for automated generation of test code, execution of the test code and compilation and dissemination of test results.

Specific, embodiments of the invention are directed to a process, compliance and operational exposure testing platform. Compliance testing as used herein refers to any test that serves to ensure that internal and/or external rules and regulations are adhered to. For example, in those embodiments of the invention in which the testing platform is implemented by a financial institution, the financial institution has many processes that must meet both internal and external (i.e., government) rules and regulations. Such testing by financial institutions or the like is required to be thorough and extensive, i.e., anywhere above or around from 5,000 to 20,000 tests executed by variable frequency or the like across various different processes and/or applications.

Additionally, according to specific embodiments of the invention, the automated configuration, generation and management testing platform provides for surveillance dashboards that are configured to allow users to monitor the progress of tests as they are being executed, as well as, obtain results of completed tests. Further, the testing platform is configured to track occurrences of errors resulting from any facet of the testing platform and provides for communication of alerts, as necessary, based on test results and/or errors.

By implementing the testing platform enterprise-wide, the present invention results in highly standardized configuration, generation, and management of tests. However, the platform is also flexible enough to allow users to customize any facet of the testing process and provide logging and recordation of any such customization. For example, while test results may include standardized data points, metrics, test code errors, dashboard displays and the like, the test results may also include test-specific attributes and results, as required by the test-initiator/user.

Turning now to the figures,FIG.1illustrates a system10for end-to-end automated configuration, generation and management of testing, such as process, compliance and operational exposure testing, in accordance with embodiments of the present invention. The system is implemented within a distributed communication network20, which may comprise the Internet, one or more intranets and combinations thereof. The system10includes data sources30which store or otherwise have access to data that requires testing. In the illustrated example ofFIG.1the data sources30include database servers32, application servers34, file servers36and the like. The system additionally includes a computing apparatus40, which may include one or more computing devices, such as application server(s)42or the like. The computing apparatus includes a memory44, at least one processing device46in communication with the memory and a display41in communication with the processing device46.

The memory44of computing apparatus40stores self-service automated test configuration and management platform100. The platform100allows for users to provide inputs and, in response perform various automated tasks as described herein. As depicted inFIG.1the platform100includes various engines. An “engine” as used herein is a software component, which may include modules, routines, algorithms or the like, that is configured to perform defined functions, actions or tasks. While the platform100as described includes various engines, it should be noted that the platform may include more or less engines/software components. For example, functions, actions, task defined herein as being performed by individual engines may, in practice, be consolidated within other engines.

Platform100includes data source identifier and connection establishment engine110that is configured to, in response to identifying a test for automation and the data required for the identified test, identify at least one data source that stores or otherwise has access to the data and establish a data connection with the data source. The engine110is further configured to verify that identified data sources110are authenticated for purposes of providing test data. In large enterprise, in which data is being processed by a large volume of applications, identifying which applications are applicable to a give task and subsequently establishing connections to the applications and the corresponding hardware (i.e., servers or the like) in an automated manner is highly efficient in terms of reducing manual processing.

Platform100additionally includes data analysis and mapping engine120that is configured to, in response to receiving inputs, such as, user inputs and data from the established data connections, analyze the data to provide a mapping of the data from the data sources to the test requirements. In this regard, the data sources/applications typically store the data in various tables within a file/database and, specific data elements, within columns of such tables. The present invention is configured to map the locations within the various tables/columns of the data source files to meet the requirements of the test. Moreover, data analysis may include properly formatting the data to meet the requirements of the test.

In addition, platform130includes rules building engine130that is configured to, in response to receiving inputs, such as user inputs, build a set of rules for the test. The rules may be based on various business rules and external entity rules (i.e., government agencies) that are required of the applicable test. The set of rules define the functions necessary to perform the test. Additionally, the rules building engine130generates business rule logic that is used to perform the testing and is applied against appropriate business data to determine testing results and the semantics for dissemination of those results. In addition, the testing platform provides for automated generation of test code, execution of the test code and compilation and dissemination of test results. Additionally, platform130includes a test coding engine140that is configured to generate computer code for executing the test based on the rules set and the mapping of test data to test requirements. In specific embodiments of the invention, generation of the computer code is fully automated, while in other embodiments of the invention, the generation of the computer code is semi-automated, requiring some inputs from a user (i.e., computer coder/programmer) or the like.

Further, platform100includes test execution engine150that is configured to execute the computer code to run the test using the test data as received from the one or more established data connections. In specific embodiments of the invention, the computer code is executed in-line with one or more corresponding applications, such that, the test is executed on live data as the data is being processed by the applications. In addition, test execution150is configured to execute the computer code in accordance with specified schedules. As discussed in relation toFIGS.3and5, infra., in specific embodiments of the invention, platform100may include a scheduler engine configured to determine a schedule/frequency for executing the test.

Moreover, platform100includes test monitoring and results engine160that is configured to present, on display41, one or more surveillance dashboards50that are configured to allow the user to monitor live progress of tests currently executing and results of tests that have completed. Further, engine160is configured to store results in testing results datastore60and/or communicate the results to downstream applications and systems70.

Referring now toFIG.2, a block diagram is provided of computing apparatus40, which, as previously discussed, may comprise one or more computing devices/components, such as servers, personal computers (PCs) and the like. Computing apparatus40includes input devices41, user output devices43, memory44, application programming interface45, processing device46and network communication interface47. User input devices43may include keypad/touchpad43-1, microphone43-2or any other input device configured to receive user inputs to platform100. User output devices41may include display41-1, speaker41-2or any other output device configured to provide a user the platform100and the surveillance dashboards50.

Memory44may comprise volatile and non-volatile memory, such as read-only and/or random-access memory (RAM and ROM), EPROM, EEPROM, flash cards, or any memory common to computing platforms). Moreover, memory44and the like may comprise cloud storage, such as provided by a cloud storage service and/or a cloud connection service. Processing device46or the like may be an application-specific integrated circuit (“ASIC”), or other chipset, logic circuit, or other data processing device. Processing device(s)46or the like may execute one or more application programming interface (APIs)45that interface with any resident programs, such as platform100or the like stored in the memory44of the computing apparatus40and any external programs. Processing device(s)46may include various processing subsystems (not shown inFIG.2) embodied in hardware, firmware, software, and combinations thereof, that enable the functionality of the computing apparatus40and the operability of the computing apparatus40on a communications network (not shown inFIG.2). For example, processing subsystems allow for initiating and maintaining communications and exchanging data with other networked devices. For the disclosed aspects, processing subsystems of computing apparatus40may include any processing subsystem used in conjunction with platform100and related engines, tools, routines, sub-routines, algorithms, sub-algorithms, sub-modules thereof.

Additionally, computing apparatus40includes network communication interface47that is operatively connected to the processing device(s)46and is configured to communicate with one or more other devices on the distributed communication network20(shown inFIG.1). In this regard, the network communication interface47may include an antenna operatively coupled to a transmitter and a receiver (together a “transceiver”). The processing device46is configured to provide signals to and receive signals from the transmitter and receiver, respectively. The computing apparatus40may utilize a wired network and/or wireless network including satellite or any other wireless network of the device to provide signals and receive signals.

The memory44stores self-service automated test configuration, generation and management platform100which is configured to provide automated configuration, generation and management of tests, such as process, compliance and operational exposure tests for an enterprise. Further details related to platform100are discussed in relation toFIGS.3and4, infra.

Referring toFIGS.3and4, block diagrams are presented of a self-service automated test configuration, generation and management platform100, in accordance with embodiments of the present invention. The platform includes a data source identifier and connection establisher engine110that is configured to, in response to receiving first inputs112that select a test114for automation and identify test data116for conducting the test114, identify authorized data sources118that store or authorize have access to the test data116required to perform the selected test. In specific embodiments of the invention the selected test may provide for live in-line testing, such, that testing is performed while associated applications are running (i.e., data is being processed). The authorized nature of the data sources118means that the data sources have been verified as authorized sources of the data (e.g., gold standard or most valid for an intended test).

In addition, data source identifier and connection establisher engine110is configured to establish or verify pre-existing data connections119with the data source118(i.e., connections to databases storing the data116and/or applications that process or have access to the data116). In specific embodiments of the invention, establishing the data connections119includes configuring the hardware (i.e., ports and the like) and defining requisite protocols. In further specific embodiments of the invention, the data connections119are secure data connections, such as tunnel connections or the like.

Platform110additionally includes data analysis and mapping engine120that is configured to, in response to receiving second inputs122, analyze the test data116received from the data sources118(via the established connections119) to map122the test data116according to test requirements124. Mapping122includes correlating locations (e.g., tables, columns, data elements and the like) at the data source118with testing requirements. In addition to mapping, analyzing the test data120may require re-formatting the test data116to meet the requirements of the test.

In addition, according to specific embodiments of the invention, platform100includes scheduler engine170that is configured to, in response to receiving third inputs, determine a schedule172for executing the test. Determining the schedule172may take into account various factors, such as compliance requirements, server/test data availability, stability of test results and the like. The schedule172may define testing intervals or specific test patterns (e.g., dates and time, days of the week, time of day or the like).

Platform100additionally includes rules building engine130that is configured to, in response to receiving fourth inputs132, build a rules set132applicable for executing the test114. The rules set132includes business rules that describe the boundaries for the test and take into account the internal and/or external guidelines, rules and regulations that dictate the need for the test. The rules set includes business rule logic used to perform the testing and to be applied against appropriate business data to determine testing results and the semantics for dissemination of those results. In addition, the testing platform provides for automated generation of test code, execution of the test code and compilation and dissemination of test results

Additionally, the platform100includes test coding engine140, that is configured to generate the computer code142for executing the test based at least on the rules set132and the mapping122of the test data116to the test requirements124. As previously discussed, the test coding engine140may be fully automated or semi-automated in generating the computer code142. Once the code has been generated, the platform stores the computer code142is an associated computer code repository (not shown inFIG.3).

In addition, platform100includes test execution engine150that is configured to retrieve the test computer code142from the repository, retrieve test data116via the established or pre-existing data connections119and execute the computer code to run the test according to the defined schedule172. In this regard, the tests are run on a fully automated basis with no manual intervention required.

Further, platform100includes test monitoring and results engine160that is configured to present, on a display device, one or more surveillance dashboards50that provide in-progress monitoring162of tests currently executing, as well as, results164of tests that have been completed. Further, test monitoring and results engine160is configured to communicate results164to results datastore60and/or downstream applications and systems70. As previously discussed, certain aspects of the results164will be standardized across all test being executed by the platform100. Standardized aspects may include, but are not limited to, data points, metrics, test codes, how and what is displayed in the surveillance dashboards and the like. Additionally, users may configure the tests to provide unique test-specific results (or the tests themselves may provide for unique test-specific results).

Referring toFIG.4, the self-service automated test configuration, generation and management platform100additionally includes an artificial intelligence engine180that is configured to receive outputs of test114and implement artificial intelligence including machine learning techniques to determine test results154including predicted test trends184that indicate how results are trending and if they are approaching non-compliance thresholds. In addition, artificial intelligence engine180may be configured to implement artificial intelligence including machine learning techniques to determine in-progress monitoring162included predicted results186of the test in-progress that indicates predicts results for the currently executing test.

Moreover, platform100may include error tracking engine190that is configured to determine when an error occurs in any other engine, feature of the platform and, in response to determining the occurrence of an error192, record the error in test-specific error logs194and provide the related error code196as part of the test results164. Further, platform100may include non-standardized feature tracking engine200that is configured to determine when a user requests the platform to deviate from standardized features and record the non-standard feature202in a corresponding non-standardized feature log204.

Further, platform100may include alert and notification engine210that is configured to receive (i) indications of errors192, (ii) test results164, and/or (iii) non-standard features202, determine if the error192, test results164or change from standardized feature202requires an alert212and, if so identify recipients214of the alert212and initiate communication of the alert212to the identified recipients214.

Referring toFIG.5, a flow diagram is depicted of a method500for self-service automated configuration, generation and management of tests, such as process, compliance and operational exposure tests, in accordance with embodiments of the present invention.

In response to receiving first inputs that select a process, compliance and/or operational exposure test for automation and the test data required for executing the identified test, at Event510, (i) at least one data source is identified that stores or otherwise has access to the identified test data, and (ii) a data connection is established with each of the data sources or a pre-existing data connection to the data source is confirmed. Identifying the data source includes verifying that data sources are authenticated for purposes of providing test data (i.e., the data source stands as “the gold standard” for providing the data). Establishing the data connection provides for configuring the physical and/or virtual connections and, in some embodiments of the invention, establishing a secure data connections, such as tunnel connection, using an applicable tunneling protocol (e.g., IP in IP (Protocol 4); SIT/IPv6 (Protocol 41); Generic Routing Encapsulation (GRE) (Protocol 47); OpenVPN (UDP port 1194); Secure Socket Tunneling Protocol (SSTP) (TCP port 443); Internet Protocol Security (IPSec) (Protocol 50 and 51); Layer 2 Tunneling Protocol (L2TP) (Protocol 115); Virtual Extensible Local Area Network (VXLAN) (UDP port 4789) or the like.

In response to receiving second inputs and the test data via the established or pre-existing data connections, at Event520, the test data is analyzed to format and map the test data in accordance with test requirements. In this regard, the data sources/applications typically may store the data in one format, while the test requires the data in another format. In addition, the mapping provides for specific tables/columns in data source files data sources, which contain data elements applicable to the test to be mapped to meet test requirements.

In response to receiving third inputs, at Event530, a set of test rules is built, including business rules and external entity rules (i.e., government agency) that are required of the applicable test. The set of rules define the functions necessary to perform the test. At Event540, a schedule is determined that defines the frequency (e.g., hourly, daily, weekly or the like) at which the test is be executed/run.

At Event550, computer code is generated for executing the test based on the rules set and the mapping of test data to test requirements. As previously discussed, in specific embodiments of the invention, generation of the computer code is fully automated, while in other embodiments of the invention, the generation of the computer code is semi-automated, requiring some inputs from a user (i.e., computer coder/programmer) or the like.

At Event560, the computer code is executed, based on the determined schedule, to run the test using test data received from the established or pre-existing data connections. At Event570, a user is presented with one or more surveillance dashboards that are configured to allow the user to monitor the live progress of tests currently executing and results of tests that have been completed. Further, the test results are communicated to any downstream applications and systems requiring or requesting the results of the tests.

As evident from the preceding description, the systems, methods and the like described herein represents an improvement in technology, specifically, embodiments of the present invention provide end-to-end automated configuration, generation and execution of tests, such as, process, compliance and operational exposure tests. A self-service testing platform has herein been described that allows users to manage the process by which (i) data sources are identified and data connections established, (ii) data is mapped from the data source to meet test requirements, (iii) schedules for executing the test are established, and (iv) rules sets are established as the baseline for testing criteria. Additionally, the platform provides for automated generation of test code, execution of the test code and compilation and dissemination of test results. Moreover, the testing platform provides for surveillance dashboards that allows for users to monitor tests currently in-progress, as well as, track results of completed tests.