IP Library Granted Patent US 10,528,457
Granted Patent B2
US 10,528,457 · App. 15/913,159 · Granted Jan 7, 2020

Automated unit testing in a mainframe environment

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,528,457
App. No.
15/913,159
Granted
Jan 7, 2020
Kind
B2
Abstract

An automated system is presented for unit testing an application in a mainframe execution environment. The system includes a test configurator, a stub setup routine and an interceptor routine. The test configurator is configured to receive and parse a test input file, where the test input file includes a record for a particular file accessed by the application using the given type of file system. Upon reading the record, the test configurator calls the stub setup routine. The stub setup routine is associated with the given type of file system and creates an object for the particular file in the mainframe execution environment, such that the object is instantiated from a class representing the given type of file system. The interceptor routine is accessible by the application. In response to a given command issued by the application for the given type of file system, the interceptor routine operates to interact with methods provided by the object.

Claims (27)

1. An automated system for unit testing an application in a mainframe execution environment, comprising:

a vector table associated with the application and resides in a non-transitory storage medium, where the application includes one or more commands for a given type of file system and each command has an entry in the vector table with an address to a handler for the corresponding command;

a test configurator executing in the mainframe execution environment and configured to receive and parse a test input file, where the test input file includes a record for a particular file accessed by the application using the given type of file system;

upon reading the record, the test configurator calls a stub setup routine, wherein the stub setup routine is associated with the given type of file system and creates an object for the particular file in the mainframe execution environment, such that the object is instantiated from a class representing the given type of file system; and

an interceptor routine accessible by the application and, in response to a given command issued by the application for the given type of file system, operates to interact with methods provided by the object;

wherein the test configurator further operates to update an entry in the vector table for the given command by replacing the address to a handler for the given command with an address for the interceptor routine, and the test configurator and the interceptor routine are implemented by computer executable instructions executed by a computer processor.

2. The system of claim 1 wherein the test input file includes one or more data records for the particular file and the test configurator populates the object with data from the one or more data records.

3. The system of claim 1 wherein the test configuration calls the application and thereby initiates testing of the application.

4. The system of claim 2 wherein the test configurator further operates to retrieve values for parameters of the application from the test input file and pass the values of the parameters to the application.

5. The system of claim 2 wherein the application returns control to the test configurator and the test configurator retrieves values of the parameters from the application and generates a test output file, where the test output file includes the retrieved values of the parameters from the application.

6. The system of claim 5 wherein the test configurator further operates to retrieve data from the object and adds the retrieved data to the test output file.

7. The system of claim 1 wherein the stub setup routine and the interceptor routine are linked with the test configurator.

8. The system of claim 1 wherein the given type of file system is further defined as one of a queued sequential access method or a virtual storage access method system.

9. The system of claim 1 wherein the stub setup routine and the interceptor routine are linked with the test configurator.

10. An automated system for unit testing an application in a mainframe execution environment, comprising:

an address directory maintained by an operating system of the mainframe execution environment, where the application includes one or more database commands for a given type of database system and an address for a handler for the given type of database system resides in the address directory;

a test configurator executing in the mainframe execution environment and configured to receive and parse a test input file, where the test input file includes a record for a particular database command issued by the application against a particular table of the given type of database system;

wherein the test configurator determines a type of command for the particular database command and creates an object for the particular database command in the mainframe execution environment, such that the object is instantiated from a class representing the type of command; and

an interceptor routine accessible by the application and, in response to the particular database command issued by the application, operates to interact with methods provided by the object;

wherein the test configurator further operates to update the address for the handler of the given type of database system in the address directory with an address for the interceptor routine, and the test configurator and the interceptor routine are implemented by computer executable instructions executed by a computer processor.

11. The system of claim 10 wherein the interceptor routine, in response to the particular database command issued by the application, retrieves syntax for the particular database command from a listing file generated by a compiler and identifies the object using the retrieved syntax.

12. The system of claim 10 wherein the test input file includes at least one corresponding record for the particular database command and the at least one corresponding record includes a parameter list for the particular database command, such that the interceptor validates parameters of the particular database command against the parameter list contained in the least one corresponding record.

13. The system of claim 10 wherein the test input file includes one or more data records for the particular table and the test configurator populates the object with data from the one or more data records.

14. The system of claim 10 wherein the test configuration calls the application and thereby initiates testing of the application.

15. The system of claim 14 wherein the test configurator further operates to retrieve values for parameters of the application from the test input file and pass the values of the parameters to the application.

16. The system of claim 14 wherein the application returns control to the test configurator and the test configurator retrieves values of the parameters from the application and generates a test output file, where the test output file includes the retrieved values of the parameters from the application.

17. The system of claim 16 wherein the test configurator further operates to retrieve data from the object and adds the retrieved data to the test output file.

Assignments (14)
GRANT OF FIRST LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 13, 2024
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 069352/0628 →
GRANT OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 13, 2024
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 069352/0568 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052842/0166) Recorded Aug 5, 2024
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: BMC SOFTWARE, INC. (AS SUCCESSOR-BY-MERGER TO COMPUWARE CORPORATION)
Reel/Frame 068316/0566 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052842/0277) Recorded Aug 5, 2024
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: BMC SOFTWARE, INC. (AS SUCCESSOR-BY-MERGER TO COMPUWARE CORPORATION)
Reel/Frame 068316/0868 →
OMNIBUS ASSIGNMENT OF SECURITY INTERESTS IN PATENT COLLATERAL Recorded Mar 4, 2024
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS RESIGNING COLLATERAL AGENT
To: GOLDMAN SACHS BANK USA, AS SUCCESSOR COLLATERAL AGENT
Reel/Frame 066729/0889 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 1, 2024
From: ALTER DOMUS (US) LLC
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 066567/0283 →
GRANT OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Sep 30, 2021
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: ALTER DOMUS (US) LLC
Reel/Frame 057683/0582 →
MERGER Recorded Apr 13, 2021
From: COMPUWARE CORPORATION
To: BMC SOFTWARE, INC.
Reel/Frame 055906/0332 →
SECURITY INTEREST Recorded Jun 4, 2020
From: COMPUWARE CORPORATION; BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE, AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 053467/0434 →
SECURITY INTEREST Recorded Jun 4, 2020
From: COMPUWARE CORPORATION
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052842/0277 →
SECURITY INTEREST Recorded Jun 4, 2020
From: COMPUWARE CORPORATION
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052842/0166 →
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL AT R/F 46690/0954 Recorded Jun 2, 2020
From: JEFFERIES FINANCE LLC
To: COMPUWARE CORPORATION
Reel/Frame 052806/0847 →
SECURITY INTEREST Recorded Aug 24, 2018
From: COMPUWARE CORPORATION
To: JEFFERIES FINANCE LLC
Reel/Frame 046690/0954 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 10, 2018
From: EVERITT, GLENN; WATKINS, DOUGLAS MCLEOD; WALBECK, LORETTA ANN; SPURRELL, SHELDON JOHN; CARR, STEVEN JAMES
To: COMPUWARE CORPORATION
Reel/Frame 045494/0599 →