Hello
Help please i have to test our android app which contain a webview to log then when trying to switch to webview i can’t :
my code is
import time
from appium import webdriver
desired_caps = {}
desired_caps[‘platformName’] = ‘Android’
desired_caps[‘platformVersion’] = ‘12’
desired_caps[‘deviceName’] = ‘OPPO Find’
desired_caps[‘udid’] = ‘6da3aaef’
desired_caps[‘appPackage’] = ‘’
desired_caps[‘appActivity’] =’’
desired_caps[‘autoWebview’] = ‘false’
driver =webdriver.Remote(“http://127.0.0.1:4723/wd/hub”,desired_caps)
to wait
driver.implicitly_wait(30)
driver.find_element_by_xpath(’/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.RelativeLayout/android.widget.LinearLayout/android.widget.Button’).click()
driver.find_element_by_xpath(’/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.RelativeLayout/android.widget.LinearLayout/android.widget.Button’).click()
driver.find_element_by_xpath(’/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.RelativeLayout/android.widget.LinearLayout/android.widget.Button’).click()
driver.find_element_by_xpath(’/hierarchy/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.ScrollView/android.widget.LinearLayout/android.widget.LinearLayout/android.widget.LinearLayout[2]/android.widget.Button[1]’).click()
driver.find_element_by_xpath(’/hierarchy/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.ScrollView/android.widget.LinearLayout/android.widget.LinearLayout/android.widget.LinearLayout[2]/android.widget.Button[1]’).click()
driver.find_element_by_xpath(’/hierarchy/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.ScrollView/android.widget.LinearLayout/android.widget.LinearLayout/android.widget.LinearLayout[2]/android.widget.Button[1]’).click()
to automate webview
assuming we have an initialized driver
object for an app
switch to webview
webview = driver.contexts.last
driver.switch_to.context(webview)
do some webby stuff
driver.find_element_by_class_name(“login_submit”).click login_usesso
#driver.find_element_by_id(“login_usesso”).click
driver.find_element_by_id(“login_forgot_password”).click
switch back to native view
#driver.switch_to.context(driver.contexts.first)
do more native testing if we want
#driver.quit()