저는 Robot Framework와 Appium을 파이썬으로 통합하려고합니다. 그러나 Robot Framework에서 만든 Appium 드라이버를 사용자 지정 Python 스크립트에 전달하는 방법을 알아낼 수 없습니다.Robot Framework - Python 스크립트에 Appium 드라이버 전달하기
내 환경 :
- 맥 OS - 매버릭스
- Appium 1.2 (PIP를 통해 설치)
- 최신 로봇 프레임 워크 (홈 양조를 통해 설치) 가
- 이 최신 로봇 프레임 워크에 대한 Appium 라이브러리 (설치 pip 통해)
나는 파이썬에서 작동하는 Appium 스크립트가 있지만, 나는 Robot Framework를 사용하기 시작했다. 실제 테스트를 처리합니다. 파이썬 스크립트를 사용하기위한
부분 코드 :
wd = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)
wd.find_element_by_name("Start").click()
wd.find_element_by_xpath("//UIAApplication[1]/UIAWindow[1]/UIATableView[1]/UIATableCell[1]").click()
wd.execute_script("var vKeyboard = target.frontMostApp().keyboard(); vKeyboard.typeString(\"Test Text\");")
wd.execute_script("var vKeyboard = target.frontMostApp().keyboard(); vKeyboard.buttons()['Return'].tap();")
이 때문에 응용 프로그램이 작동하는 방법으로, 볼 수 있듯이, 나는 스크립트의 일부로 execute_script 사용하는 네드.
로봇 프레임 워크 용 Appium 라이브러리는 execute_script를 노출하지 않으므로 파이썬 라이브러리에 직접 작성해야합니다.
는 여기에 내가 execute_script을 필요로하는 곳에 지점까지 작업을 수행하는 로봇 테스트 스크립트의 내 시작의 :
TestStart
Open Application ${REMOTE_URL} ${PLATFORM_NAME} ${PLATFORM_VERSION} ${DEVICE_NAME} ${APP}
Click Element name=Start
Click Element xpath=//UIAApplication[1]/UIAWindow[1]/UIATableView[1]/UIATableCell[1]
내 질문은 내가 오픈 응용 프로그램 및 패스에서 만든 드라이버 인스턴스를 얻는 방법 파이썬 스크립트에?
def KeyboardType(driver):
driver.execute_script("var vKeyboard = target.frontMostApp().keyboard(); vKeyboard.typeString(\"hi there\");")
그러나, 나는이 파이썬 스크립트에 로봇 프레임 워크 스크립트에서 드라이버를 통과 할 수없는 것 :
나는 다음이있는 파이썬 스크립트를 가지고있다.
나는 통해 변수에 열기 응용 프로그램을 설정하려고 :
${Driver} Open Application ${REMOTE_URL} ${PLATFORM_NAME} ${PLATFORM_VERSION} ${DEVICE_NAME} ${APP}
KeyboardType ${Driver}
그러나 나는 오류가 발생 :
AttributeError : 'STR'개체가 어떤 속성 'execute_script'도
I이 없습니다 현재 컨텍스트 가져 오기 결과를 파이썬 스크립트에 전달하려고 시도했지만 다음과 같이 나타납니다.
AttributeError : 'unicode'객체에 'execute_scrip'속성이 없습니다. t '
Robot Framework에서 만든 드라이버를 python 스크립트에 어떻게 전달할 수 있습니까?
잠깐이 환경 변수를 사용하고 있습니까? WD를 키보드 스크립트에 전달하려고합니까? – sheeptest