Пометка сценария теста как пропущенного при сбое фоновой операции - PullRequest
2 голосов
/ 19 февраля 2020

Я хочу пометить сценарий как пропущенный в случае сбоя в фоновом режиме. У меня есть следующая структура в файле объектов:

Background:
  * call read('classpath:path/to/reusable.feature@ParticularScenario')
  ...

Scenario: That one I want to skip if background call statement fails
  Given ... 
  When ...
  Then ...

Я пытался использовать выражение * if () karate.abort() в фоновом режиме после оператора вызова, но это ничего не делает.

1 Ответ

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

Я не рекомендую этого и настоятельно рекомендую вам реструктурировать свои тесты.

Но вот возможное решение. Я повторяю, мне это совсем не нравится.

Background:
* def error = false
* eval
"""
try {
  var result = karate.call('reusable.feature');
  karate.set(result);
} catch (e) {
  karate.log('background failed:', e);
  karate.set('error', true);
}
"""

Scenario:
* if (error) karate.abort()

Но в остальном каратэ не предназначено для этого, извините.

...