Как отобразить сообщение в консоли во время теста, когда элемент не найден в каркасе робота? - PullRequest
0 голосов
/ 18 декабря 2018

Я хочу знать, как отобразить сообщение в консоли, когда элемент не найден с каркасом робота:

Я попробовал это:

S2L.Wait Until Page Contains Element  ${checkbox}  10s checkbox  not found

Это не работает для этого элемента ине знаю почемуЭто работает для любого другого элемента, но не для моего флажка.

Так что сейчас у меня есть это:

Wait Until Keyword Succeeds  5 times  2 sec  S2L.Click Element ${checkbox}

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

Любая помощь приветствуется.Спасибо

Ответы [ 2 ]

0 голосов
/ 20 декабря 2018

Как насчет использования аргумента ошибки, доступного с ключевым словом Wait Пока страница содержит элемент?

Wait Until Page Contains Element    id=elementId    timeout=60s    error=Display whatever you want, e.g. Lorem Ipsum...
0 голосов
/ 19 декабря 2018

Хотя я думаю, что ваша проблема - это нечто иное, на ваш вопрос можно ответить.Run Keyword And Return Status перехватит ошибку, продолжит и предоставит статус.Run Keyword If позволяет использовать ключевое слово Fail, и оно также генерирует сообщение на консоли.

*** Settings ***
Library    SeleniumLibrary

Suite Teardown    Close All Browsers 

*** Test Cases ***
Wait And Click succesfully
    Open Browser    http://google.com    HeadlessChrome
    Wait and Click Element    name:q    This should work

Wait And Click unsuccesfully
    Open Browser    http://google.com    HeadlessChrome
    Wait and Click Element    name:nobtn      This should not work

*** Keywords ***
Wait and Click Element
    [Arguments]    ${locator}    ${message}=None

    ${status}    Run Keyword And Return Status
    ...                Wait Until Keyword Succeeds  
    ...                    5 times  2 sec  
    ...                    Click Element   ${locator}

    Run Keyword If    
    ...    "${status}" == "False"
    ...    Fail     ${message}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...