小程序与H5及混合应用测试

小程序、H5以及APP混合测试

一、为什么要学小程序测试

小程序与H5及混合应用测试_第1张图片

主流应用形态:

1、原生APP(nativeAPP)、应用市场,包括Android、IOS
2、小程序
3、H5 -- 相比上面2种形态真实使用中,这种会比较少
	1)为了节约时间,在效率和效果之间不断权衡,衍生小程序这种用于形态
	2)小程序的应用形态越多,测试也要覆盖这种应用的测试
	3)功能测试、性能测试、自动化测试

二、什么是小程序

小程序与H5及混合应用测试_第2张图片 小程序与H5及混合应用测试_第3张图片
概念:

小程序就是:依附在微信而不需要下载和安装的移动端应用程序
	1、小程序产品的版本类型分为:开发版、体验版、正式版
	2、正式版是需要进过微信审核的。开发版、体验版无需审核,只需给指定的微信号权限,然后扫小程序的二维码就能访问
	
注意:
	除了微信小程序,还有百度小程序、支付宝小程序、抖音小程序,都是每个平台自己开发的,都是有针对性平台的应用程序
	

三、小程序的优点

小程序与H5及混合应用测试_第4张图片 小程序与H5及混合应用测试_第5张图片
小程序优点:

1、无需下载,即用即走
	不需要考虑安装、卸载等测试点
	
2、功能丰富,清爽体验
	界面里的操作更多是点击或滑动,不是输入,操作性更强
	
3、流量大,易裂变 -- 天然流量
	依附于微信,用户体的天然优势

五、小程序和原生APP区别 – 面试20%

原生APP VS 小程序
需安装、卸载,操作麻烦;占用手机空间 无需安装,用完即走
需注册、登录 系统 使用微信的账号,无需注册、登录
开发周期长、消耗大、成本高10倍+ 周期短,开发快,成本是APP的 1 / 10
支持的平台(Android和IOS),需单独开发 一个版本兼容各种手机平台
宣发方面需自己推流,成本高、效果差 天然用于超过10亿的微信用户流量

六、小程序,我们应该如何测试 --面试重点

功能方面的测试点

非功能方面的测试点
	1、界面测试UI
	2、兼容性测试
	3、易用性测试
	4、性能测试
	5、安全测试
	

小程序与H5及混合应用测试_第6张图片

功能测试-业务流程/数据流

使用的方法和步骤跟 web 、App 测试一样
包括业务流程、数据流向、功能入口有效性检查测试

大体思路分为三步:
	http://testingpai.com/article/1622728109136
	
	1、第一步:依据需求梳理各大类功能以及细化功能点
	2、第二步:通过测试理论方法以及经验,梳理测试点(等价类、边界值、场景法、错误推测法等)
	3、第三步:挖掘隐性需求,覆盖非功能测试层面(界面、易用、兼容、安全、性能 等 )

1、表单测试

涉及数据提交,测表单页面
	输入框
		1)SQL注入--登录验证
		2)等价类划分、边界值分析法
	
    下拉框
    	1)下拉框数据完整性以及正确性、手动输入关键字模糊匹配、选择第一/中间/最后一条(补充到常见业务选项)、联动选择(例:省、市)
    	2)边界值分析法
    	
    单选
    	选与不选
    	
    多选:A、B、C、D
    	1)单一选择
    	2)多个组合选择
    		两两组合--全部覆盖
    		3个组合-2-3组
    		...
    	3)业务常见组合情况
    	
    	正交实验法
    
    上传文件
    	图片、视频、Excel、TXT 等
    		图片、视频 --> 大小、格式、视频时长、尺寸、数量、格式名(看需求)
    	Excel/TXT文件,导入数据
        	本身文件大小、格式、数量
        	文件包含数据验证:长度、数据类型、必填、唯一性约束以及业务相关约束--需求中明确、sheet1/sheet2,可否读取多个表单数据
        	
    提交按钮
    	点击/回车、快速点击、提交数据之后加密(界面/数据库)、提交操作的权限控制 -- 角色有关系
    		

