Topaz for Total Test

Automated Unit Testing

Topaz for Total Test

Find and Fix COBOL Bugs Earlier with Automated Unit Tests

Manually creating and running unit tests is often skipped because it’s tedious and expensive. But forgoing unit tests diminishes developer confidence in making changes to many parts of a program as well as hurts the security and quality of those parts throughout ensuing testing phases.

Topaz for Total Test, Compuware’s automated unit test creation and execution tool, cuts down the amount of time it takes to make sure code is fully tested and prepared for fewer issues later in the lifecycle by enabling developers to:

  • Automate the creation and execution of mainframe unit tests
  • Validate code changes immediately
  • Maintain the quality of their codebase
  • Quickly put program code updates into production
  • Leverage integrations with leading cross-platform DevOps and Compuware tools for continuous code quality management

The Value of Topaz for Total Test

  • Increase velocity to production
  • Eliminate dependency on specialized mainframe knowledge
  • Empower novice developers to validate COBOL code changes with the same speed and confidence as other code
  • Support Continuous Integration and Continuous Delivery
  • Reduce time spent manually writing tests, collecting test data or manually creating data
  • Increase confidence to make large mainframe code changes
  • Helps facilitate regression testing

Related Solutions

Artificial Intelligence with zAdviser

Key Features of Topaz for Total Test

DevOps Toolchain Integrations

Topaz for Total Test can be easily integrated into a DevOps toolchain to enable COBOL unit testing within the automated build-test-deploy process through integrations with Jenkins, ISPW and SonarSource’s SonarQube:

Integration with Jenkins

Topaz for Total Test is easily configurable into an existing Jenkins workflow. COBOL unit testing can be automatically triggered as part of a DevOps toolchain and/or Continuous Delivery process for enterprise DevOps efficiency.

Integration with ISPW

Enables Topaz for Total Test assets to be contained within ISPW along with code changes. Developers can deploy their software components into a test environment while leveraging DevOps tools like Jenkins to access Topaz for Total Test assets for automated unit testing.

Integrations with SonarQube

Code coverage results captured by Topaz for Total Test can be fed into SonarQube to help IT teams better understand the scope and effectiveness of their testing as code is promoted toward production. In addition, unit testing pass/fail results can be displayed in SonarQube along with other quality trends throughout the DevOps process. Quality Gates may be defined to use the unit test results to determine whether to proceed with the workflow or to fix the code before continuing.

Mainframe DevOps | Compuware Deployment Pipeline | Jenkins Orchestration

Automatically Generate a Unit Test and Test Assets

Topaz for Total Test automatically generates unit tests and program stubs while collecting the necessary test data for data stubs—to simplify test setup and execution on different test systems.


Automatically creates stubs for Db2 databases as well as IMS BMP, VSAM and QSAM data files, making it easier to execute repeatable tests. Topaz for Total Test also generates program stubs and Db2 stored procedure stubs, which simplify and accelerate large COBOL program testing by eliminating the need to call the actual subprogram or stored procedure.

Topaz for Total Test supports IMS BMP stubbing, eliminating the need to have an IMS system when testing an IMS program. Because the stub provides the data for the program, it also eliminates the need to have an IMS database.

Stubs move with the unit test so the test runs independently of data files, eliminating the need to move data files or tables separately. Data within data stubs can be edited to drive specific test cases.

Watch a video on how to automatially create Db2 data stubs to simplify and speed up unit testing >

Db2 Stubbing

Test Assertions

Topaz for Total Test generates default unit test result assertions that enable comparisons between expected results and actual program results. Developers can also easily change the expected results collected from the program to create new test cases. After the unit test executes, test assertions are evaluated to determine if the test passes or fails.

Program Entry and Write Assertions

Topaz for Total Test program entry assertions ensure that the parameters passed into a sub-program are correct. They are similar to write assertions, which confirm the data that is to be written to a VSAM or QSAM file, and to Db2 tables, is correct. Db2 SQL statement write assertions that can be used to verify data in UPDATE, INSERT or DELETE statements. The expected values for all these assertions are automatically captured during program execution when the unit tests are created.

Flexibly Execute Unit Tests

Because data stubs are moved with unit tests, developers have the flexibility of executing their unit tests on different systems based upon available test environments. Topaz for Total Test also displays a simple list of target systems with test runners from which to choose. Developers simply need to pick the target system and run the test. Topaz for Total Test then automatically transfers the unit tests as well as all program and data stubs needed.

Compuware | Topaz for Total Test Flexible Unit Tests

Db2 Stored Procedure Testing

Topaz for Total Test automates test setup and simplifies stored procedure testing by stubbing out Db2 calls, eliminating the need to have a Db2 subsystem. Topaz for Total Test allows stored procedures to be called independently of the main program and other stored procedures.

Compuware | Topaz for Total Test Stubbed out Stored Procedure