Вы можете выбрать только элемент abbr
, сохранить его, а затем заменить весь контент на сохраненный элемент плюс измененный заголовок:
$('label[for="user_name"]').each(function(){
var a = $(this).children('abbr');
$(this).html(a).append('Title');
});
Похоже на опечатку в вашем макете. Я попробовал это, и это работает для меня. Также обратите внимание, что bodyPath()
был введен только в каратэ 0.8.0
макет:
Scenario: pathMatches('/tokenisationservice/TokenisationWS_1_3') && bodyPath('/Envelope/Body/getToken/GetTokenRequest/enterpriseID') == '1'
* print request
* def response = { success: true }
тест:
* url karate.properties['mock.url']
* path '/tokenisationservice/TokenisationWS_1_3'
* request
"""
<soapenv:Envelope>
<soapenv:Header/>
<soapenv:Body>
<tok:getToken>
<GetTokenRequest>
<enterpriseID>1</enterpriseID>
<merchantGroupID>1</merchantGroupID>
<pan>1234567890123456</pan>
</GetTokenRequest>
</tok:getToken>
</soapenv:Body>
</soapenv:Envelope>
"""
* method post
* status 200
* print response