written 5.1 years ago by |
The software is basically a part of a system for which it is being developed. Systems consist of hardware and software to make the product run. The developer develops the software in the prescribed system environment considering the testability of the software. Testability is a major issue for the developer while developing the software, like a badly written software may be difficult to test. Testers are supposed to get on with their tasks as soon as the requirements are specified. Testers work on the basis of a bug model which classifies the bugs based on the criticality or the SDLC phase in which the testing is to be performed. Based on the software type and the bug model, testers decide a testing methodology, which guides how the testing will be performed. With suitable techniques decided in the testing methodology, testing is performed on the software with a particular goal. If the testing results are in line with the desired goals, then the testing is successful; otherwise, the software or the bug model or the testing methodology has to be modified so that the desired results are achieved. The following describes the testing model.
Software and Software Model
Software is built after analyzing the system in the environment. It is a complex entity which deals with the environment, logic, programmer psychology, etc. However, complex software makes it very difficult to test. Since in this model of testing, our aim is to concentrate on the testing process, the software under consideration should not be so complex such that it cannot be tested. In fact, this is the point of consideration for developers who design the software. They should design and code the software such that it is testable at every point, thus avoiding unnecessary complexities.
Bug Model
Bug model provides a perception of the kind of bugs expected. Considering the nature of all types of bugs, a bug model that may help in deciding a testing strategy can be prepared. However, every type of bug cannot be predicted. Therefore, if we get incorrect results, the bug model needs to be modified.
Testing Methodology and Testing
Based on the inputs from the software model and the bug model, testers can develop a testing methodology that incorporates both the testing strategy and testing tactics. The testing strategy is the roadmap that gives us well-defined steps for the overall testing process. It prepares the planned steps based on the risk factors and the testing phase. Once the planned steps of the testing process are prepared, software testing techniques and testing tools can be applied within these steps. Thus, testing is performed on this methodology. However, if we don't get the required results, the testing plans must be checked and modified accordingly.