Component Approach

Many organizations pursue a “Test and Trash” methodology to achieve shortened software development life cycles. For example, an organization may plan a quick product release with changes to 30% of an application in just 8 weeks. Without giving the change much thought, up to 30% of their recorded tests break! Appvance recommends a component approach to building tests.

Test components perform specific test operations. We write or record tests as individuals components of the test function. For example, a component operates the sign-in function of a private Web application. When the sign-in portion of the application changes, we only need to change the sign-in test and the rest of the test continues to perform normally.

Appvance IQ supports the component approach in many ways: AIQ Appvance Designer records reusable test objects, Appvance Scenario Builder organizes test objects into Test Cases with multiple steps and parameterized test use cases, and AIQ supports test script creation in a variety of dynamic languages (Java, Ruby, Perl, etc.) create reusable software classes.

AIQ organizes components of a test into a functional test, load test, performance test, and Synthetic APM using a Test Scenario. For example, a test of an e-commerce application has a log-in step, search step, and order step. Use the AIQ Test Designer to record a component for each step. The Test Scenario identifies the recorded components in a test use case. When the log-in screen of the application changes only the log-in component needs to be updated.

Test Scenarios define the dynamic operational test data production library (DPL) used by the test use case and components. DPLs inject test data from a comma-separated value (CSV) and relational database (RDBMS) sources at test run time. This facilitates the reuse of components as the application moves from development to QA regression testing, to load testing, and then production.

Share Test Scenarios and test components among a team of testers, developers, and IT managers using source code repository services like Subversion (SVN) or GIT Repository and test management tools.