Как уже говорилось выше, табличное представление тестов удобно при четко формализованных входных и выходных потоках данных системы. Например, в предыдущем фрагменте тест-плана в комментариях приведена таблица, в которой по вертикали указаны имена входных потоков данных системы, по горизонтали приведены номера тестовых примеров, а в ячейках на их пересечении приведены значения. Выходные значения приводятся в том же формате ниже:
' 1 2 3 4 5 6 7 8
' -----------------------------------------------
' computed - - 0 0 0 - - -
' good1 0 1 0 0 0 0 0 0
' computed2 - - - - 0 - - -
' good2 1 1 1 0 0 1 1 1
' delay - - - - - 0 - -
' pack1 1 1 1 1 1 1 0 0
' pack2 0 0 0 0 0 0 0 1
' -----------------------------------------------
' output_message 1 0 0 1 0 0 0 1
Табличное представление, как правило, используется для упрощения работы по подготовке и сопровождению большого количества однотипных тестов. Среда тестирования, использующая табличное описание тестовых примеров в качестве входных данных включает в себя интерпретатор таблиц, преобразующих это описание в последовательность команд, выполняемых средой для проведения тестирования, т.е. своего рода сценарий.
|
|
В случае, когда однотипными являются не только входные и выходные данные, но и их значения, может использоваться альтернативная форма представления табличных данных. Тестовые примеры в ней также нумеруются по горизонтали, а входные потоки данных – по вертикали. Однако, под каждым из потоков данных перечисляются возможные входные значения, а факт того, что это входное значение должно быть передано в данном тестовом примере, отмечается помещением специальной метки (например, символа X) на пересечении значения и тестового примера в таблице:
+-------------+
INPUTS: | a b c d e f |
----------------------------+-------------+
Power_On_Mode |
COLD | X X X
WARM | X X X
Configuration_Store_Id |
0xFFFD | X X X X X X
IR_Access_Mode |
1 | X X X X
0 | X
0xFFFF | X
Reset_Mode |
0 | X X X X X X
Reset_Source |
0 | X X
1 | X
2 | X X X
При интерпретации каждого такого тестового примера он преобразуется в последовательность команд, которые выполняются средой тестирования, например для тестового примера a:
Power_On_Mode = COLD
Configuration_Store_Id = 0xFFFD
IR_Access_Mode = 1
Reset_Mode = 0
Reset_Source = 1
Run_Test()
Последняя команда здесь запускает тест на выполнение с установленными входными данными.