• UI自动化测试-Webview


    1. 启动Appium

    2. 启动MuMu模拟器

      adb连接mumu:adb connect 127.0.0.1:7555


    • adb连接模拟器
    • 夜神模拟器:adb connect 127.0.0.1:62001
    • 逍遥安卓模拟器:adb connect 127.0.0.1:21503
    • 天天模拟器:adb connect 127.0.0.1:6555 
    • 海马玩模拟器:adb connect 127.0.0.1:53001
    • 网易MUMU模拟器:adb connect 127.0.0.1:7555 MacOS:adb connect 127.0.0.1:5555
    • 雷电模拟器:adb connect 127.0.0.1:5555 
    • genymotion模拟器:adb connect 127.0.0.1:5555 
    • 谷歌原生模拟器:adb connect <设备的IP地址>:5555

      adb连接夜神模拟器发现连不上,进入到夜神模拟器安装目录,进入到bin,用nox_adb 连接:
      

    3. Webview官方文档

    什么是Webview:App端一个内嵌的浏览器,嵌入html代码或其他,如下示例:

    WebView myWebView = (WebView) findViewById(R.id.webview);
    myWebView.loadUrl("http://www.example.com");

    4. app中确认当前页面是不是webview的方式

      appium元素定位,查看到标签 android.webkit.WebView

        WebView中的元素有accessibility_id的属性,文本为content-desc

        

    5. 模拟器上的测试

    • webview控件会被映射为原生控件,类型为View,其中的文本内容会变成content-desc或者text
    • 6.0会把webview中的控件变成一个带有content-desc属性的View控件
    • 9.0会把webview中的控件变成一个带有text属性的View控件

    6. 真机

    • 如果app未开启webview的调试属性,是无法分析内部的控件的
    • 个别手机可能会默认打开此属性,所以默认也能访问到h5内部的控件
    • 如果还是访问不到,检查webview的调试属性是否开启,此时需要让研发配合打开webview的调试属性

    7. 技术原理

    localhost:~ seveniruby$ adb shell cat /proc/net/unix | grep webview
    0000000000000000: 00000002 00000000 00010000 0001 01 2545836 @webview_devtools_remote_32073
    0000000000000000: 00000002 00000000 00010000 0001 01 9455057 @webview_devtools_remote_25324
    
    adb -s VED7N18403003958 forward tcp:7777 localabstract:webview_devtools_remote_32073
    adb forward --list
    curl http://127.0.0.1:7777/json/version

     Webview原理

    inspector  :  chrome://inspect/#devices

    chrome 62版本调试Webview:

     

  • 相关阅读:
    《javascript高级程序设计》第六章总结
    电子邮件写信页面开发代码
    JSON和XML的比较
    2014前端工程师基础课程作业
    cookie 和session 的区别详解
    substring()、slice()和substr()方法辨析
    Number()、parseInt()和parseFloat()辨析
    《javascript高级程序设计》第十三章知识点
    angular debounce 搜索去抖动/防抖
    js四舍五入保留两位小数的方法
  • 原文地址:https://www.cnblogs.com/SomnusWho/p/13925463.html
Copyright © 2020-2023  润新知