当前位置: 首页 > news >正文

网站建设论坛首页山东省住房和城乡建设厅网站主页

网站建设论坛首页,山东省住房和城乡建设厅网站主页,网站开发总体流程图,直接ip访问网站目前app中存在越来越多的H5页面了,对于一些做app自动化的测试来说,要求也越来越高,自动化不仅仅要支持原生页面,也要可以H5中进行操作自动化, webview是什么 webview是属于android中的一个控件,也相当于一…

 

目前app中存在越来越多的H5页面了,对于一些做app自动化的测试来说,要求也越来越高,自动化不仅仅要支持原生页面,也要可以H5中进行操作自动化,

webview是什么

webview是属于android中的一个控件,也相当于一个容器,需要把H5的一些前端内容,通过这个容器去调用,显示和渲染网页

目前很多app中都实现app原生页面(native)和webview页面(H5),我们如何查看页面上哪些存在webview和native呢?

查看webview和native

1、打开uiautomatorviewer定位工具,进行查看页面上是否存在webview。下图可以看到android.webkit.webview。

2、断网情况下,进行访问app,如果可以正常显示页面,说明为原生页面,如果不能访问,则为webview(H5)页面

3、通过fiddler进行抓包查看,内容存在html则为webview(H5)页面

那么我们在appium中如何查看呢?

4、通过contexts方法

def contexts(self):"""返回当前会话中的上下文。"""return self.execute(Command.CONTEXTS)['value']

执行脚本:

# coding:utf-8
from appium import webdriver
import time
desired_caps = {'platformName': 'Android',  # 测试版本'deviceName': 'emulator-5554',   # 设备名'platformVersion': '5.1.1', # 系统版本'appPackage': 'com.yipiao', #apk的包名'appActivity': '.activity.LaunchActivity', # apk的launcherActivity"noReset": True,  # 不清空数据}
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)
time.sleep(6)
driver.find_element_by_xpath('//*[@text="下次再说"]').click()
time.sleep(3)
driver.find_element_by_xpath('//*[@text="我的"]').click()
# 点击产品意见
time.sleep(3)
driver.find_element_by_xpath('//*[@text="产品意见"]').click()
# 获取全部上下文
cons = driver.contexts
print(cons)# ['NATIVE_APP', 'WEBVIEW_com.yipiao']

上面返回的结果中可以看到页面中存在NATIVE_APP,和webview_com.yipiao。其中native_app表示app原生页面,然后webview_com.XXXX表示webview(H5)的页面

切换webview

前面已经了解到如何查看页面中是否存在webview,当我们想要操作webview上的元素时,必须要进入到webview中,那么如何进入webview呢?

可以通过 _switch_to.context() 方法进行切换

上面已经查询到页面上的内容,然后我们通过_switch_to.context()方法进行跳转

# 跳转webview
driver._switch_to.context("WEBVIEW_com.yipiao")
print(driver.context)

源码:

# coding:utf-8
from appium import webdriver
import time
desired_caps = {'platformName': 'Android',  # 测试版本'deviceName': 'emulator-5554',   # 设备名'platformVersion': '5.1.1', # 系统版本'appPackage': 'com.yipiao', #apk的包名'appActivity': '.activity.LaunchActivity', # apk的launcherActivity"noReset": True,  # 不清空数据}
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)
time.sleep(6)
driver.find_element_by_xpath('//*[@text="下次再说"]').click()
# 点击我的
time.sleep(3)
driver.find_element_by_xpath('//*[@text="我的"]').click()
# 点击产品意见
time.sleep(3)
driver.find_element_by_xpath('//*[@text="产品意见"]').click()
# 获取全部上下文
cons = driver.contexts
print(cons)
# 跳转到webview中
driver._switch_to.context("WEBVIEW_com.yipiao")
print(driver.context)#  ['NATIVE_APP', 'WEBVIEW_com.yipiao']#  WEBVIEW_com.yipiao

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

在这里插入图片描述

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

http://www.yayakq.cn/news/725817/

相关文章:

  • 网站建设规划公司地址seo搜索引擎优化排名报价
  • 上海专业网站建设公司搭建一个20人的办公网络
  • 我想自己做网站吗wordpress coolcode
  • 网页设计企业网站设计的功能新余建设网站
  • 专业app网站建设wordpress 政务
  • 域名注册和网站设计服务python网站开发书籍推荐
  • 网站个人备案需要什么资料数字广东网络有限公司
  • 宿迁企业网站建设网站文章更新注意什么
  • 网站开发的阶段网站开发招标方案范本
  • 成都网站建设 平易云网站开发的形式有哪些
  • 海口网站开发制作wordpress 悬浮音乐
  • 加盟网站建设wordpress lnmp 伪静态
  • 南京网站优化公司互联网巨头是哪几家
  • 镇江做网站哪家公司好今天的新闻报道
  • 网站如何换空间省机关事务局网站建设管理情况
  • 广西网站建设软件推广做网站过程
  • 贵州专业网站建设公司哪家好企业宣传网站多大主机
  • 游戏网站创建asp网站建设实录pdf
  • 百度推广送的公司网站有什么用柳州专业网站建设加盟
  • 网上购物网站建设论文wordpress抓取
  • 中工互联网站建设wordpress 加载流程
  • 中国营销型网站武夷山网站定制
  • seo网站排名优化公司哪家网站排名优化建设
  • dede cms 网站模板德阳建设银行招聘网站
  • 住房和城乡建设部网站村镇建设网站导航的展开与收缩怎么做的
  • 企业网站能提供哪些服务网站及微站建设合同
  • 视听节目 网站建设wordpress怎么做相关相似文章链接
  • 用什么网站可以做电子书个人网站设计案例
  • 网站推送怎么做的app推广平台网站
  • 网站建设功能是什么软件外包公司百科