Podcast
Questions and Answers
What is the minimum character requirement for a password?
What is the minimum character requirement for a password?
Which of the following is an invalid input for a login ID?
Which of the following is an invalid input for a login ID?
What type of analysis is used to determine pass or fail for input sizes?
What type of analysis is used to determine pass or fail for input sizes?
What is the maximum character limit for a login ID?
What is the maximum character limit for a login ID?
Signup and view all the answers
Which character type is NOT accepted in a password?
Which character type is NOT accepted in a password?
Signup and view all the answers
What is the correct format for an account number suffix?
What is the correct format for an account number suffix?
Signup and view all the answers
What would be considered an invalid case for a login ID based on character types?
What would be considered an invalid case for a login ID based on character types?
Signup and view all the answers
What is the requirement for the account number prefix?
What is the requirement for the account number prefix?
Signup and view all the answers
What is the minimum character requirement for a valid password?
What is the minimum character requirement for a valid password?
Signup and view all the answers
Which of the following represents a valid case for an account number suffix?
Which of the following represents a valid case for an account number suffix?
Signup and view all the answers
What happens when the input length is one less than the minimum for the account number suffix?
What happens when the input length is one less than the minimum for the account number suffix?
Signup and view all the answers
Which of the following describes a 'Bug' in software?
Which of the following describes a 'Bug' in software?
Signup and view all the answers
Which statement is true regarding Equivalence Class Partitions in the context of boundary value analysis?
Which statement is true regarding Equivalence Class Partitions in the context of boundary value analysis?
Signup and view all the answers
What defines a 'Defect' in software testing?
What defines a 'Defect' in software testing?
Signup and view all the answers
What is the maximum character length for a valid password?
What is the maximum character length for a valid password?
Signup and view all the answers
In the context of inspection within document evaluation, which of the following best describes the process?
In the context of inspection within document evaluation, which of the following best describes the process?
Signup and view all the answers
What is the main focus of black-box testing?
What is the main focus of black-box testing?
Signup and view all the answers
Which of the following describes white-box testing?
Which of the following describes white-box testing?
Signup and view all the answers
What is the primary objective of Basis Path Testing?
What is the primary objective of Basis Path Testing?
Signup and view all the answers
In Flow Graph Notation, what does a predicate node indicate?
In Flow Graph Notation, what does a predicate node indicate?
Signup and view all the answers
Which statement about edges in flow graphs is correct?
Which statement about edges in flow graphs is correct?
Signup and view all the answers
How does white-box testing ensure the validity of internal data structures?
How does white-box testing ensure the validity of internal data structures?
Signup and view all the answers
Which statement accurately reflects the purpose of white-box testing?
Which statement accurately reflects the purpose of white-box testing?
Signup and view all the answers
Why are regions important in flow graph analysis?
Why are regions important in flow graph analysis?
Signup and view all the answers
What is the main focus of boundary value analysis?
What is the main focus of boundary value analysis?
Signup and view all the answers
When designing test cases for an input range of 8-12 characters, which value would not be considered valid?
When designing test cases for an input range of 8-12 characters, which value would not be considered valid?
Signup and view all the answers
According to the guidelines for boundary value analysis, which of the following scenarios is most complete?
According to the guidelines for boundary value analysis, which of the following scenarios is most complete?
Signup and view all the answers
What would be an appropriate test case for an invalid input condition that specifies a password length must be between 8 and 12 characters?
What would be an appropriate test case for an invalid input condition that specifies a password length must be between 8 and 12 characters?
Signup and view all the answers
If the valid user ID length is between 4 and 16 characters, what should be included in test cases based on the boundary value analysis?
If the valid user ID length is between 4 and 16 characters, what should be included in test cases based on the boundary value analysis?
Signup and view all the answers
Which of the following best describes internal program data structures in the context of boundary value analysis?
Which of the following best describes internal program data structures in the context of boundary value analysis?
Signup and view all the answers
What is a key component of equivalence partitioning that complements boundary value analysis?
What is a key component of equivalence partitioning that complements boundary value analysis?
Signup and view all the answers
In design guidelines for boundary value analysis, when should values just above and just below be tested?
In design guidelines for boundary value analysis, when should values just above and just below be tested?
Signup and view all the answers
What is the primary purpose of cyclomatic complexity in software testing?
What is the primary purpose of cyclomatic complexity in software testing?
Signup and view all the answers
Which formula can be used to compute cyclomatic complexity based on the number of edges and nodes?
Which formula can be used to compute cyclomatic complexity based on the number of edges and nodes?
Signup and view all the answers
What defines an independent program path?
What defines an independent program path?
Signup and view all the answers
How many independent paths are defined in the basis set shown?
How many independent paths are defined in the basis set shown?
Signup and view all the answers
Which of the following formulas represents the number of independent paths based on predicate nodes?
Which of the following formulas represents the number of independent paths based on predicate nodes?
Signup and view all the answers
What would not be counted as a new edge in independent paths?
What would not be counted as a new edge in independent paths?
Signup and view all the answers
In equivalence partitioning, how many classes are created when an input condition specifies a member of a set?
In equivalence partitioning, how many classes are created when an input condition specifies a member of a set?
Signup and view all the answers
What does the number of regions in a flow graph correspond to in terms of cyclomatic complexity?
What does the number of regions in a flow graph correspond to in terms of cyclomatic complexity?
Signup and view all the answers
If the number of nodes in a graph is 9 and the number of edges is 11, what is the cyclomatic complexity?
If the number of nodes in a graph is 9 and the number of edges is 11, what is the cyclomatic complexity?
Signup and view all the answers
What does equivalence partitioning not consider when creating input classes?
What does equivalence partitioning not consider when creating input classes?
Signup and view all the answers
Study Notes
Software Testing Techniques
- White-box testing and black-box testing are two software testing techniques.
Two Unit Testing Techniques
-
Black-box testing: Focuses on the function of a product, not its internal structure. Tests if the specified function is fully operational and error-free. Includes tests at the software interface. Also known as functional testing or behavioral testing.
-
White-box testing: Examines the internal workings of a product. Ensures that internal operations match specifications, and all internal components are exercised. Focuses on procedural details, logical paths, and specific conditions/loops. Also called structural testing or glass-box testing.
White-box Testing
- Uses the control structure of component-level design to create test cases.
- Guarantees all independent paths in a module are exercised at least once.
- Exercises every logical decision (true and false sides).
- Executes all loops at their boundaries.
- Tests internal data structures for validity.
Basis Path Testing
- A white-box testing technique by Tom McCabe.
- Derives a logical complexity measure from a procedural design.
- Uses this measure as a guide for defining a basis set of execution paths.
- Test cases derived to exercise the basis set execute every statement in the program at least once.
Flow Graph Notation
- A circle in a graph is a node representing a sequence of one or more procedural statements.
- A node with a conditional expression is a predicate node.
- Each compound condition (multiple Boolean operators) is a separate predicate node.
- A predicate node has two edges (True and False).
- An edge (link) shows flow of control.
- Edges do not intersect or cross other edges.
- Areas bounded by edges/nodes are regions.
Independent Program Paths
- A path from the start node to the end node that introduces at least one new set of statements/conditions.
- Must traverse at least one new edge compared to previous paths.
Cyclomatic Complexity
- A quantitative measure of the logical complexity of a program.
- Defines the number of independent paths in the basis set.
- Provides an upper bound for the required test cases.
- Calculated in three ways:
- Number of regions.
- V(G) = E - N + 2 where E = edges, and N = nodes.
- V(G) = P + 1 where P = predicate nodes.
Deriving the Basis Set and Test Cases
- Use the program design or code to draw a flow graph.
- Determine the cyclomatic complexity of the resultant flow graph.
- Create a basis set of linearly independent paths.
- Create test cases that force each path to execute.
Black-box Testing
- Complements white-box testing by uncovering different classes of errors.
- Focuses on functional requirements and the information domain of a software program.
- Utilizes in latter testing stages, after white-box testing.
- Identifies input conditions to fully exercise all functional requirements.
Black-box Testing Categories
- Incorrect or missing functions.
- Interface errors.
- Errors in data structures or external data access.
- Behavior or performance errors.
- Initialization and termination errors.
Equivalence Partitioning
- A black-box testing technique dividing input domain into classes.
- Ideal for reducing total test cases.
- Based on equivalence classes for valid and invalid input conditions.
- Selects test cases from each equivalence class to exercise the largest number of attributes.
Guidelines for Defining Equivalence Classes
- Range input conditions have one valid range and two invalid ranges.
- Specific value input conditions have one valid and two invalid values.
- Sets of values have one valid set and one invalid set.
- Boolean values have one valid and one invalid Boolean condition.
Boundary Value Analysis
- A black-box testing technique focusing on boundaries of input domain.
- Complements equivalence partitioning.
- Selecting test cases at the edges of classes, from both input and output domains.
Guidelines for Boundary Value Analysis
- Test cases for input ranges include values at the boundaries and just above/below these boundaries.
- Test cases for input values include minimum, maximum values and just above and below the values.
- Test output values analogous to input values.
- Test to stress data structures, by testing at minimum and maximum boundaries.
Walkthrough, Inspection & Peer Review
- Walkthrough: Study of a document for completeness/correctness, from beginning to end.
- Inspection: Focus on a specific aspect within a document.
- Peer Review: Comparison of two similar documents for completeness/correctness.
Error, Defect & Bug
- Error: A coding mistake found by the developer.
- Defect: A mismatch between expected and actual software behaviour, found by the tester (also called issue or flaw).
- Bug: A problem in software during use, found by customers or users.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Related Documents
Description
This quiz covers essential software testing techniques, focusing on white-box and black-box testing methods. It outlines their definitions, purposes, and specific characteristics. Test your understanding of these fundamental concepts in software quality assurance.