• 8
  • 8
分享
  • 微信小程序测试——软件测试圈
  • 北极 2022-05-09 13:23:53 字数 1931 阅读 1135 收藏 8

普通的移动app是需要安装的,但是绝大部分的app不会经常使用,但仍然会占用手机存储空间,所以开始出现免安装app,微信小程序实际是一种免安装的app。类似的比如华为、小米等手机厂商推出的快应用、支付宝小程序。微信小程序实际是运行在微信之上。

图片 1.png

小程序的类网页经过微信翻译之后以http数据的形式和服务器进行交互。小程序无法脱离微信来进行使用。

图片 2.png

微信小程序的页面可以包含:

1、小程序页面(WXML+WXSS)

2、M页页面(H5移动网页)

3、toast信息(过一段时间会自动消失的信息,比如登录成功的提示信息,1、2秒后自动消失)

4、弹窗

微信小程序功能测试

微信小程序分为三个版本:

1、开发版

2、体验版(需要在小程序管理平台里添加体验用户才可以使用)

3、正式版

微信小程序界面的操作的测试,跟移动app、web网站没什么区别。

开发者工具测试(开发版)

通过AppData可以比界面检查的更细。类似于fiddler中inspectors。

图片 3.png

借助于真机调试,可以修改AppData中的数据,对微信小程序做一些大值测试或者异常测试。

图片 4.png

扫码后

图片 5.png

图片 6.png

通过修改真机调试界面中AppData中的数据可以实现和fiddler中autoresponder类似的功能,检查各种数据的情况下界面的显示。

因为微信小程序是运行在微信之上的,所以各种功能交互更多是微信考虑处理,测试微信小程序时可以不用太考虑。

Fiddler工具测试(体验版/正式版)

对于体验版或者正式版,可以完全类似于移动app的测试方式,利用fiddler来做测试。

使用步骤:

1、电脑上的fiddler设置抓取和解析https的包

2、手机上安装fiddler的证书

3、手机上开启代理

运行小程序后,即可以在fiddler上看到抓取的https的包。

微信小程序性能测试

移动app的性能测试关注:

1、业务响应时间(启动时间/页面切换时间),通过logcat中查询displayed关键字

2、Cpu,emmagee

3、Gpu,过度绘制、高速相机

4、内存,emmagee

5、流量,emmagee

6、电量,emmagee

微信小程序因为一般运行的时间短、频度低,所以关注的性能指标比app要少一些。

1、业务响应时间(小程序包下载时间/启动时间/页面切换时间)

2、内存

3、Cpu

4、帧率

5、数据缓存大小

微信小程序针对开发版提供性能监控器工具。

图片 7.png

打开后,重启小程序

图片 8.png

通过展示出来的性能数据,我们能够直观的看到实时的性能,比如切换页面时的页面切换耗时。如果想要看性能的整体的长时间变化趋势,则需要借助trace工具。

1、在调试小程序的真机中操作导出trace数据(前提是开启性能监控面板)

图片 9.png

2、开发者工具中选中trace工具

图片 10.png

3、选择保存trace记录的手机(前提是adb能连接上手机)

4、选择前面导出的trace数据

图片 11.png

Cpu变化趋势

图片 12.png

Fps趋势(gpu绘制)

图片 13.png

部分fps明显偏小,属于性能的bug。

内存趋势

图片 14.png

其它

图片 15.png

微信小程序兼容性测试

移动app的兼容性测试包含:

1、android版本的兼容,4.0、5.0、7.0

2、机型的兼容,hdpi、xhdpi、xxxhdpi

微信小程序的兼容性测试包含:

1、操作系统兼容性(兼容android系统和ios系统),android系统和ios系统对js代码的处理存在差异,所以需要考虑这两个系统的兼容性。实际工作中同一个小程序,需要在android微信上和ios微信上分别进行测试。

2、机型兼容性(屏幕的适配),微信小程序中考虑了屏幕的自动适配,专门设计了一个rpi单位,但还是不能完全保证适配没问题,所以针对小程序仍然需要考虑机型兼容。

3、微信版本的兼容性(基础库版本适配)

图片 16.png

图片 17.png

针对开发版,通过修改调试基础库版本即可做兼容性测试。

微信小程序网络测试

移动app 的网络测试考虑:

1、强网测试,不同网络下使用、网络切换下的使用

2、弱网测试

3、无网测试

微信小程序和移动app的网络测试类似。

图片 18.png

微信小程序特殊测试点

1、小程序包大小不能超过3M,开发版对大小没有限制,但是体验版和正式版都有限制。

2、页面层级跳转不能超过10次,比如分类-》居家-》布艺软装-》居家-》被枕-》居家-》。达到10次就无法跳转了,如果非要有这种跳转方式,需要考虑不让微信觉得是10次跳转。

3、缓存,微信小程序为了提升用户体验,会缓存用户的页面及数据,方便下次调用时直接使用。可能产生的问题:

1)微信小程序缓存的数据是否和服务器端一致。实际测试时可以先访问页面,然后修改服务器上数据,再回看小程序中页面,看数据是否一致。

2)切换相似的页面,看是否缓存的数据会产生混乱,比如居家和餐厨两个分类,切换分类的时候,会不会因为缓存导致具体信息不发生变化。

 

作者:QAtest

文章来源:知乎

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 我发现,在OO和UML几乎一统天下的今天,仍有很多系统分析员对OO和UML一知半解,甚至包括很多已经使用了很久UML的系统分析员。于是打算写一个系列文章,将多年来的工作经验做一个总结。对初学者起个启蒙作用,也希望抛砖引喻,与各路大虾共同探讨,共同提高。这个系列文章将以我对OO和系统分析的理解为主,从UML基础开始,阐述面向对象的需求分析方法,过程,并以RUP为例,阐述如何将OO过程与软件过程有机结合在一起,做一个真正OO应用。好了,今天是第一篇。想得很远,不知能否坚持下去,呵呵:lol:用例是什么?其原始英文是usecase,直译过来就成了用例。这也是一个比较贴切的叫法了,从字面的直接理解就是...
            13 14 1158
            分享
          •   前言  自己之前为了学习自动化测试加了几个自动化测试的群,在群里和不少大牛交流,也和不少新手交流。因为自己也是一个自动化测试的新手,就想着总结下自动化测试学习工作中遇到的问题,也希望如果有想学习自动化的童鞋,可以学习前看下这篇感想,可能对于你的学习有所帮助。下面我所说的东西都是群里好多自动化测试新手遇到的,有技术方面的,也有工作中遇到关于自动化的问题(很现实。。。)  学习自动化难不难  学习自动化难不难?自动化测试如果仅仅是使用录制回放来进行自动化测试是一点都不难的,这种使用工具进行录制回放的自动化测试(例如Selenium使用SeleniumIDE)不需要你懂代码,不需要你像性能测试那...
            0 0 677
            分享
          •  作为一个Web前端开发者,开发过程中除了写业务代码,剩余大多数时间都花在了API的联调上。为了解决这个问题,大多数开发者会选择Mock接口的方案,但是前端领域的几种常用 Mock 方案都需要一定的学习成本。那么有没更优雅便捷的方案可以提高开发者开发效率实现下班自由呢。一款对前端开发者优化的 API 管理工具假设我们现在要开发一个获取用户信息的功能,常规流程是这样的:1、接口设计。2、后端开发接口(此时前端开发页面)。3、后端接口开发测试完成,交付前端进行开发调试测试。 现在我们使用 Apifox 来参与开发会怎么样呢?1.接口设计在接口设计的环节,我们使用 Apifox 进行,通...
            12 11 1485
            分享
          •   关于自动化的学习,一直是大家关注的话题,那么Python学习到什么程度就可以进行自动化测试了呢?下面结合我自身的学习历程跟大家分享一下。  初识自动化  刚开始学自动化的时候,是跟着视频课程学习的,当时学习完用Selenium进行脚本录制之后,就觉得自动化测试好简单,录制脚本后回放脚本就行了,所以学完录制脚本之后,就没再往下继续学习,使用Selenium脚本录制的功能进行脚本的录制回放。  结果可想而知,录制脚本时,一个鼠标悬浮事件没有录制上,导致元素找不到,最终整个脚本以失败而告终。  因为随着前台开发技术的不断更新换代,并不是所有的事件、操作都能使用Selenium自动录制上,还需要我...
            0 0 657
            分享
          • 提纲/目标通过对微信小程序特性和测试点进行总结,储备测试知识,提高测试效率。小程序特性介绍小程序测试工作过程监控与管理常见问题&技巧现状分析接触小程序的项目相对较少缺少小程序测试实战经验对小程序的特性不了解小程序测试测试沉淀较少目标达到成就介绍小程序特性,了解测试中的注意事项以某小程序为例,了解小程序测试工作通过知识沉淀和经验总结,提高测试效率课程内容*小程序已越来越常见小程序发布审核发布前需申请外网域名,并在微信web开发者工具里找到项目,设置好服务器的域名。开发完上传代码后,在微信公众平台—》登录小程序管理后台—》点击开发管理—》点击提交版本审核即可。审核通过后会有相应提示,接着把...
            14 14 1848
            分享
      • 51testing软件测试圈微信