Define, Share and Automate your tests / specifications

Table support

Tmar allows to declare tables of data in the Tmar description in order to pass contextual values to the test. 
A table is introduce by the /table statement followed by a table name
Header and values follow he same rules as /sequence table

Map support

For Tmar, a Map is like a table with the first column used as unique key.
If a new line is added in a map, with the same value in the first column, the line will be override. With a table the line is added.
A Map is introduce by the /map statement followed by the table name
In the html report, maps have the first column filled in gray and the map name is followed by Map.

Iteration context

A powerful aspect of Tmar is that text, tables, maps and sequences can be freely mixed in a description.
In addition the same table or map may be re defined during the test. With a table for example, new lines can be added during test execution. With map lines can be modified.
In the following test, the account “9700990991” for ”John Smith” is added to a table of valid accounts.  


The two next iterations will find this account but not the account “5700550552”
Then this account is added to the valid accounts table.
The third iteration is able to find it.
Bank account operations tests
/table valid accounts
[account number | owner      |
| “9700990991”  | John Smith |
[ operation    |    account    |    found ? |
| information  |  “9700990991” |     yes    |
| information  |  “5700550552” |      no    |
/table valid accounts
[account number | owner        |
| “5700550552”  | Edith Wilton |
[ operation    |    account    |    found ? |
| information  |  “5700550552” |     yes    |