Java教程

appium测试app【native、webview】

本文主要是介绍appium测试app【native、webview】,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1.安装appium

2.示例

from appium import webdriver
from appium.webdriver.common.touch_action import TouchAction

desired_caps = {}
desired_caps['platformName'] = 'Android'
desired_caps['platformVersion'] = '10'
desired_caps['deviceName'] = 'WKXVB21205001099'
desired_caps['noReset'] = True
desired_caps['sessionOverride'] = True
desired_caps['appPackage'] = 'com.tencent.mm'
desired_caps['appActivity'] = 'com.tencent.mm.ui.LauncherUI'
desired_caps['newCommandTimeout'] = "2000"
desired_caps['chromeOptions'] = {'androidProcess': 'com.tencent.mm:appbrand0'}
desired_caps['chromedriverExecutable'] = 'E:\\xxxx\\chromedriver.exe'

driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
print("休眠5s")
time.sleep(5) 

#打开,下拉,点击xx
driver.swipe(362, 360, 362, 1000)
driver.find_element("xpath", "//*[contains(@text, 'xxx')]").click()
time.sleep(5)
contexts = driver.contexts
print(contexts)
print(driver.current_context)
driver.switch_to.context("WEBVIEW_com.tencent.mm:appbrand0")
print(driver.current_context)
Handle = driver.current_window_handle
print(" Current handle : " + Handle)
Handles = driver.window_handles
for h in Handles:
    if h == Handle:
        print(" Ignore handle : " + h)
    else:
        driver.switch_to.window(h)

        TouchAction(driver).long_press(x=339, y=2165, duration=duration*1000).release().perform() #快失效了 
        time.sleep(1)
        trans_result = driver.find_element('xpath', '//*[@class="messageBubble--text messageBubble--to-text messageBubble--lang-ug"]').text
driver.quit()

3.定位

uiautomator2定位原生native元素
uc-devtools定位webview元素

1.测试小程序

微信对话框里打开http://debugxweb.qq.com/?inspector=true,首页显示,表示可以调试了

从搜索-小程序里进去,可以看到小程序页面

这篇关于appium测试app【native、webview】的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!