Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Параметризованный запуск FitNesse теста с указанным набором значений


(Andrey Belyaevskiy) #1

Всем Привет!

Есть тест FitNesse (фактически тестовый сценарий), который я хочу прогонять в тестовом наборе несколько раз с разными данными, заданными, например, в табличном виде на странице сценария. Причем сам тест это достаточно большая последовательность действий, внутри которой иногда надо обращаться к данным текущего прогона.

Таблица с тестовым сценарием обрабатывается модернизированной версией CommandLineFixture.

Например, я видел бы организацию теста в таком виде (одна страница):

//this is part where I setup parameters
!| setParametersForTestFixtureBasedOnColumnFixture |
| givenParameneter | expectedResult |
| paramValue1 | expectedValue1 |
...
| paramValueN | expectedValueN |

//this is test actions sequence
!| myCommandLineFixture |
| doCommand1 | ${givenParameneter} |
//there can be a lot of actions where I can call actual prameter value (10-50 actions)
| checkCommand | ${expectedResult} 

Есть какие-то идеи как мне проще всего реализовать такое поведение?

Более конкретно вопросы можно сформулировать так (я пока ищу ответы на них, так что сильно не пинайте, а по мере нахождения буду тут их выкладывать):

  1. Можно ли на одной тестовой странице использовать, например, две таблицы с разными fixtures, чтобы это было интерпретировано как один тест? Так чтобы fixture первой таблицы фактически загрузил данные, а fixture второй таблицы запускался для каждого строки данных?
  2. Можно ли, например, отнаследовавшись от ColumnFixture в ней вызывать выполнение другого FitNesse теста в том же инстансе FitNesse (без реализации в своем наследнике ColumnFixture запуска отдельного FitNesse сервера из командной строке)? Например, посылкой сообщения на текущий запущенный инстанс сервера с получением статуса выполнения теста (без парсинга xml с результатами)?
  3. Можно ли в наследнике ColumnFixture вызвать выполнение указанной ниже таблицы?

Собственно, моя задача очень похожа на ту, что описана в сообщении Does fitnesse have ability to run one test several times with different parameters, а также после публикации в дискуссионной группе по FitNesse моего вопроса скину ссылку на него.