Есть ли способ уменьшить время простоя в тестовых примерах каркасной конструкции робота, не изменяя его? - PullRequest
0 голосов
/ 09 апреля 2020

Мне нужно немного информации по приведенному ниже сценарию.

Мы получили набор из примерно 300 тестовых примеров от другой команды. Во время выполнения 50% времени уходит на неудачные тестовые примеры, поскольку они продолжают пытаться получить доступ к API во время Tear down.

есть ли какой-нибудь способ выйти из T C или Tear down немедленно, когда первый KW дает сбой с помощью слушателя? Любое другое решение также приветствуется.

1 Ответ

1 голос
/ 15 апреля 2020

Да, есть два способа преодолеть уничтожение времени TEARDOWN в Robot Framework:

  1. Чтобы использовать опцию Timecase Testcase и использовать подходящий тайм-аут, в котором мы ожидаем T C пройти со всеми задержками, ожидаемыми от сервера. Если для Teardown требуется все больше и больше времени, то время ожидания Auto testcase до тех пор, пока не будет опущено время уничтожения.

  2. Логическое управление ключевыми словами в Teardown. Если мы называем 4 Ключевые слова для примера. Затем на шаге Testcase сгенерируйте 4 логических значения, которые определят, сколько ключевых слов нужно запустить для очистки в Teardown.

Например:

[Setup]     UserProfile Login     ${Admin_Credentials_Track2}
   set test variable  ${BoleanNCA}   ${False}
   set test variable  ${BoleanNCC}   ${False}
   set test variable  ${BooleanNetID}   ${False}

Первоначально установить в значение False и установить в значение TRUE, когда необходимо. Шаг передается в T C.

   ${Status}    run keyword and return status   Create NCA with new NetworkID and validate     ${adminUserOauthToken}
   ${BoleanNCA}   set variable if  ${Status}   ${True}   ${BoleanNCA}

Теперь посмотрите, как это будет контролироваться.

   [Teardown]  run keywords   run keyword if  ${BoleanNCA}   NCA Delete        ${adminUserOauthToken}        ${netWrkId}
   ...     AND     run keyword if  ${BoleanNCC}   NCC Delete if Record Exists     ${adminUserOauthToken}        ${netWrkId}
   ...     AND     run keyword if  ${BoleanNCA}   create OCN        ${adminUserOauthToken}        ${entity}       ${OCNLst}
   ...     AND     run keyword if  ${BooleanNetID}  Delete NetWorkId if Exists        ${adminUserOauthToken}        ${netWrkId}
   ...     AND     run keyword if  ${BooleanLogin}  close session

Удачи. Я надеюсь, что это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...