Term
What is State Transition in Testing? |
|
Definition
State Transition testing is defined as the software testing technique in which changes in input conditions causes state changes in the Application under Test (AUT).
It is a black box testing technique in which the tester analyzes the behavior of an application under test for different input conditions in a sequence. In this technique, tester provides both positive and negative input test values and records the system behavior.
It is the model on which the system and the tests are based. Any system where you get a different output for the same input, depending on what has happened before, is a finite state system. |
|
|
Term
When to Use State Transition? |
|
Definition
A tester is testing the application for a finite set of input values.
A tester is trying to test sequence of events that occur in the application under test. I.e., this will allow the tester to test the application behavior for a sequence of input values.
The system under test has a dependency on the events/values in the past. |
|
|
Term
When to Not Rely On State Transition? |
|
Definition
When the testing is not done for sequential input combinations.
If the testing is to be done for different functionalities like exploratory testing. |
|
|
Term
|
Definition
State Transition testing is defined as the testing technique in which changes in input conditions causes state changes in the Application under Test.
In Software Engineering, State Transition Testing Technique is helpful where you need to test different system transitions.
Two main ways to represent or design state transition:
State transition diagram, and
State transition table.
In state transition diagram the states are shown in boxed texts, and the transition is represented by arrows.
In state transition table all the states are listed on the left side, and the events are described on the top.
This main advantage of this testing technique is that it will provide a pictorial or tabular representation of system behavior which will make the tester to cover and understand the system behavior efficiently.
The main disadvantage of this testing technique is that we can't rely on this technique every time. |
|
|