Есть ли способ настроить Robot Framework, чтобы выполнение не останавливалось из-за сбоя - PullRequest
0 голосов
/ 08 мая 2018

Мне известно о ключевом слове «Выполнить» и «Продолжить при ошибке» / «Выполнить ключевое слово», а также игнорировать «Ошибка» / «Выполнить ключевое слово» и вернуть статус «Встроенные ключевые слова», но у меня очень широкий набор тестовых случаев, которые не следует останавливать по какой-либо причине для определенного Сценарий, и мне было интересно, есть ли возможность не останавливать выполнение при сбое по умолчанию, без необходимости управлять им через эти ключевые слова и добавлять не связанный с бизнесом синтаксис в ключевые слова моего верхнего уровня.

Ответы [ 2 ]

0 голосов
/ 08 мая 2018

Вообще говоря, робот просто не предназначен для работы так, как вы хотите. Он предназначен для выхода из теста в случае сбоя ключевого слова, если только вы явно не запустите это ключевое слово с одним из специальных ключевых слов (например: запустите ключевое слово и продолжите при ошибке ).

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

Например, рассмотрим этот тест:

*** Test cases ***
Example
    log   step one
    log   step two
    fail  something went wrong
    fail  something else went wrong
    log   last step

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

*** Test cases ***
Example
    [Template]  Run keyword and continue on failure
    log   step one
    log   step two
    fail  something went wrong
    fail  something else went wrong
    log   last step

Вот как выглядит отчет с вышеуказанным тестом:

image of robot log

0 голосов
/ 08 мая 2018

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

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

Единственный подход - заключить ключевые слова в ключевое слово «Выполнить и продолжить».

...