2、搜索测试

 数据来源
 	制造数据--通过业务操作/调用接口/通过数据库
 
 搜索条件
 	输入项、下拉框、时间框等
 		1、任单个条件查询:模糊搜索、超长搜索、不存在于之匹配的条件、为空--空页面处理(从易用性角度)
 		2、任两个组合查询:确保任两个组合查询的正确性、全部组合
 		3、三个组合查询(N-1个组合查询,N=搜索条件数量):不需要测试三个组合的全部级组合
 		4、全条件组合查询:确保最大组合的正确性
 		5、默认搜索条件查询
 		6、根据需求或业务 规则需限制重点条件组合查询
 		
 		
 补充:时间搜索框
 	1、开始时间==结束时间、开始时间 < 结束时间(跨天、跨月、跨年) 不要忽略跨月、年
 	2、开始时间超过/小于当前时间 -- 不予选择、只输入开始时间2021-01-04/结束时间、开始/结束时间都不输入--默认显示所有数据/不显示数据
 	3、结束时间早于开始时间
 	4、手动输入、时间格式;默认时间
 
 搜索重点
 	落在搜索结果的完整性以及正确性验证
 		1)结合数据库对比 一致性
 		2)翻页控件
 			首页、上一页、下一页、尾页
 			总页数、当前页数
 			指定跳转页
 	

3、删除测试

选择一条数据,点击删除 ; 删除一条数据后,点击添加
连续删除多个产品,选择批量删除
选择全选,点击删除
删除一个有关联性的数据

注意:
1、所有删除数据操作要 注意相应查询页面以及管理界面的数据、数据库是否及时更新

2、考虑物理删除、逻辑删除--看系统需求,数据库中数据是真实删除还是只失效状态更新

4、cookies、session测试 --界面用户操作角度来讲,可以不测

1、打开web系统后,在浏览器默认存储cookies的目录下看此cookies目录是否存在
2、已知cookies的保存时间,测试时间范围之内和之外的cookies文件是否正确
3、将浏览器下的所有cookies文件全部删除。再次登录web系统,会怎么处理

5、数据库测试

进行功能测试的任何操作都可以归溯是对于数据库的增删改查。界面操作没做一次业务操作,界面能确认,不需要查库确认数据准确性

可关注
	1、数据库脚本执行--
		数据库表添加、修改是否能正常。搭建项目环境,初始化数据库、空库、干净的库
	
	2、页面提交表单、修改、查询、删除--
		数据库表信息是否正确
		

七、功能测试-小程序专项

微信“发现”
微信底部“发现”中
的“小程席”分类
置顶进入
小程序可显示在聊天
中余顶部
附近小程序
微信“小程序”下的
“附近小程席
系统桌面进入个
可以将小程序发送到
系统泉面后进入
使用列表
微信“小程序”下的
使用列表
小程序搜索
微信“小程序”下进
行搜索
顶部搜索进入
在微信顶部搜索可进
入小程席
推广进入
可通过朋友图广告、
小程席广告进入
“星标”小程序
用户手动“星标”的
小程序
扫小程序码
可以通过扫小程序码
《二维码)进入
公众号详情页
公众号详情页可见被
关联的小程序
公众号菜单
公众号底部菜单可直
接打开小程序
发文插入
公众号编辑文章里可
插入小程序
关联进入
公众号关联小程序后
下发的关联消息进入
聊天进入
小程序可转发到微信
即天
群聊分享进入
小程席可分享到微信
群聊中
群聊详情进入
微信群聊详情显示最
近被分享过的小程序
支付完成进入
可以在微信支付完
后选择进入小程序
跳转进入
从一个小程序跳特到
另一个小程席
QQ浏览器进入
可以通过9Q浏览器我
供的小程序入口进入
与微信的交互

	支付-微信支付(卡包、钱包  ---抵扣 )
    微信信息
    微信视频通话
    微信语音通话
小程序与H5及混合应用测试_第7张图片
授权类型
	登录授权--获取你的昵称、头像和手机号
	获取地理位置、麦克风等
	
权限测试
	允许授权,进入下一步操作;登录授权后,会以微信用户身份进行业务操作
	拒绝授权,无法下一步操作
	关闭退出,如若已经授权则无需再次授权
	授权后,取消授权--设置
注意:
	同一微信号在不同手机端可查看的数据和权限是同步一致的
	小程序和原生APP的数据也是同步

小程序与H5及混合应用测试_第8张图片

小程序和原生APP的数据同步

小程序与H5及混合应用测试_第9张图片

登录流程和原理 --了解

假设:

https://developers.weixin.gq.com/miniprogram/dev/framework/open-ability/login.html

小程序与H5及混合应用测试_第10张图片

小程序的分享
	分享可以成功(朋友、朋友圈、企业微信)
	分享后可以点击正常打开
	
