Monday, July 1, 2013

Testing Methodologies



Testing Methodologies are the set of methods, techniques and procedures, consistent with the Test Strategy, that are set in place as part of the operation procedures. Methodologies are applied to all areas of management such as defect, change, resources, communication, project and reporting planning and others. In this area a Test Manager should define and specify all definitions required to be standardized in the implementation.

It is define as the basic approach for performing the testing for an application. Test cases are developed using various test techniques to achieve more effective testing. By this, software completeness is provided and conditions of testing which get the greatest probability of finding errors are chosen. So, testers do not guess which test cases to chose, and test techniques enable them to design testing conditions in a systematic way. Also, if one combines all sorts of existing test techniques, one will obtain better results rather if one uses just one test technique.

There are numerous methodologies available for testing a  software. The methodology we choose depends on factors such as the nature of project, the project schedule, and resource availability.

Different applications require different ways of testing.

Essential elements of a testing methodology:


Ø  Defined roles and tasks
Ø  List of required deliverables (templates tend to be helpful here)
Ø  Links to related documents from other methodologies / source documents
Ø  Common terminology
Ø  Workflow

  
Review and Improve:
Periodically review the testing methodology against the business processes of the organization to ensure that it best supports the testing efforts of the organization. As necessary, modify the methodology to match processes that provide the best possible quality of the final product.



Nature of Interaction with the product
Ø  Static Analysis
Ø  Dynamic Analysis
  


Knowledge of implementation intricacies of the product
Ø  White Box
Ø  Black Box

Mode of running actual tests on the product
Ø  Manual
Ø  Automation



Static analysis:

Static analysis is the analysis of computer software that is performed without actually executing, or running, that software. Static analysis tools look at applications in a non-run time environment. This method of testing has distinct advantages in that it can evaluate both web and non-web applications and through advanced modeling, can detect flaws in the software’s inputs and outputs that cannot be seen through dynamic web scanning alone.

Static analysis tools are generally used by developers as part of the development and component testing process. The key aspect is that the code (or other artifact) is not executed or run but the tool itself is executed, and the source code we are interested in is the input data to the tool.
These tools are mostly used by developers. Static analysis tools are an extension of compiler technology – in fact some compilers do offer static analysis features. It is worth checking what is available from existing compilers or development environments before looking at purchasing a more sophisticated static analysis tool.







No comments: