移动端H5测试方案分析

按平台不同,web调试可以分为桌面web调试和移动端web调试两种,其中用到的调试方法也有所不同。

桌面web调试有比较成熟的方法和工具可供使用,例如利用chrome自带的调试工具或者firebug插件可以比较方便的调试样式类问题,js执行流程问题以及网络相关问题等。

移动端方面由于设备以及浏览器自身限制,无法提供类似桌面浏览器中功能强大的控制台,使得移动端页面调试没有桌面web调试那么便捷。针对不同的调试内容,目前也有较多的方法和工具可以使用。

移动端web调试可以分为两种场景,模拟调试和真机调试。这两种调试场景用到的工具和方法是不同的,一般来说移动端web页面开发过程中会使用模拟调试来保证页面展示,页面业务流程的正确性,由于模拟调试不能代表页面真实的运行环境,待集成测试阶段会选择真机调试来保真版本稳定性。

移动端web模拟调试比较简单,利用桌面浏览器就可以很好的进行。例如chrome的device toolbar模式,firefox的响应设计模式,都支持自定义屏幕尺寸,自定义userAgent。也可以使用微软的Vorlon.JS工具。桌面web调试用的一些方法技巧都可以用在移动端web的模拟调试过程。

移动端web真机调试的工具和方法主要分为三类:1.本机浏览器模拟控制台调试;2.基于B/S的远程调试;3.基于webview的调试。

本机浏览器模拟控制台调试

这种方法的原理是在移动端浏览器上模拟出控制台效果,但是和桌面浏览器的控制台相比,功能比较弱。例如腾讯的日志调试工具MLogger;功能稍复杂支持dom/css查看修改,支持查看网络请求,支持源码查看,支持日志输出的Eruda。由于移动端屏幕较小,使用这种方式调试web页面,不是很方便。

基于B/S的远程调试

这种方法的原理是需要起一个服务器来连接调试目标,然后服务器提供一个页面,在该页面上可以查看在调试目标上的一些操作结果。例如支持dom/css查看修改,支持查看网络请求的weinre;支持控制台输出,支持js求值的jsconsole

基于webview的调试

这种方法的原理是桌面浏览器通过usb数据线连接到手机上的webview,然后把webview中的页面资源同步加载到桌面浏览器中,在webview中的操作结果和桌面浏览器中的操作结果可以互相影响。这种方法还支持断点调试,功能相较上面两种要强大一点。例如google的chrome://inspect方法,不过也有限制条件,只支持andriod,需要翻墙,系统版本需要4.3以上;firefox的WebIDE,需要安装firefox的app版本浏览器,不适合调试其他app的内嵌页面;以及safari原生支持的调试工具,不支持android,不过调试ios比较方便。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 142,823评论 18 610
  • 早上起来,就拿了一本书,自己坐在那 ,一边看一边讲,说要讲给宝宝听, 晚饭前,缠着爸爸给她讲故事,爸爸说,你自己看...
    甸妈阅读 28评论 0 0
  • 无论陈词滥调多少次,比起一个需要我们记住并且输入什么的界面来说,如果替换成我们能够看见并可控制的界面的话将会是巨大...
    wzf_taker阅读 385评论 0 0