You may remember my last post, giving a sneak preview of what IBM Test Accelerator for Z.
“I can finally talk about IBM Test Accelerator for Z! It is a new shift-left testing solution with virtual environment creation and encompassing unit test through integration test. Of course I wrote a blog about it!”
I can now do more than just talk; I am happy to share that IBM Test Accelerator for Z 1.0.0 is now available!
There is a new introductory IBM Test Accelerator for Z overview video available too.
You can learn more at the upcoming webinar “Future of Test Automation for z/OS hybrid applications”.
Let's review IBM Test Accelerator for Z 1.0.0
IBM Test Accelerator for Z enables teams to adopt agile and continuous integration practices for z/OS applications, with capabilities that include automation frameworks for unit and integration tests, test recording, data capture and data generation to accelerate test creation and coverage and the flexibility to spin up temporary z/OS environments.
What is provided in Test Accelerator for Z 1.0.0? Well, there are a few different capabilities I should describe:
On-Demand Dev and Test for z/OS 1.0.0
“Where you do the testing”
On-demand Dev and Test environments for z/OS provides the capability to provision isolated virtualized z/OS instances, irrespective of the target platforms, for development and test using either the IBM z/OS Dev & Test Stock Image or a custom built image. This can be done using an easy to use role-based web user interface or via APIs integrated within a pipeline.
-
- Make a system to safely test in.
- If you break it or just want to reset it, just redeploy it.
- Don’t need it anymore? Take it down.
Simple, and powerful!
Dynamic Test Engine for z/OS 1.0.0
“How you record tests and run them”
The Dynamic Test Engine for z/OS is the sturdy, proven core for both Early Development Testing for z/OS and Integration Test Builder for z/OS used to create test recordings.
It also enables Early Development Testing for z/OS to run without requiring middleware.
The Dynamic Test Engine for z/OS on the host in concert with the IBM z/OS Debugger (Read more about the IBM Debugger 16.0.5 for z/OS here. ) makes for a trifecta of enablement for the developer doing test enhancements, allowing programming with code coverage collection and debugging while working with the tests to assure the tests cover the code and the code behaves as expected.
Why yes, you can deploy this on your On-Demand image, and then do all of your recordings and even the playbacks.
(Good idea! Glad you thought of it!)
Early Development Testing for z/OS 1.0.0
“How you make tests for programs, unit to integration”
With a prerequisite base of IBM Developer for z/OS 16.0.5 (read about the new features in Andrew’s IBM Developer for z/OS 16.0.5 post Hey, wake up Dev! New IBM Developer for z/OS 16.0.5 just dropped! ) Early Development Testing for z/OS 1.0.0 provides Unit Testing and Early Integration Testing for z/OS on the Eclipse ecosystem.
Early integration Test
What is early integration, you ask? Early integration testing is the testing of programs together but before you commit to testing within a fully configured and populated system.
You can record a test case to test batch programs or transactions, but then execute the test without the need for artifacts to be deployed in the target environments.
After recording, you can review the contents, the relationships between artifacts, and even the flow of commands!
Simply right click and choose Record Early Integration Test Case to find your way to this awesomeness!
And the recordings (.rec) and integration test cases (.itc) are easily findable (you told us where they go) as well as usable in your modern source code management such as git, so you can treat your tests as code, and even keep your tests with your code.
Unit Test
Right-click and New → Unit Test.
The Unit test capability of Early Development testing provides what you need to test COBOL at the unit level: the individual program.
Yes, all the file types are easily source control managed here too, with .tc and and .rec files for the win.
Do your record (I showed recording already… again, the Dynamic Test Engine is core!) and then marvel at your new unit test .tc in the editor.
Rename, duplicate, modify content, save, and then click Generate to create your test harness program and get to running!
Unit Test Test Data Generation
Just duplicate an existing test, change a value to start down a hard to record path, save, and click this special button conveniently located next to the Test Generate to generate test data!
Test data for the new path will be generated.
Want to see it? Check out this video to learn more about unit test test data generation in Early Development Testing for z/OS !
Integration Test Builder for z/OS 1.0.0
"Test the integrations that make the whole application”
IBM Integration Test Builder for z/OS
With Integration Test Builder, a Microsoft Visual Studio Code Extension, the user can record tests, just like in Early Development Testing, and then generate Galasa Java based tests, that can be run in Galasa.
Integration Test Builder comes with IBM Distribution for Galasa 1.0.6 so that you get a framework for integration testing that has specialty z/OS capabilities, along with support from IBM.
In a quick summary, Integration Test Builder lets you:
Create a Galasa project with just a button and a name, giving you a Maven Java project configured for Galasa.
Record your test case, which should seem familiar as this works the same way as Early Development Testing; start recording, do your manual testing, stop recording
Then the magic happens: from the recording that magically appears in your project, you’ll generate a Galasa test case after a swift menu command. You are ready to run your new Galasa Test!
IBM Distribution for Galasa 1.0.6
When you run… (Why yes, I did a Rename Symbol for the class name first for easier reading! Thanks for noticing!)
… you get fun! (Not shown: all of the harness information and the text of all the screens of the test flying by… )
Galasa even provides helpful little screenshots! ( I am sure the Orange color helps the insurance policy price!)
Some things you may want to know, Q&A style:
Q: What is IBM Integration Test Builder for z/OS?
A: IBM Integration Test Builder for z/OS is a Microsoft Visual Studio Code (VS Code) extension, for both Microsoft Windows x64 and Mac OS aarch64, that allows the user to quickly create Galasa integration level tests using the power of the Dynamic Test Engine for z/OS.
Q: What else is required in the VS Code installation?
A: Integration Test Builder 1.0.0 requires specifically the Zowe Profile capability from Zowe Explorer and Zowe Explorer for IBM CICS extensions. It is also recommended that you use the Language Support for Java by RedHat, YAML by Red Hat, Microsoft Maven for Java, and Microsoft Project Manager for Java.
Q: What is different about IBM Distribution for Galasa?
A: IBM Distribution for Galasa is supported by IBM for all production level parts of local Galasa usage, and is packaged for this usage. Beyond that, it is the same great open source [Galasa from the Open Mainframe Project]!
Q: Is there something special about Integration Test Builder for z/OS Galasa projects?
A: It is all standard here, but there is an extra secret sauce; I think it is more fun if you can spot it in the pictures or documentation versus just telling you and spoiling the fun!
So that is it, for this post, but expect more content on IBM Test Accelerator for Z soon!
Reminders
I know the top of the page was a long time ago, but don’t forget:
Enjoy!