Автоматизация каратэ: есть ли способ динамически установить имя сценария из файла json

Я использую файл JSON, который выступает в качестве документа для тестирования для моего тестирования API. JSON содержит идентификатор тестового примера, описание тестового примера, заголовок и тело запроса, которые должны быть движущим фактором автоматизации

В настоящее время я зацикливаю функцию над этим файлом JSON, чтобы установить различные проверки заголовка и тела. Однако будет полезно, если я смогу установить имя сценария из файла JSON во время его итерации.

Что-то вроде serverpost.feature

Feature:re-usable feature to publish data

Scenario: TC_NAME  # TC_NAME is avaliable in the JSON data passed to this feature. However, CURRENTLY ITS NOT TAKING THIS DATA FROM JSON FILE.

Given path TC_ID   # TC ID is taken from JSON
Given url 'http://myappurl.com:8080/mytestapp/Servers/Data/uploadServer/'
And request { some: '#(BODY)' }   # Request Body Details is taken from JSON

Пожалуйста, предложите

1 ответ

По моему честному мнению, вы просите очень ненужную функцию. Пожалуйста, обратитесь к демонстрационным примерам, ищите это в документации.

В частности, посмотрите на это: dynamic-params.feature, Существует несколько способов создания / использования таблицы данных. Вместо того, чтобы пытаться сохранить 2 файла - думайте, что каратэ - это оба - ваша таблица данных И выполнение теста. Нет необходимости усложнять ситуацию дальше.

Если вы действительно хотите повторно использовать JSON, это ваше дело, но вы не сможете обновить имя сценария, извините. То, что я предлагаю, это просто использовать print заявление, чтобы сбросить имя в журнал, и оно появится в отчете HTML (см. документ). Обратите внимание, что при вызове функции в цикле с использованием массива JSON call Аргумент УЖЕ включен в отчет, поэтому вам, возможно, не нужно ничего делать.

Просто наблюдение - ваши вопросы кажутся очень простыми, не могли бы вы прочитать документ и примеры более подробно, спасибо.

Другие вопросы по тегам