Матч html ответ в каратэ - PullRequest
       5

Матч html ответ в каратэ

1 голос
/ 03 февраля 2020

У меня проблема с сопоставлением моих ошибок ответа с html.

Я пытался вот так

  • match $ .errors == '# present'
  • match $ .errors == response

Ошибки:

<code><!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Error</title>
</head>
<body>
<pre>Error: Unexpected object!

Я делаю это так и scnario будет остановлен!

When method post
* if (responseStatus == 500 ) karate.abort()
  Then status 200
* match $.errors == '#notpresent'

Как мне получить ответ в виде html текста?

1 Ответ

0 голосов
/ 03 февраля 2020

Извините, каратэ работает только с хорошо сформированным XML. Вы можете попробовать заменить содержимое в HTML, чтобы очистить его. Или вы можете просто сделать строку contains соответствует et c. Или вы можете написать какой-нибудь код JS или Java для пользовательских проверок.

Это сработает (после удаления неправильного тега <meta>.

<code>* def response =
"""
<!DOCTYPE html>
<html lang="en">
<head>
<title>Error</title>
</head>
<body>
<pre>Error: Unexpected object!
"" "* match // pre == 'Ошибка: неожиданный объект!'
...