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

Функциональный файл 1

Feature: First feature file Scenario: create random session id * def sessionId = Java.type('com.company.RandomSessionId').getRandomSessionId()

Функциональный файл 2

Feature: calling another feature file Background: * def mycall = callonce read('first.feature') * def randomId = mycall.sessionId

Сценарий: print sessionId * print randomId Сценарий: print sessionId-2 * print randomId

Когда я выполняю сценарии в файле функций 2, я получаю два разных результата.

2
Amir Ghahrai 27 Ноя 2017 в 19:21

1 ответ

Лучший ответ

Это должно быть из-за того, что вы используете опцию поддержки IDE / щелчок правой кнопкой мыши / «запуск от имени». Это открытая проблема, потому что Karate необходимо кэшировать по сценариям, которые «родной» Cucumber не поддерживает: https://github.com/intuit/karate/issues/136 - извиняюсь, мне нужно обновить документацию.

Пожалуйста, используйте JUnit runner для этих случаев, я все равно рекомендую использовать их для dev-mode, а новый отчет HTML dev-mode делает это еще более полезным: https://twitter.com/KarateDSL/status/935029435140489216

0
Peter Thomas 27 Ноя 2017 в 16:34