The document describes various software testing techniques including test scenarios, test cases, test case formats, and test case writing techniques such as boundary value analysis, equivalence class partitioning, decision tables, state transition testing, and error guessing. Examples are provided for each technique. The goal is to systematically test all possible valid and invalid conditions to identify defects in the software.
The document describes various software testing techniques including test scenarios, test cases, test case formats, and test case writing techniques such as boundary value analysis, equivalence class partitioning, decision tables, state transition testing, and error guessing. Examples are provided for each technique. The goal is to systematically test all possible valid and invalid conditions to identify defects in the software.
The document describes various software testing techniques including test scenarios, test cases, test case formats, and test case writing techniques such as boundary value analysis, equivalence class partitioning, decision tables, state transition testing, and error guessing. Examples are provided for each technique. The goal is to systematically test all possible valid and invalid conditions to identify defects in the software.
Software Test Plan • A test plan is a document describing the scope, approach, objectives, resources, and schedule of a software testing effort. IEEE 829 test plan standard • https://softwaretestingfunda mentals.com/test-plan/ Test scenario • Definition:- any functionality that can be tested. • How to write: Look at the use cases in SRS
• Example: Check the Login
Functionality Test case • a set of actions executed to verify a particular feature or functionality of your software application. • A Test Case contains test steps, test data, precondition, postcondition developed for specific test scenario • Test cases examples ▫ Check system behavior when valid email id and password is entered. ▫ Check system behavior when invalid email id and valid password is entered. ▫ Check system behavior when valid email id and invalid password is entered. ▫ Check system behavior when invalid email id and invalid password is entered. ▫ Check system behavior when email id and password are left blank and Sign in entered. Test case format • Test scenario ID • Test case ID • Test case item • Input Pre-condition • Test Steps • Test Data • Expected Result • Actual Output • Status Test case writing techniques • Boundary Value Analysis • Equivalence Class Partitioning • Decision Table • State Transition • Error Guessing Boundary Value Analysis • Boundary value analysis is based on testing at the boundaries between partitions. • If input between x & y: x-1, x, x+1, y-1, y, y+1 Equivalence Class Partitioning • This software testing method divides the input domain of a program into classes of data from which test cases should be designed. • The concept behind this technique is that test case of a representative value of each class is equal to a test of any other value of the same class. • It allows you to Identify valid as well as invalid equivalence classes. Equivalence Class Partitioning….cont Decision Table • This software testing technique is used for functions which respond to a combination of inputs or events. • Following are steps to create a decision table: ▫ Enlist the inputs in rows ▫ Enter all the rules in the column ▫ Fill the table with the different combination of inputs ▫ In the last row, note down the output against the input combination Decision Table … cont State transition testing • State transition diagrams document the events that come into and are processed by a system as well as the system's responses. • When a system must remember something about what has happened before or when valid and invalid orders of operations exist, state- transition diagrams are excellent tools to record this information. State transition testing State transition diagram terminology • State (represented by a circle)—A state is a condition in which a system is waiting for one or more events. States "remember" inputs the system has received in the past and define how the system should respond to subsequent events when they occur. • Transition (represented by an arrow)—A transition represents a change from one state to another caused by an event. • Event (represented by a label on a transition)—An event is something that causes the system to change state. Generally, it is an event in the outside world that enters the system through its interface. Sometimes it is generated within the system such as Timer expires. When an event occurs, the system can change state or remain in the same state and/or execute an action. • Action (represented by a command following a "/")—An action is an operation initiated because of a state change. It could be print a Ticket, display a Screen, turn on a Motor, etc. Often these actions cause something to be created that are outputs of the system. • a conditional (represented by square brackets [] )can be evaluated either True or False. This conditional acts as a guard allowing the transition only if the condition is true. • The entry point on the diagram is shown by a black dot while the exit point is shown by a bulls-eye symbol. State transition testing State transition testing State transition testing Error Guessing • guessing the error which can prevail in the code.
• Guidelines for Error Guessing:
▫ The test should use the previous experience of testing similar applications ▫ Understanding of the system under test ▫ Knowledge of typical implementation errors ▫ Remember previously troubled areas ▫ Evaluate Historical data & Test results Error Guessing example • Suppose there is a requirement stating that the mobile number should be numeric and not less than 10 characters. And, the software application has a mobile no. field. • Now, below are the Error Guessing technique: ▫ What will be the result if the mobile no. is left blank? ▫ What will be the result if any character other than a numeral is entered? ▫ What will be the result if less than 10 numerals are entered?