Application Modernization Testing

Application Modernization Testing

As more legacy applications are converted to the web or other modern user interfaces, validation of that conversion must be done as part of the testing process. Testing often accounts for a large portion of the project budget and it is often a costly and time consuming process to build tests with traditional testing tools for the modernized version of an application. In addition, testing cannot begin until after conversion which can significantly delay the delivery of the application.

Executive Overview

As more legacy applications are converted to the web or other modern user interfaces, validation of that conversion must be done as part of the testing process. Testing often accounts for a large portion of the project budget and it is often a costly and time consuming process to build tests with traditional testing tools for the modernized version of an application. In addition, testing cannot begin until after conversion which can significantly delay the delivery of the application.
QualiTest has partnered with Zeenyx Software to use its flagship product, AscentialTest in client engagements, shrinking the testing times for application modernization projects. AscentialTest reduces test creation, data management and test maintenance times by allowing users to develop tests against the legacy application as a baseline and then, convert them to the new user interface. This approach saves time and money, and ensures that the converted application produces the same results as the original.

Solution Details

Object Recognition

AscentialTest’s object recognition is built around Zeenyx’s patented snapshot technology. A snapshot is an application image that contains the hierarchy and attributes of the objects which it contains. Figure 1 displays a snapshot of a legacy application screen.

F1

The panel on the right contains the list of objects that have been defined. To define an object, the user selects it from the snapshot using the mouse and drags it over to the App Object tree view. The App Object Editor located below the snapshot displays the definition of the object selected in the object tree. Each object definition is comprised of three components:

  • Class
  • Name
  • Path

The class of the object defines its behavior and attributes. For example, objects in the class of TerminalField allow users to input text. They share a ‘text’ attribute that stores the value of the text that they contain. The name of the object is used to refer to it in steps and tests. The path, along with the class, is used by AscentialTest to locate the object. When a legacy application is converted, screen elements are converted to classes that are implemented in the new target platform. Consequently, each object definition will map to a new object class. Let’s look at an example. Figure 2 displays the Object definition for the EnvironmentSelection screen.

F2

The definitions on the left reflect the original object classes such as TerminalLabel, TerminalText and TerminalField. The set on the right reflect the classes of the new target platform, in this case, the web, which includes classes like WebText and WebTextField. Notice that the object names are common across the two platforms. Since it is the object names to which tests refer, tests that reference those objects are unaffected by the conversion from the legacy to the modernized platform as you will learn more about below. The App Object Editor in Figure 3 displays the definition details for the each object. In this example, the ‘Text’ attribute is used to define the TerminalText element called UserID.

F3

That same element is defined on the modernized platform as an object of the class WebText. To convert the legacy objects to the new platform, the user simply takes a snapshot of the modernized version of the application and then re-drags the objects to generate new path statements.

F4

Since the names of the objects have not changed, tests that were developed for the legacy application can be used to validate the modernized version of the application with only a minimum amount of effort.

Step-based Testing

The following is a high level overview of how tests are created in AscentialTest.

F42
AscentialTest implements a step-based approach for building tests. In Figure 4, a step is in the process of being created using the Snapshot and Action Panel. Actions are added to the step by either dragging from the Snapshot or using the buttons in the Actions Panel. Although not from recording in the traditional sense, actions are automatically generated so that there is no requirement for scripting.

f5
Figure 5 provides a closer view of the completed step. Notice that AscentialTest automatically provides parameters for each field in the ‘verify’ action so that the step can be re-used.

 

f6
The user builds a library of reusable steps like the one displayed in Figure 6 for the Project Estimated and Tracking (Peat) application.
Those steps are then used to build tests. Figure 7 shows a test that has been created simply by dragging steps from the Project Explorer on the left to the Test Editor.

f7

Using the parameters of each step, AscentialTest automatically generates a data table to contain the test data and binds it to the test. Figure 8 displays a section of the data table that was generated for the sample test.
f8

The user provides the data and then associates the test with a requirement specified in a test plan like the one pictured in Figure 9. The icon indicates that the test requirement has been automated.

F9
Changes to Transaction Flow

When a legacy application is modernized, transaction flow may be changed to adjust to the standards and capabilities of the new platform. If tests are automated using a traditional testing tool, those user interface changes would require a significant amount of test maintenance to get tests running on the new platform, but in AscentialTest, users are able to modify only the affected reusable steps. The tests that implement those steps are not at all impacted.

Conclusion

With QualiTest’s comprehensive testing services leveraging AscentialTest’s ability to reduce test creation, data management, and test maintenance times, testing automation can be developed quickly and efficiently for application modernization projects. By providing a mechanism to convert tests built against a legacy application in order to validate the modernized version of the target application, AscentialTest not only saves time and money, it ensures that the modernized version of the application produces the same results as the original.
As a result, QualiTest clients get testing solutions specific to their industry that are tailored to the nuances of their business while providing an excellent return on investment (ROI), and improved software quality.

 

About QualiTest Group

QualiTest is the world’s second largest pure play software testing and QA company. Testing and QA is all that we do! We design and deliver contextualized solutions that leverage deep industry-specific understanding with technology-specific competencies and unique testing-focused assets. QualiTest delivers results by combining customer-centric business models, critical thinking and the ability to gain a profound comprehension of customers’ goals and challenges.
For more information on QualiTest services, please visit www.QualiTestGroup.com.

About Zeenyx Software

Zeenyx Software Inc. was founded in 2006 by Brian Le Suer and Dave Laroche, former EVP of Research and Development and Chief Architect / Founder respectively at Segue Software. After leaving Segue, Brian and Dave worked together at Star Quality Consulting, a boutique consultancy serving Fortune 500 clients.
The goal of Zeenyx’s flagship product, AscentialTest, is to radically reduce test creation and maintenance times over previous generation automated testing products. Drawing on Dave and Brian’s experience as both product developers and consultants, AscentialTest was built around six key design criteria:

  1. Build the most powerful object recognition engine on the planet.
  2. Eliminate the need for programming skills to build robust, easy to maintain tests.
  3. Kill test frameworks – eliminate the need to build and maintain them.
  4. Simplify test maintenance so that an application change requires only a single change to its automated tests.
  5. Get rid of messy spreadsheets with keywords and test data.
  6. Make testers more productive by automating the process of building automated tests.

AscentialTest’s revolutionary step-based approach incorporates all six design criteria and has led to broad market acceptance across many different industries. AscentialTest is used by enterprise testing organizations at Fortune 500 companies, small one and two man testing teams at private firms, as well as multiple consultant organizations. Zeenyx Software is privately held and located in Hopkinton, Massachusetts.
For more information on AscentialTest, please visit www.Zeenyx.com.