Print Page | Close Window

Test Development

Printed From: One Stop Testing
Category: Types Of Software Testing @ OneStopTesting
Forum Name: Automated Testing @ OneStopTesting
Forum Discription: Discuss All that is need to be known about Automated Software Testing and its Tools.
URL: http://forum.onestoptesting.com/forum_posts.asp?TID=3304
Printed Date: 23Feb2025 at 9:34pm


Topic: Test Development
Posted By: tanushree
Subject: Test Development
Date Posted: 26Oct2007 at 4:50am
Test Development

For automated tests to be reusable, repeatable, and maintainable, test development standards need to be defined and followed.After performing test analysis and design, the test team is now ready to perform test development.Keep in mind that the test design and development activities follow an iterative and incremental approach, in order to address the highest risk functionality up front. Table 2 correlates the development process phases to the test process phases. The testing processes and steps outlined in the table are strategically aligned with the development process, and the execution of these steps results in the refinement of test procedures at the same time as developers are creating the software modules. Automated and/or manual test procedures are developed during the integration test phase with the intention of reusing them during the system test phase.

Table 2 Development/Test Relationship

Phase Development Process Test Process
Module (Unit) Development Design module from requirements. Perform test planning and test environment setup.
  Code module. Create test design and develop test data.
  Debug module. Write test scripts or record test scenario using module.
  Unit test module. Debug automated test script by running against module. Use tools that support unit testing.
  Correct defects. Rerun automated test script to regression test as defects are corrected.
  Conduct performance testing. Verify that system is scalable and will meet performance requirements.
Integration Build system by connecting modules.Integration-test connected modules.Review trouble reports. Combine unit test scripts and add new scripts that demonstrate module interconnectivity. Use test tool to support automated integration testing.
  Correct defects and update defect status. Rerun automated test script as part of regression test, as defects are corrected.
  Continued performance testing activities. Verify that system is scalable and will meet performance requirements.
System Test Review trouble reports. Integrate automated test scripts into system-level test procedures where possible, and develop additional system-level test procedures. Execute system test and record test results.
  Correct defects and update defect status. Rerun automated test script as part of regression test as defects are corrected.
Acceptance Test Review incident reports. Perform subset of system test as part of demonstration of user acceptance test.
  Correct defects. Rerun automated test script as part of regression test as defects are corrected.

Many preparation activities need to take place before test development can begin. A test development architecture is developed (described in the next section), which provides the test team with a clear picture of the test development preparation activities or building blocks necessary for the efficient creation of test procedures. The test team will need to tailor the sample test development architecture to reflect the priorities of their particular project. Part of these setup and preparation activities involves the need to track and manage test environment set up activities, where material procurements may have long lead times. Prior to the commencement of test development, the test team also needs to perform analysis to identify the potential for reuse of existing test procedures and scripts within the automation infrastructure (reuse library).The test team needs to develop test procedures according to a test procedure development/execution schedule. This schedule needs to allocate personnel resources and reflect development due dates, among other factors. The test team needs to monitor development progress and produce progress status reports. Prior to the creation of a complete suite of test procedures, the test team performs a modularity relationship analysis. The results of this analysis help to incorporate data dependencies, plan for workflow dependencies between tests, and identify common scripts that can be applied repeatedly to the test effort. As test procedures are being developed, the test team needs to ensure that configuration control is performed for the entire test bed to include test design, test scripts, and test data, as well as for each individual test procedure. The test bed needs to be baselined using a configuration management tool.Test development involves the development of test procedures that are maintainable, reusable, simple, and robust, which in itself can be as challenging as the development of the application under test. Test procedure development standards need to be in place supporting structured and consistent development of automated tests. Test development standards can be based on the scripting language standards of a particular test tool. For example, Rational’s Robot uses SQABasic, a Visual Basic–like scripting language, and therefore the script development standards could be based on the Visual Basic development standards, outlined in a number of books on the subject.Usually internal development standards exist that can be followed if the organization is developing in a language similar to the tool’s scripting language. The adoption or slight modification of existing development standards is generally a better approach than creating a standard from scratch. If no development standards exist within the organization for the particular tool scripting language, it’s important for the test team to develop script development guidelines. Such guidelines can include directions on context independence, which addresses the particular place where a test procedure should start and where it should end. Additionally, modularity and reusability guidelines need to be addressed.By developing test procedures based on development guidelines, the test team creates the initial building blocks for an automation infrastructure. The automation infrastructure will eventually contain a library of common, reusable scripts. Throughout the test effort and in future releases, the test engineer can make use of the automation infrastructure to support reuse of archived test procedures, minimize duplication, and thus enhance the entire automation effort.




Replies:
Posted By: cprasenjit26
Date Posted: 18May2009 at 1:33pm
Thank you for this information.
 
http://softwareqatestings.com - Software testing tutorial



Print Page | Close Window