Test Techniques Flashcards
What are the 3 main testing techniques?
- Black Box - Aka Behavioral or Behavior based techniques. These techniques focus on the inputs and outputs of the test object without references to its internal structure.
- White Box - aka structural or structure based. These techniques are based on an analysis of the: architecture, detailed design, internal structure, or the code of the test objects. White box techniques concentrate on the structure and processing within the test objects.
- Experienced-Based - Leverage the experience of the developers, testers, and users to design, implement, and execute tests. These techniques are often combined with white box & black box techniques
What are some characteristics of black box testing techniques?
Black Box - Aka Behavioral or Behavior based techniques. These techniques focus on the inputs and outputs of the test object without references to its internal structure.
Common characteristics include:
- Test conditions, cases, and data are derived from the test basis that may include requirements, specifications, and use cases
- Detects gaps between requirements and implementation
- Coverage is measured based on items tested
- Applicable to both functional and non-functional tests
What are some characteristics of white box techniques?
White Box - aka structural or structure based. These techniques are based on an analysis of the: architecture, detailed design, internal structure, or the code of the test objects. White box techniques concentrate on the structure and processing within the test objects.
Common characteristics include:
- Test conditions, cases, and data are derived from test basis that may include code, software architecture, or any other source of information regarding the structure of the software
- Coverage is measured based on items tested within a selected structure
What are some characteristics of expert based techniques?
Experienced-Based - Leverage the experience of the developers, testers, and users to design, implement, and execute tests. These techniques are often combined with white box & black box techniques.
Common characteristics include:
- Test conditions, cases, and data are derived from a test basis that may include knowledge or experience of the tester, developer, user, or stakeholder
- This knowledge and experience includes: expected use of software, its environment, likely defects & the distribution of those defects
- Experience-based tests are derived from the tester’s skill and intuition as well as their experience with similar applications or technologies
- These techniques can identify tests that were not covered by more systematic testing
- These techniques achieve widely varying degrees of courage. In fact coverage may be unmeasurable or difficult to assess
What are 5 kinds of black box testing?
- Equivalence Partitioning -divides data into partitions in such a way that all of the members of a given partition are expected to be processed in the same way.
- Boundry Value Analysis (BVA)-is an extension of equivalence partitioning. But it can only be used when the petition created is ordered consisting of numeric or sequential data, the minimum and maximum values of a partition, or its boundry values.
- Decision-Table Testing- Decision Tables are a good way to record complex business rules that the system must implement. The testers identify conditions and the resulting actions of the system.
- State Transition Diagram - Components or systems may respond differently depending on current conditions or previous history. Previous history can be summarized using the concept of States. A state transition diagram shows possible software states as well as how the software enters, exists, and transitions between states
- Use Case Testing-tests are derived from use cases, which are a specific way of designing interactions with software items
What are some attributes of equivalence partitioning testing? (Black box technique)
Equivalence Partitioning -divides data into partitions in such a way that all of the members of a given partition are expected to be processed in the same way.
- There are equivalent partitions for both valid and invalid values
- Any partition may also be divided into subpartitions
- Each value tested must belong to one and only one equivalence partition
What are some attributes of boundary value analysis (BVA) testing? (Black box technique)
Boundry Value Analysis (BVA)-is an extension of equivalence partitioning. But it can only be used when the petition created is ordered consisting of numeric or sequential data, the minimum and maximum values of a partition, or its boundry values.
- Behavior at the boundaries of equivilance partitions is more likely to be incorrect than behavior within the partitions
- Boundy Value Analysis can be applied to all test levels
- This technique is generally used to test requirements that call for a range of numbers
What are some attributes of decision table testing (black box technique)
Decision-Table Testing- Decision Tables are a good way to record complex business rules that the system must implement. The testers identify conditions and the resulting actions of the system.
- The rows of the table are formed by conditions (at the top) and actions (at the bottom)
- Each column of the table corresponds to a decision rule that defines a unique combination of conditions, which results in the exaction of the actions associated with that rule
- The values of the conditions and actions are shown as Boolean values (True or False)
- A full decision table has enough columns (or test cases) to cover every combination of conditions
- You may delete the columns that do not affect the outcome to considerably decrease the number of test cases. Ex: You can remove repeated combinations of conditions and impossible conditions (known as collapsing decision tables)
- Minimum coverage for decision table testing is to have at least one test case per decision rule in the table
What are some attributes of the state transition diagram technique? (Black box technique)
State Transition Diagram - Components or systems may respond differently depending on current conditions or previous history. Previous history can be summarized using the concept of States. A state transition diagram shows possible software states as well as how the software enters, exists, and transitions between states
- An event results in a transition
- The same events can result in different transitions of the same state
- State transition diagrams only show valid transitions and exclude the invalid ones
- Primarily used for menu based applications
- The concept of a “state” is abstract. It may represent a few lines of code or an entire business process
What are some attributes of use case testing techniques? (Black box technique)
Use Case Testing-tests are derived from use cases, which are a specific way of designing interactions with software items
- Associated with actors (the user) and subjects (the component)
- A use case can be described by interactions and activities, as well as preconditions, postconditions and natural language
What are 2 of the code-related white box techniques that are most commonly used at the component testing level?
- Statement Testing- Exercises the potential executable statements in the code. All or only some statements can be tested. Coverage is measured as the number of statements executed divided by total number of executable statements. This is normally expressed as a percentage
- Decision Testing -Exercises the Decisions in the code and tests the code that is executable based on decision outcomes. Test cases follow the control flows that occur from a decision point. Ex: an IF statement. Coverage is measured as the number of decision outcomes executed by the tests divided by the total number of decision outcomes in the test object. This is expressed as a percentage
What are the similarities and differences of statement and decision white box testing?
The main value of statement and decision testing explained:
- when you have 100% statement coverage all statements have been tested. However, it does not ensure all decisions have been tested
- when you have 100% Decision coverage all decisions (true and false) have been tested And achieving 100% Decision coverage guarantees 100% Statement coverage
- Decision coverage encompasses both true and false outcomes
- statement coverage helps find defects in code not found before
What are 3 kinds of experience-based testing techniques?
① Error Guessing- a technique used to anticipate the occurrence of errors based on the tester’s knowledge
② Exploratory Testing- informal tests are designed, executed, logged, and evaluated dynamically during test execution
③ Checklist Based Testing- testers design, implement, and execute tests to cover test conditions found in a checklist
What are some attributes of error guessing, an experience-based testing technique?
Error Guessing- a technique used to anticipate the occurrence of errors 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
• It may be helpful to design a list of possible errors, defects, and failures and design tests to expose them
What are some attributes of exploratory testing, an experience based testing technique?
Exploratory Testing- informal tests are designed, executed, logged, and evaluated dynamically during test execution
• May use session-based testing to structure the activity, which means exploratory testing is conducted within a defined timebox
• The tester may use a test charter containing their objective to guide their testing
• Most useful testing when there are few or inadequate specifications
• Strongly associated with reactive test strategies