2016-10-18 7 views
1

Python에서 로봇 프레임 워크를 사용하여 내부적으로 selenium2library 키워드를 사용하는 키워드를 작성하고 있습니다.builtIn 라이브러리 키워드 'run_keyword_and_continue_on_failure'에서 selenium2library 키워드 사용시 ROBOT 프레임 워크 문제

내 파이썬 키워드 정의 모듈 안에있는 아래 코드 조각에있는 문제가 있습니다.

내장 상태 =(). run_keyword_and_continue_on_failure (sel.click_button ('wlbasic_11n_value_01는')) 여기서

, lbasic_11n_value_01가 클릭 될있는 요소의 ID이다.

클릭 버튼이 실패하더라도 키워드가 실행되기를 원합니다. 따라서 run_keyword_and_continue_on_failure 키워드를 사용하고 있습니다.

흥미롭게도 버튼 클릭이 발생하지만 키워드 이름이 문자열이어야한다는 오류 메시지가 표시됩니다. 키워드가 검출되지 않습니다>

def check(): 
    sel = BuiltIn().get_library_instance('Selenium2Library') 
    title = sel.get_title() 
    BuiltIn().log_to_console('Making the Router Mode Change Now') 
    status =  BuiltIn().run_keyword_and_continue_on_failure(sel.click_button('wlbasic_11n_value_01')) 

-> 'sel.click_button ('wlbasic_11n_value_01 ')'

파이썬 키워드 코드 -

때 sel.click_button ('wlbasic_11n_value_01')를 만드는 것입니다 all과 click은 결코 작동하지 않습니다.

여기서 내가 무엇을 놓치고 있는가, 로봇 프레임 워크에 익숙하지 않습니다.

모든 디버그 도움이 깊은 감사하겠습니다.

답변

1

흥미롭게도 버튼 클릭이 발생하지만 키워드 이름이 문자열이어야한다는 오류 메시지가 나타납니다.

이 메시지는 문제가 무엇인지 정확하게 알려주며, 왜 당신에게 무엇을 말하고 있습니까? run_keyword_and_continue_on_failure에는 키워드의 문자열 이름이 필요하며 함수 (sel.click_button(...))를 전달하고 있습니다.

run_keyword_and_continue_on_failure를 사용할 필요가 없습니다 - 그냥 같은 일을 수행 할 코드, 주위를 제외하고/시도를 넣어 : 당신이 run_keyword_and_continue_on_error을 계속 사용하려는 경우

try: 
    sel.click_button('wlbasic_11n_value_01') 
except Exception as e: 
    <handle or ignore the error however you wish here...> 

, 그것이 말하는 일을하고 키워드를 문자열로 제공하십시오 :

status =  BuiltIn().run_keyword_and_continue_on_failure(
    'Click Button', 'wlbasic_11n_value_01') 
) 
+0

감사합니다. Bryan을 지원해주십시오. try/catch 블록 및 처리 된 예외를 사용합니다. –