点开上方头像即可关注,每周九点整,资讯将准时送达。此外,每月我们还会不定期地赠送技术类书籍。如需获取测试资源,只需在小窗口回复“资源”或“测试工具包”即可。
本文5178字,阅读约需13分钟
Mini程序,无需下载安装即可直接使用,是微信APP中嵌入的一种新型软件。它实现了用户随时能够轻松访问应用的目标,只需简单一扫或搜索即可启动。同时,它也彰显了“使用完毕即离开”的使用理念,让用户无需担忧安装过多应用的问题。这款应用将遍布各个角落,随时可供使用,且无需进行安装或卸载操作。
小程序简介
小程序版本类型
小程序分为3种版本类型:开发版,体验版,正式版。
开发版和体验版无需经过审核,但需为微信号设置相应权限,只有通过扫描小程序的二维码,才能实现访问。而正式版则必须经过微信的审核程序,这意味着在产品开发初期,即便你进行各种尝试和调整,微信也能洞悉一切。这与在网上寻找框架或工具不同,即便在本地进行操作,外界也无法得知。在使用微信小程序开发者工具之前,必须先进行扫码操作。开发版与体验版的不同之处主要体现在,开发版的小程序二维码的有效期限相对较短。
在项目实施过程中,我们通常需要准备三套不同的环境配置。开发阶段,我们使用测试环境进行访问;体验阶段,则通过预发布环境进行;而正式版本则需在生产环境中进行访问。
前后端分离的技术架构
小程序普遍运用了前端与后端分离的技术模式。虽然前端承担了一定的逻辑处理任务,主要目的是提升用户体验并实现缓存优化,但核心流程和状态转换仍需依赖后端接口来实现。对于曾参与过Web或App项目前后端分离测试的人员来说,在小程序产品的测试工作中,上手过程会相对简单。
API、HTTP/协议、Json数据传输等这些基本概念是测试人员必须掌握的技能。同时,还需提升对问题的分析和定位技巧。在发现问题后,要迅速分辨出是前端、后端还是第三方组件引起的。鉴于小程序存在多种版本,还需核实是否为非最新开发版,以及是否因多个环境未妥善处理而造成数据混乱。要迅速锁定问题,必须依赖详尽的日志记录。这不仅仅包括后端接口的日志,当前端页面捕捉到特定的客户端错误时,同样应当进行报告。这一环节往往是开发者容易忽视的。
开发架构与团队状况对测试方案有着决定性影响。在小程序领域,UI测试主要由产品与设计团队负责,而测试人员则需专注于前端与后端的交互问题,包括后端接口的自动化测试、兼容性测试等。他们需关注前端是否在应当实施缓存的地方未能执行,导致频繁调用接口,进而可能影响用户的网络使用体验。
微信通知服务逻辑
微信平台内可实现服务提醒并直接链接至小程序。不少微信用户可能并未关注过小程序,甚至对“服务通知”这一概念也不甚了解。然而,实际上,众多社交电商类小程序已广泛采用服务通知功能,这一功能已然演变为一项新兴的营销渠道。
微信服务通知的发送,需通过小程序传递一个名为 form id 的参数至微信,并依据服务通知模板向用户推送消息。但请注意,此 form id 并非小程序自主生成,而是用户在小程序内进行操作时,微信系统自动生成并反馈给小程序的。换言之,若用户在操作小程序页面时,小程序的前端未能搜集到微信所提供的form id并反馈给小程序的后端,那么小程序的后端便无法向用户发送微信的服务通知。微信用户在小程序中的操作活跃度各异,因此收集到的form id数量也会有所区别。那些将服务通知渠道视为营销切入点的小程序,在构思上可谓是煞费苦心。
小程序兼容性问题
小程序目前尚无法实现直接在朋友圈中的分享功能,用户只能选择分享给微信中的好友。因此,众多小程序纷纷采取了一种变通策略,即生成携带小程序码的图片,使得用户在退出小程序后,能够将这张图片发布至朋友圈中。
将小程序码融入图片元素之中,便需考虑其摆放、大小等细节,同时确保与图片的整体美感相协调。此外,生成的小程序码必须保持清晰可辨,这就要求前端开发人员针对不同屏幕尺寸进行相应的适配工作。
小程序测试点
在进行测试时,我们需从多个角度出发,包括但不限于功能验证、权限确认、用户界面测试、系统兼容性检验、接口功能测试、网络稳定性测试以及性能评估等方面进行综合考虑。
功能测试
小程序的功能测试与APP的功能测试在测试思路和用例设计方法上保持一致。依据预先设定的功能模块分类,我们进行逐层细化,力求涵盖每个功能的全面测试点。这包括对业务流程、数据流动、功能入口的有效性检验以及交互性的测试。
微信小程序在优化用户使用感受的过程中,会对用户的页面信息及数据进行缓存处理,以便在用户再次访问时能够迅速访问到所需内容。然而,这种做法可能带来一些潜在问题:,
权限测试
未授权微信登录小程序:
未经授权的情况下,在使用某些业务功能时,系统会自动弹出提示信息,告知用户需先完成授权步骤,方可进行相关功能的操作。
在将数据上传至后台系统时,系统会要求补充相应的身份资料后方可完成提交操作。
已授权微信登录小程序:
赋予微信对小程序的访问权限,即允许小程序的管理者获取用户的微信账号信息。
自动采用微信账号进行业务操作,包括但不限于咨询、交易支付、信息查询等行为。
所涉及的数据查阅权限与操作权限应当保持同步并保持一致,无论同一微信号在何种手机端进行登录和授权,其查看数据的权限都应保持不变。
UI测试
小程序页面的检测与APP界面的检验相似,都需重视页面中展示的各项元素,包括菜单、对话窗口、各类窗口以及其他可视控件的排列、设计风格,以及文字内容的准确性。
页面设计是否赏心悦目,交互体验是否顺畅。操作流程是否过于复杂、是否便于用户操作。
请注意,微信小程序页面间的层级跳转通常有次数限制,具体来说,最多不能超过10次。一旦达到这个次数上限,页面便无法继续进行跳转。在设计需求时,我们应尽量控制页面跳转次数在10次以下。对于那些需要超过10次跳转的应用场景,则需要针对性地进行开发。
兼容性测试
手机系统方面,在iOS平台上,小程序的代码执行是在某个特定环境中进行的;而在系统上,这一任务则由X5内核负责。因此,在条件允许的情况下,我们不仅要支持iOS系统,还应涵盖包括华为、小米等在内的主流iOS品牌;同时,目标还包括覆盖从最新试用版到当前流行的主要版本。
微信版本的兼容性问题主要表现在小程序API库的版本差异上。由于微信小程序的SDK API版本持续更新,这可能会引发向下兼容的问题。比如,在最新版本的小程序SDK上开发的应用程序,可能无法在较低版本的SDK上正常运行,与预期效果不符。在测试微信版本兼容性之前,必须先明确小程序所依赖的库版本,并确认这些版本在哪些具体的微信版本中得到支持。
微信小程序设定了一种全新的尺寸度量单位rpx。此单位能够根据不同的屏幕尺寸进行适配。然而,需要特别留意的是,尺寸单位为1rpx的情况,因为这种尺寸在应用中经常出现故障。因此,我们只需关注这一特定尺寸即可。
接口测试
当前主要采用的是微服务架构,小程序在调用时对接的是后端接口,因此这里的接口测试与日常的接口测试并无二致,然而,我们仍需明确微信小程序所提供的接口具体属于哪一种类型。
1)有接口文档的,参照接口文档进行接口测试。
2)没有接口文档的,使用或抓包(同App抓包)。
网络测试
在进行网络测试时,可以参照APP的测试方法,这涵盖了网络模式的切换,如从3G、4G、5G到wifi的转换;同时,还需进行断网测试和弱网环境下的测试,例如在弱网环境中,超时是否会有合理的提醒,数据丢包是否具备重发功能。这些测试主要目的是为了评估小程序在网络环境多样性下的表现。
性能测试
在使用小程序调用接口时,需关注服务器端的性能表现,比如高并发量对服务器是否会造成影响。此外,小程序自身的性能指标也需考量,包括页面加载时的白屏时间、首屏呈现速度、对CPU、流量、电量、内存等资源的占用情况,以及页面渲染的耗时等。
小程序常见问题
小程序的架构是怎么样的?
小程序的架构:包含View视图层、逻辑层。
小程序测试和APP测试的异同点有哪些?
小程序的测试与APP的测试在功能测试方面遵循相同的逻辑,这主要涉及对项目需求及设计的理解,以及对功能模块、业务流程的审查,还包括对同一功能在不同入口的有效性进行检验、页面交互性的检查以及输入输出的逻辑测试。它们之间的差异主要体现在以下几个层面:
小程序的测试点有哪些?
在面试环节,面试官可能会询问关于小程序的测试方法,或者提供一个小程序的功能模块要求你制定测试方案,针对此类情况,我们可以从以下几个角度着手进行设计。
最后,如果有什么补充的点,欢迎在文末评论区留下你的想法