https://github.com/intuit/karate#calling-other-feature-files
Приведенная выше ссылка содержит пример вызова файла объектов для повторного использования кода.Файл объекта, который используется повторно, вызывается с помощью входных данных
Background:
* configure headers = read('classpath:my-headers.js')
* def signIn = call read('classpath:my-signin.feature') { username:'john', password: 'secret' }
* def authToken = signIn.authToken
Вызванный my-signin.feature:
Scenario:
Given url loginUrlBase
And request { userId: '#(username)', userPass: '#(password)' }
When method post
Then status 200
And def authToken = response
...
В этом примере my-signin.feature должен выполняться свводимые имя пользователя и пароль.Я знаю, что если бы у вас было следующее:
Background:
* def username = "foo"
* def password = "secret"
в верхней части файла my-signature.feature, параметры, введенные функцией, пытающейся повторно использовать файл функции, будут перезаписаны.
Мой вопрос: Если повторное использование является основным интересом возможности вызова других файлов функций, существует ли способ, чтобы вызывающий файл функций перезаписывал параметры имени пользователя и пароля, если они имелиопределены в фоновом режиме?
Мне кажется, что фон перезаписывает входные параметры, а не наоборот, затрудняет повторное использование * .feature файлов.Я знаю, что меня немного расстраивает мой проект, поскольку я не могу повторно использовать уже написанные тесты без рефакторинга повторно используемого кода в другой файл.