Файл функции теста каратэ не обрабатывает объединение строк для вызова функции JSJavascript

Форум по Javascript
Ответить
Anonymous
 Файл функции теста каратэ не обрабатывает объединение строк для вызова функции JS

Сообщение Anonymous »

У меня есть файл функции теста каратэ, как показано ниже, и я выполняю объединение строк в первом столбце примеров сценариев. Это отлично работает во всех моих других файлах функций.
Но когда я пытаюсь передать URL-адрес объединенной строки в функцию JS, происходит сбой, она всегда передает литералы.
Значения Page и AssetType прекрасно передаются в Javascript, а вот объединенный URL-адрес — нет.
Я уже пробовал различные подходы, например передача concatUrl напрямую, с использованием явного определения объединенной строки, с использованием функции URL-адреса Karate.get, никакой разницы.
Кажется, конкатенация не оценивается до вызова функции JS?
Как передать значение concatUrl в функцию check_hashes.js?

Код: Выделить всё

Feature: Asset Hash Validation

Background:
* def envConfig = karate.read('classpath:envs.json')[karate.env]
* def baseUrl = envConfig['base_domain']
* def basePort = envConfig['base_port']

Scenario Outline: JS and CSS assets have hashes in their URLs
Given url 
Given path
* def fullUrl = karate.get('url')
* def params = { url: , path: , assetType:  }
* def noHashCount = call read('check_hashes.js') params
When method get
Then status 200
And match noHashCount == 0

Examples:
| concatUrl        | Page       | AssetType |
| baseUrl + 'fr' + basePort  | '/fr/home' | 'css'       |
| baseUrl + 'fr' + basePort  | '/fr/home' | 'js'        |
| baseUrl + 'com' + basePort | '/en/home' | 'all'       |
Примечание: base_domain будет иметь вид «http://www.example.», а base_port — что-то вроде «:8080». Я хочу иметь возможность обрабатывать несколько доменов верхнего уровня в своих тестах, а также иметь разные порты для разных сред и т. д.


Подробнее здесь: https://stackoverflow.com/questions/797 ... unction-ca
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»