appium---如何判断原生页面和H5页面

本文详细介绍在App自动化测试中如何识别和操作H5页面,包括使用uiautomatorviewer定位webview,通过断网测试区分原生与H5页面,利用fiddler抓包检查html内容,以及在appium中使用contexts方法和_switch_to.context()方法进行页面上下文切换。

目前app中存在越来越多的H5页面了,对于一些做app自动化的测试来说,要求也越来越高,自动化不仅仅要支持原生页面,也要可以H5中进行操作自动化,这一篇介绍如何查看页面上是否存在H5页面,这里首先要了解一个知识点webview是什么

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',
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值