Сбой ключевого слова без остановки выполнения теста в роботизированной структуре - PullRequest
0 голосов
/ 26 июня 2018

Я выявляю ошибки из своих ключевых слов с помощью класса robot.api.logger

def test_keyword():
    logger.error("Report error")

Это создает строку ошибки в файле log.html под ключевым словом, но не приводит к сбою ключевого слова.

Я отказываюсь от ключевого слова, вызывая исключения.

def test_keyword():
    raise Exception("Not implemented")

Это не подходит как для ключевого слова, так и для контрольного примера, в котором это ключевое слово было вызвано. Но это также останавливает дальнейшее выполнение контрольного примера.

Есть ли способ, которым я могу потерпеть неудачу в ключевом слове, не останавливая выполнение тестового примера?

1 Ответ

0 голосов
/ 27 июня 2018

Из документации :

Ключевые слова библиотеки сообщают о сбоях с использованием исключений, и можно использовать специальные исключения, чтобы сообщить базовой платформе, что выполнение может продолжаться независимо от сбоя.

Когда тест закончится и произошел один или несколько продолжительных сбоев, тест будет помечен как неудачный. Если существует более одного сбоя, все они будут перечислены в последнем сообщении об ошибке:

Several failures occurred:

1) First error message.

2) Second error message ...

Способ сообщить об этом из тестовых библиотек - добавить специальный атрибут ROBOT_CONTINUE_ON_FAILURE со значением True к исключению, используемому для сообщения об ошибке. Это демонстрируется примерами ниже.

class MyContinuableError(RuntimeError):
    ROBOT_CONTINUE_ON_FAILURE = True
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...