I won't repeat what's already covered in the tutorial here, but I
would like to point out that the example used in the tutorial is a
very simple case of data driven testing. In real life projects, each
scenario will most likely involve several web pages and even different
sets of web pages and links. And this can be done with a little
modeling.
Building a data driven testing suite involves two technical steps:
create a data table that contains data to test different scenarios and
write necessary script/code to read the data table one row at a time
to perform the testing.
First, you should divide scenarios into groups by their similarity in
terms of functionality being tested. For example you may have a set
of scenarios to test login with different id and password, another set
of scenarios to test different search conditions for the search pages,
and another set to test check out function.
By creating a behaviour model that represents how the application
flows through different scenarios, we can avoid writing scripts and
codes necessary to loop through rows in the data table. You can
certainly build a model that represents different scenario groups.
Because it's so easy to create a model for each scenario group,
keeping one scenario group per model helps to keep the complexity down
and makes it easier for others to understand and maintain.
Use WebMBT Builder to create the model as demonstrated in the
tutorial. Add adiitional states and transitions as necessary to
describe the scenario group. If multiple web pages are involved, just
assign the same data set name to the transition and TestOptimal will
automatically draw the data from the same data table as it executes
the model through different transitions in its path.
When you add a data field to the data set through WebMBT Builder,
system uses the html field definition to determine the list of
possible values each field can have and calls Pair-wise algorithm to
generate the least number of data rows needed to have sufficient
coverage of all of the two-way interactions among all the fields in
the data table. You can edit the data table and add additional values
to the fields, which I will cover in the another post.
Tech Support
TestOptimal.com