To establish the quality of the test process, we need to evaluate the test process itself against several properties of a quality standard. Each characteristic views the testing process from a different perspective.
Given the amount of time and money available for testing, we have to prioritize the allocation of our testing effort. In the test strategy, the risks of the system under test are well defined.The amount of time and money available for testing, prioritized and translated into test conditions and test cases using the right test techniques. By matching these test conditions to the requirements, the completeness of the test set is enhanced, and the importance of specific test results becomes apparent.
We want to test as much as possible in as short a time as possible. To do this, we must create a test set that realizes the coverage we need with a minimal number of test cases. Thus, we want to eliminate test cases that overlap, since they have no added value.
Instead, our goal is to ensure that every test case focuses on a unique aspect, or a set of related aspects. As with effectiveness, test techniques are very helpful tools in developing efficient testware.
To determine if a test has been successful, the test results must be measurable. This means that test cases and test scenarios should be made in such a manner that the result is quantifiable according to binary logic. The result of the execution of test case should be
3)never or may be
There are many different aspects of an information system that could be tested. Not all aspects are equally important, especially not to different kinds of stakeholders. For example, end users are generally not concerned about software maintainability , their focus is on time-to-market. On the other hand developers may be primarily interested in maintenance as it defines their future workload.
This means that there are different kinds of tests (white-box and black-box), which are undertaken by different stakeholders. It is important that the division of responsibilities concerning testing is made clear to all stakeholders before testing commences, otherwise completeness may not be achieved.
One of the main problems with testware is maintenance. After initial project, the test set should be maintained so that it can be used for the next release of the information system being tested. Maintenance should be made as easy as possible, otherwise the test set will be neglected. Thus the structure of the test set should be as simple as possible, and formally registered,thus if a specification changes, the affected test cases should also be noted. This not only means adding new test cases, but also that those which are no longer needed should be removed. Maintainability has a big impact on reproducibility.
Since we try to avoid developing throw away software, we should also not develop throw away testware. A lot of time and money is wasted when a test is not easily reproducible, since new tests must be created. Since we want to ensure that our tests are replicable with the same test cases, a well-developed test set makes it possible to retest and regression test with a minimum of effort. These tests are particularly well suited to automation since a computer can, if required, repeat test cases again and again.