Как определить шаблон запроса в фоновом режиме - PullRequest
1 голос
/ 02 апреля 2019

У меня есть шаблон запроса, который используется в нескольких схемах сценариев, и примеры в каждой схеме сценариев отличаются.

для примера:
Краткое описание сценария: 1
* def query = {name: }
--- сделать что-то еще ---
Примеры:
| имя |
| Боб |
| баран |

Структура сценария: 2
* def query = {name: }
--- сделать что-то еще ---

Примеры:
| name |
| канун |

Как можно избежать дублирования определения запроса в каждом наброске сценария?Определение его в фоновом режиме и его повторное использование в запросе структуры не приводит к динамическому построению запроса из значений в примерах.

1 Ответ

1 голос
/ 02 апреля 2019

Лично я думаю, что вы, возможно, чрезмерно инженерные вещи.Некоторое количество дублирования подходит для тестов - особенно там, где это улучшает читабельность.Также см. Этот ответ: https://stackoverflow.com/a/54126724/143475

Тем не менее, вы можете переключиться на стиль управления данными в цикле следующим образом:

Scenario Outline: 1 
* table data = 
| name  |
| 'bob' |
| 'ram' |
* call read('second.feature') data

И в second.featureВы можете сделать это:

* def query = { name: '#(name)' }

Если вы хотите избежать второго файла функций, единственный другой вариант это: https://stackoverflow.com/a/55192450/143475

...