A test strategy describes how the test effort will reach the quality goals set out by the development team.
Sometimes called the test approach, test strategy includes, among other things, the testing objective, methods and techniques of testing and the testing environment.
Test strategies describe how the product risks of the stakeholders are mitigated at the test-level and which types of test are to be performed. The strategy can be documented on its own or is more commonly included as part of a test plan. Test strategies layout plans for how much manual and automated testing will happen at what phases and using which methods, such as unit testing, code review, UI validation, API testing, regression testing, etc.
A Test Plan is…
A document describing the scope, approach or strategy, resources, and schedule of intended testing activities. It defines test items, the features to be tested, the testing tasks, who will do each task, and any risks requiring contingency planning.
The ANSI/IEEE Standard 829 for Software Test Documentation.
Test Design is…
Thinking about what you are testing and examining the product you are about to develop. It is the process of analyzing test requirements and arriving at test objectives and then test cases. It starts with an analysis of what areas will be tested then later, how they will be tested.
Test design could require all or one of:
- Knowledge of the software, and the business area it operates on.
- Knowledge of the functionality being tested.
- Knowledge of testing techniques and heuristics.
Test methods are structures, ideas, or approaches to how you will design the test cases to execute the test strategy. Test methods may be determined by standards, regulatory agencies, or contractual agreements. They may be dependent on available documentation- or lack of documentation. Test methods often go hand-in-hand with the test strategy as how you will design and execute the test cases.
Black Box Testing — The technique of testing without having any knowledge of the interior workings of the application. The tester is oblivious to the system architecture and does not have access to the source code. Typically, when performing a black box test, a tester will interact with the system’s user interface by providing inputs and examining outputs without knowing how and where the inputs are worked upon.
White Box Testing — The detailed investigation of internal logic and structure of the code. White box testing is also called glass testing or clear box testing. In order to perform white box testing on an ap-plication, the programmer or tester needs to possess detailed knowledge of the internal working of the code.
Grey Box Testing — A technique to test the application with limited knowledge of the internal workings of an application, system, or platform. In software testing, the term the more you know the better carries a lot of weight when testing an application.
Test coverage is a measurement of the extent of testing based on some criteria. Common measurements are code coverage, platform coverage, requirements coverage, user story coverage, form coverage, data coverage. There are many ways to measure coverage and report back to the team on testing progress and confidence.
Sources: Wikipedia, Tutorials Point