대기 요소
집합 요소들은 효율을 개선함으로써, 스크립트의 견고성을 향상보다 유연한 요소를 기다리는 특정 시간 동안 대기 할
기다려야 강제
에서 시간을 가져 수면 수면 ( 5)
암시 적 대기
암시는 모든 요소를 기다리는 대기 시간 설정
driver.implicitly_wait (30)
디스플레이 대기
디스플레이는 설정하는 요소에 대한 대기 시간을 기다리고 있습니다
발 selenium.webdriver.support.ui의 수입 WebDriverWait
WebDriverWait (드라이버, 30) .until ( 람다 X : x.find_element_by_id ( ' com.jgw.csca : ID / et_pwd ' ))
스크린 샷
방법 1
save_screenshot () 메소드는 현재 스크립트 파일 위치에 직접 현재의 스크린 샷을 저장합니다
driver.save_screenshot ( ' login.png ' )
方法二
get_screenshot_as_file (자기, 파일 이름)
스크린 샷은 지정된 파일 경로에 저장
driver.get_screenshot_as_file ( ' ../images/login.png ' )
현실
수입 pytest 에서 appium의 수입 webdriver의 클래스 Testcsca () : 데프 설정 (자동) : 캡 = {} 캡 [ " platformName " ] = " 안드로이드 " #의 모자 [ "장치 이름"] = "127.0.0.1:62001" 캡 [ " 장치 이름 " = " CLB0219314000452 " 캡 [ " appPackage " = " com.jgw.csca " 캡 [ "appActivity "= " Com.jgw.csca.view.activity.LoginActivity " 캡 [ " platfromVersion " = " 9.0.0 " 캡 [ " autoGrantPermissions은 " ] = TRUE # 자동 라이선스 권한 세트 뚜껑 [ ' unicodeKeyboard하면 ' ] = TRUE #의 입력 중국은 중국 입력 할 수 없습니다 다른 추가하거나 할 때 모자 [ ' resetKeyboard는 ' ] 진정한 = #을 중국어 입력 할 수 없습니다 다른 입력 중국어를 추가하거나 self.driver = webdriver.Remote ( " // 로컬 호스트 : 4723 / WD / 허브 HTTP를 " ,캡) self.driver.implicitly_wait ( 20 ) DEF의 test_login (자기) : self.driver.find_element_by_android_uiautomator ( ' 새로운 새로운 UiSelector () 텍스트 () "사용자 이름을 입력하십시오." ' ) .send_keys ( ' 666 ' ) self.driver.save_screenshot을 ( ' login.png ' ) #은 현재의 위치에 스크립트를 저장 self.driver.find_element_by_android_uiautomator ( ' 새로운 새로운 UiSelector () RESOURCEID ( "com.jgw.csca을 : 위에서 언급 한 ID / et_pwd을"). ' ) .send_keys ( ' balabala ' ) self.driver을 .get_screenshot_as_file ( 'E : /login.png ' ) # 지정된 위치에 저장 self.driver.find_element_by_android_uiautomator ( ' 새로운 새로운 UiSelector () 클래스 이름 ( "android.widget.Button"). ' ) .Click ()