The latest versions of Parasoft SOAtest and Parasoft Virtualize (9.10.4) and the Continuous Testing Platform (3.1.1) were released this week! We were happy to release some exciting new features, as well as continue to focus on all those little things that make our functional testing solution best-in-class.
These features and capabilities are focused around:
- Support for new testing environments and technologies, including support for load testing in distributed cloud models and more tooling integrations for easily incorporating SOAtest into your CI/CD workflows
- Testing in a microservice architecture, including updates to the Virtualize Message Proxy
- Core product enhancements to simplify implementing functional test automation and service virtualization into your continuous testing strategy
Support for new testing environments and technologies
OpenAPI 3.0 (an update to Swagger 2.0) is the newest specification for swagger with improvements on structure. This release extends our REST support to now include creating test artifacts from the new OpenAPI format.
To expand upon existing “shift-left” performance testing capabilities, we have also added support for distributed cloud models within the LoadTest ecosystem, which is a part of Parasoft SOAtest. Users now have the ability to spin up load generators inside of Amazon EC2, using the prebuild image available on the Amazon Marketplace, and control them from within LoadTest, which is powerful because when it comes to setting up distributed load tests, it is critical to make sure that your load generators are geographically located in the areas that are defined by your SLAs. This will allow you to create load tests that are much closer to real world scenarios without having to change how load tests are created or provision actual hardware.
We have also enhanced support for CI/CD workflows by extending the Parasoft Findings plug-ins for Jenkins and Visual Studio Team Services, which you can use to execute test cases and provision environments as a part of your Continuous Delivery process. The Jenkins plugin now supports Jenkins pipeline jobs.
Last but not least, you can now easily integrate API testing as a part of your CI/CD process using the dynamically deployable SOAtest server, so you can use the same "Deploy and Destroy” model for SOAtest as with Virtualize. This enables teams to create on-demand test executions to go with their on-demand test environments, dramatically reducing overall runtime costs of their test automation ecosystems. Additionally, SOAtest reports have an enhanced look and feel and now include API coverage.
Testing in Microservice Architectures
Microservices are here and they are shaking up the development and testing worlds. One of the most important advantages of developing microservices is the ability to develop, deploy, and upgrade individual services without disrupting the ecosystem.
Unfortunately, this development advantage presents a significant testing challenge, because you don’t really know what’s present in the architecture or how to isolate each component for testing. We are addressing these challenges to help you take a simplified approach to testing microservices. In this release, we added workflows and microservice-specific support to directly target this new paradigm.
There are two recognized microservice composition methodologies:
- Orchestration, where message flow logic is handled at a global level, and services are typically deployed via REST or other synchronous method. Parasoft SOAtest has always been strong here, and we continue to enhance these technologies.
- Choreography, where message flow is more “point of view” based, and services are deployed on asynchronous, event-based protocols. This has been an area of focus in the latest releast. Parasoft SOAtest now supports Kafka. This implementation is an important protocol in the microservice universe, and SOAtest now supports Kafka for both test execution and simulation, to supplement SOAtest's existing microservice-specific protocols such as RabbitMQ and Protocol Buffers.
Updates to the Virtualize Message Proxy
One of the most complex parts of microservices testing is isolating individual components in order to stabilize testing. Using service virtualization to simulate components that are out of scope for your testing is a great way to overcome this challenge. To help with this, we have made it much easier to create listeners that gather traffic for virtual services.
This new functionality gives users the ability to stand up a proxy that will be able to listen at any port and catch all traffic to and from the ecosystem. This will not only allow users to discover their dependencies but to easily simulate them in a federated or sandboxed team structure without having to change the existing port configuration. Specifically:
- You now have the ability to configure any listener port for the Virtualize message proxy. This simplifies the process of capturing traffic for your microservices.
- To simplify HTTPS configuration, you can now specify the key and truststore for the sever certificate when configuring a secure port without having to access the file system.
- You can also specify multiple connections that use the same port so that you can setup routing rules for your traffic.
To learn more about this, download the new whitepaper, Testing Microservices.
Core Product Enhancements
To simplify integrating SOAtest and Virtualize into your continuous testing pipeline, additional enhancements have been made to our rich REST API of the SOAtest and Virtualize Servers to support common workflows. For all those API junkies out there, here are the specifics:
- Provision-level users can enable and disable virtual assets and message proxies, as well as start and stop recording.
- We also added 2 new APIs:
- Create a SOAtest TST file from an XSD resource (Schema) - This will allow you to programmatically create virtual assets at the earliest stage of your SDLC, right when the schema becomes available.
- Programatically set your Continuous Testing Platform and License settings for SOAtest and Virtualize – This supercharges dynamic deployments of SOAtest and Virtualize in CI/CD pipelines by giving the user the ability to pull the Parasoft server from somewhere (i.e. Docker hub); push it to cloud providers like Amazon EC2, Azure, Pivotal, etc; and then set the license on the fly.
There were many additional enhancements to the Parasoft ecosystem that you can read about in the full release notes. We are focused on the most paramount challenge facing software development and testing organizations today -- building automation and acceleration into every step of the SDLC -- and these product updates follow that intention, making developer's and tester's lives a little easier.
If you are an existing customer, I would encourage you to upgrade your infrastructure to get the latest and greatest features by visiting the Parasoft Customer Portal. If you’re new to Parasoft, you can request a free trial or even download the Parasoft Virtualize Community Edition for free and get started right away.