Chapter 4 Flashcards
What is black box testing?
- Black-box testing techniques are based on the analysis of the appropriate test basis (e.g., formal requirements documents, specifications, use cases, user stories, or business processes). (Behaviour of the software )
- It is used for both functional and non-functional testing
- Concentrate on the input and outputs of the test object without reference to its internal structure
- Coverage depends is based on the items tested in the test basis and the technique applied
- Checks deviations from requirements
How is coverage calculated in black box testing?
Coverage is measured based on the items tested in the test basis and the technique applied to the test basis
What is whitebox testing?
- based on an analysis of the architecture, detailed design, internal structure, or the code of the test object.
- Unlike black-box test techniques, white-box test techniques concentrate on the structure and processing within the test object.
- This does not look at performance testing or functionality
What are common characteristics of white box testing?
- Test conditions, test cases, and test data are derived from a test basis that may include code, software architecture, detailed design, or any other source of information regarding the structure of the software
Coverage is measured based on the items tested within a selected structure (e.g., the code or interfaces) and the technique applied to the test basis
What is experience based testing?
Experience-based test techniques leverage the experience of developers, testers and users to design, implement, and execute tests. These techniques are often combined with black-box and white-box test techniques.
Test conditions, test cases, and test data are derived from a test basis that may include knowledge and experience of testers, developers, users and other stakeholders. This knowledge and experience includes expected use of the software, its environment, likely defects, and the distribution of those defects
When are ‘test charters’ used?
Durring experienced based testing
What are the advantages of experience testing?
- These techniques can be helpful in identifying tests that were not easily identified by other more systematic techniques
- Depending on the tester’s approach and experience, these techniques may achieve widely varying degrees of coverage and effectiveness.
- Finding defects that might be missed by more formal techniques
- It is useful when there are limited specification documents available
- It is useful when there testing is constrained due to time pressures
Name three types of experience testing
- error guessing
- exploratory testing
- check list testing
What is error guessing testing?
Error guessing is a technique used to anticipate the occurrence of errors, defects, and failures, based on the tester’s knowledge, including:
* How the application has worked in the past
* What kind of errors tend to be made
* Failures that have occurred in other applications
When is error guessing used? And what are it’s advantages?
After more formal techniques have been used
-It can identify tests not easily captured by formal techniques. - It can make good use of tester’s experience and available defect data.
What methodical techniques can be applied to error guessing testing?
A methodical approach to the error guessing technique is to create a list of possible errors, defects, and failures, and design tests that will expose those failures and the defects that caused them. These error, defect, failure lists can be built based on experience, defect and failure data, or from common knowledge about why software fails. Error guessing can be based on mistakes developers may make.
What is exploratory testing?
Informal (not pre-defined) tests are designed, executed, logged, and evaluated dynamically during test execution. It is best done by more experienced testers who have tested similar applications and technologies. Exploratory testing can incorporate the use of other black-box, white-box, and experience-based techniques.
Tests can be based on:
- a testers knowledge
- Exploration of a test item
- Results of previous tests
What can the test results be used for in exploratory testing?
The test results are used to learn more about the component or system, and to create tests for the areas that may need more testing.
When is exploratory testing used?
- few or inadequate specifications
- significant time pressure on testing
- complement other more formal testing techniques. Exploratory testing is strongly associated with reactive test strategies (see section 5.2.2).
- When testers are available who have enough knowledge of similar applications and technologies (this was not in the syllabus)
What is checklist based testing?
In checklist-based testing, testers design, implement, and execute tests to cover test conditions found in a checklist. Checklists can be created to support various test types, including functional and non-functional testing