Testing Processes using BDD

Testing Processes Using BDD

Using Behat to define test scenario

Integrated into Omni-Flow

Sample Output

Sample Report for Buy Used Car:

As seen above, Omni-Flow provides various functions allowing designer to right test scenario in simple plain English.

At end of every Scenario Omni-Flow generates a full report to describe the Case state.

Demonstrating the flow of the process as well as the Case data

Below is the actual test for this example:

# features/Buy Used Car.feature
Feature: Buy Used Car
Testing Buy Car
Scenario: Buy Used Car
Given I am logged in as an “User” Role
Then I should find a process named “Buy Used Car”
When I Start Process “Buy Used Car”
Then I find a Task named “Buy Used Car.Buy Car” with Status “Started” for this Case
When I execute this Task with Data:
|NeedsRepairs| NeedsCleaning | _complete |
|Yes|Yes|on|
Then the Case has the values:
|NeedsRepairs| NeedsCleaning |
|Yes|Yes|
Then I find a Task named “Buy Used Car.Repair Car” with Status “Started” for this Case
When I execute this Task with Data:
| _complete |
| on|
Then I find a Task named “Buy Used Car.Clean Car” with Status “Started” for this Case
When I execute this Task with Data:
| _complete |
| on |
Then I find a Task named “Buy Used Car.Drive Car” with Status “Started” for this Case
When I execute this Task with Data:
|  |
|  |
Then I find a Task named “Buy Used Car.Drive Car” with Status “Updated” for this Case
When I execute this Task with Data:
| _complete |
| on |
Scenario: Buy Used Car Just cleaning
Given I am logged in as an “User” Role
#  Then I Reset Case Data
Then I should find a process named “Buy Used Car”
When I Start Process “Buy Used Car”
Then I find a Task named “Buy Used Car.Buy Car” with Status “Started” for this Case
When I execute this Task with Data:
|NeedsRepairs| NeedsCleaning | _complete |
|No | Yes | on|
Then the Case has the values:
|NeedsRepairs| NeedsCleaning |
|No | Yes |
Then I find a Task named “Buy Used Car.Clean Car” with Status “Started” for this Case
When I execute this Task with Data:
| _complete |
| on |

Also a log file is generated for any further debugging purposes.

Here is some of the syntax available for use:


I am logged in as an “” Role
I am logged in as User “” and “” Role
I am logged in as User “”
my Role is “”
I am in a directory “”
I have a file named “”
I expect an error message “”
I Start Process “”
start process named “”
I Import a process named “”
I run “”
I should get:
I find a Case where:
I should find a process named “”
I Reset Case Data
I Reset All Data
I should not find a process named “”
I find any Task named “” with Status “”
I find a Task named “” with Status “” for this Case
I find a Task named “” with Status “”
I execute this Task
I execute this Task with Data:
this Task has a status of “”
I send Message “”
I execute Event “” for Process “”
I execute Event “” for this Case
the Case has the values:
I get an output of:
I execute the script for this Case:

 

Leave a Reply