Functional Testing With DevTest Framework From CA Technologies
Learn how to leverage a new technology to streamline your development process, by allowing QA, devs, and analysts to test throughout the development life-cycle.
Join the DZone community and get the full member experience.Join For Free
Functional Testing with DevTest framework from CA Technologies allows QA, development, and business analyst teams to fully test dynamic websites and Rich Internet Application (RIA) browser interfaces, as well as directly testing the many building blocks that exist below the UI. With CA Application Test, all of the heterogeneous components the team needs to functionally test can now be deeply exercised with one tool in a code-less manner.
Today’s web applications function more dynamically than ever, and accordingly, we now have to change the way we functionally test applications. On the front end, new open source based tools, microservices, mobile, and IoT are driving up testing complexity. On the back end, web UIs – and other applications and services – consume dynamic data from a variety of underlying services and data sources, which are concealed from the end user.
Therefore, testers experience an incredible amount of variability in trying to test user experience at the UI layer, and the “headless” services behind it that provide business logic and data to the application. For the enterprise, choosing an Agile or even DevOps based approach is not an ‘either-or’ proposition, so testing shouldn’t be bound to either approach. Manual acceptance testing at the end of development provides completely inadequate coverage for the modern enterprise application. Quality can only be accomplished when every layer of the application is tested and validated by the business throughout the design, development, and delivery life-cycle.
How It Works: Stepping Through Functional Testing
CA Application Test provides a powerful engine for functionally testing applications, both at the UI level and directly testing the myriad of Service and Implementation layers that provide dynamic data and business logic.
CA Application Test’s functional testing engine goes several steps deeper than traditional testing approaches, with a no-code testing client that offers “Live Interaction” with the component or application under test. Here’s a step-by-step overview.
- First, CA Application Test Connects to an object on the application server, or over the Internet.
- Next, CA Application Test gathers information about the component, showing you available methods for interacting with it.
- Then, you can Invoke, or “Stimulate” the target system with a method, to create a result.
- CA Application Test then gets the Response from that object as a behavior – so you can make a test assertion against that behavior as part of your testing process.
- CA Application Test can then React to that response and invoke the next step in the testing workflow.
Since DevTest is an integrated testing suite, the value of Functional Tests continues, and tests are reused in other processes. For instance, you can save the response data within a database, use that data to validate the behavior of another component or sequence of steps, save that functional test sequence as part of a business workflow, check the workflow in deployment at load, and then monitor its performance within a set of workflows; the list goes on.
- Breadth and Depth of test coverage. CA Application Test tests can span every layer of the architecture in a single test. Unlike testing tools that are created to test a single technology (for instance, only at the UI, or only at the WSDL layer).
- High testing efficiency and adoption. CA Application Test’s intuitive, no-code testing UI enables developers to construct complex, multi-tier functional tests up to 90 percent faster than possible using coding methods, with much more relevant test feedback than pass or fail. Non-developers who understand the business requirements can also get involved in functional validation much earlier in the development lifecycle, even at the component level, meaning the entire team can find and resolve issues far earlier and meet delivery goals.
- High level of reuse. CA Application Test’s test process is a declarative approach that respects the dynamic, variable nature of enterprise applications. Tests created in CA Application Test are far less brittle than scripted procedural tests or typical record/playback UI-only testing tools. CA Application Test’s tests can assume dynamic data inputs, and be easily extended at any step to invoke and verify other layers of the architecture.
- Extensibility to custom and legacy objects. Since every enterprise IT shop inevitably has some unique components, the ability to rapidly teach CA Application Test to talk to your custom applications using the powerful CA Application Test’s Extension Kit is crucial to achieving functional test coverage across the entire application.
The more complex your enterprise applications are, the more compelling functional testing with CA Application Test becomes. Quality is not just a tool you can buy; it is an experience your whole team needs to own. We invite you to take a closer look at our CA Application Test from CA Technologies today.
Published at DZone with permission of Alan Baptista, DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.