添加到我的小程序(排序)
	添加成功、正常显示
	可以点击打开该小程序
	

小程序与H5及混合应用测试_第11张图片

中断测试--参考APP测试方法
(核心功能存在实时数据交互)

	电话中断
	闹钟中断
	低电量中断
	耳机插拔中断
	网络中断
	断电中断
	...
网络测试 -- 参考APP测试方法(核心功能)
	测试2G/3G/4G/WiFi网络切换
	测试有网/无网/有网切换下应用的运行
	弱网测试:延时、丢包
	
	弱网场景 -- 专门工具
		fiddler/Charles/Qnet停用、WiFi远一点/地下室 ...
		
	支付/退款 -- 弱网环境
	

非功能测试–UI测试

界面测试的原则–同app

原型图、UI切图 --需求文档
站在用户角度考虑,美观和友好、易用性
参考成熟产品,符合大部分用户的使用习惯

小程序更加轻量级,更加便利
导航的操作区,一般不超过5个 --同app
UI更多的是点击操作,输入比较少

所以,有如下原则
	1、页面层级为 10 层
		开发解决/产品设计避免超过10级
	2、开发源程序大小不超过8M源文件(分包加载,当个分包不超过2M)
	因为,过于复杂逻辑不可控的异常问题
	

兼容性测试

手机型号 -- 微信能兼容基本没问题
系统版本 -- 微信能兼容基本没问题
屏幕大小 -- 小程序定义一个新的像素单位-rpx(多考虑几种大小屏幕)
微信版本 -- 小程序要特别注意(最新多个版本)
微信上其他小程序的兼容 -- 共用声卡 话筒这种 -- 次要

小程序兼容性测试:
	公司已有的不同测试机型微信版本: 上面去对应基本测试

小程序与H5及混合应用测试_第12张图片

性能测试

服务器性能测试 == 接口性能 --Jmeter性能测试

小程序本身性能测试 == 资源占用(CPU、内存、流量、电量)--Perfdog/Gt/Solopi、页面白屏时间、首屏时间、页面渲染时间等  
	1)行业标准 2)历史版本 3)如果没有 竞品对比
	
小程序/App可同步测试
白屏-- 打开小程序,到页面开始显示第一个内容
首屏 -- 打开小程序,到最终页面全部呈现完毕
页面渲染 -- 到页面开始显示第一个内容,到最终页面全部呈现完毕

没用过工具,最基本点点点测试,竞品对比 -->
凭肉眼感受每个页面点击呈现Neri的一个响应时间/运行一段时间手机发烫

八、非功能测试–安全测试–不会接触

数据加密传输
权限 -- 用户鉴权

业务漏洞
渗透测试
小程序加固测试 --SQL注入,XSS跨站脚本,加密
小程序安全检测

传统:
	BurpSuite,APPScan,AWVS,Dirsearch,Nessus --安全扫描

微信: 
	wetest -- 检测工具
	

小程序与H5及混合应用测试_第13张图片

常见面试题

小程序测试盒APP测试的区别

	在测试流程上,功能业务以及界面测试上没什么区别,所运用到的方法和技术都是相通的,测试类型 都需要进过功能、界面、兼容、甚至性能和安全方面的测试
	
区别总结:
	1、下载渠道以及安装卸载不同
		小程序:
			主要通过二维码、用户分享推荐、搜索小程序等获取;并且不需下载,清除时直接删除小程序
		APP:
			需应用市场下载;并且安装后才能适应,清除时需卸载
	2、开发周期以及发布审核不同
		小程序:
			一个版本可兼容不同的手机平台,小程序的开发周期约2周;发布审核时周期较短
		APP:
			支持的android和ios平台需分别开发,周期较长大约3个月;且在各大应用商店发布的审核周期也较长
	3、登录权限不同
		小程序:
			一般授权登录,无需注册;例如微信未授权/授权 登录程序,同一微信号不同手机登录查看数据是否同步显示
		APP:
			需注册登录系统,权限方面需考虑是否可以访问手机通讯录、相册、相机等权限
	4、兼容性测试:
		小程序:
			基于不同的公众平台,比如 微信,主要兼容不同的微信版本
		APP:
			考虑不同机型的兼容,不仅看分辨率、屏幕尺寸、还看操作系统
	 

你可能感兴趣的:(APP测试,软件测试,小程序,微信小程序,微信)