web端,app端,小程序端测试差异详解
前置解释:
1.单纯从功能测试的层面上来讲的话,APP 测试、web 测试和H5测试在流程和功能测试上是没有区别的
2.Web项目或pc项目都是在电脑上进行测试的。常见的PC项目架构有BS架构和CS架构的,BS架构就是通过浏览器(browser)请求后台服务(server),后台返回到响应内容显示在浏览器上
3.app测试平台分为安卓和IOS端:安卓测试需要在安卓手机上安装开发提供的apk测试包;IOS测试需要将手机UUID提供给开发安装ipa测试包进行测试。
不同点:
1.系统架构不一样
a.web端测试只要更新了服务器端,客户端就会同步会更新
b.APP测试虽然对应了一个后台,但是不同的用户可能下载了不同版本的客户端,上线测试时,需要兼容每个版本的测试。app 修改了服务端,则客户端用户所有核心版本都需要进行回归测试一遍
2.发布流程不同
a.web端每次更新发布,需要将测试通过的包替换线上包,重启服务后立刻生效,访问的就是最新的环境
b.APP端需要向应用市场发布,安卓发布的市场有很多,应用宝、豌豆荚、应用商店等,每个应用都需要单独审核;IOS端应用比较单一就是appstore,从提交、审核到发布会有一定的时间间隔,开发的应用包不会立刻发布
3.专项测试不同
a.app端需要一些专项测试--比如安装卸载测试,耗电量&流量测试等
b.兼容性方面,因为测试平台的不同,着重点不一样
展开来说:
app测试类型有如下:
1.安装卸载测试:确认系统能正常安装应用及使用,不需要时卸载及数据清除
2.安全测试:防范隐私泄露、密码加密及传输安全、权限的合理开放、数据库安全、通信安全以及安装包反编译
3.交互与异常测试:同级/上下级页面的页面交互及数据加载、网络异常、数据异常,前后端展示及状态
4.性能测试、耗电量&流量测试:内存、CPU、流量消耗、耗电量、冷热启动速度、图片资源大小
5.界面易用性测试:符合用户习惯
6.UI测试:页面颜色搭配、控件摆放位置及兼容性
7.功能测试:需求文档已有及隐含的需求功能可正常使用
8.兼容性测试:网络、机型、系统、分辨率、硬件、同类软件、新旧数据
9.此外还有,Web和移动端的同步情况,用户在Web端的操作,在移动端是否可以正常的进行同步、显示;在移动端的操作,用户登录web账号,信息是否同步等
与web测试的异同:
1.界面测试方面,移动端测试需注意手势,横竖屏切换,多点触控,事件触发区域等
2.兼容性测试方面,web是基于浏览器的,所以更倾向于浏览器和电脑硬件,电脑系统的方向的兼容,不过一般还是以浏览器的为主。而浏览器的兼容则是一般是选择不同的浏览器内核进行测试(IE、chrome、Firefox)
3.app端不仅要看分辨率,屏幕尺寸,还要看设备系统-系统总的来说也就分为Android和iOS
4.性能方面,web项目需监测响应时间、CPU、Memory,app项目除了监测响应时间、CPU、Memory外,还需监测流量、电量等
5.安全测试方面,安装包是否可反编译代码、安装包是否签名、权限设置,例如访问通讯录、相册、照相机等等,登录后长时间无操作情况
专项测试方面,相对于 Wed 项目,APP有如下专项测试项
1. 干扰测试:中断,来电,短信,关机,重启等
2.弱网络测试(模拟2g、3g、4g,wifi网络状态以及丢包情况);网络切换测试(网络断开后重连、3g切换到4g/5g/wifi 等)
3.安装、更新、卸载。安装需考虑安装时的中断、弱网、安装后删除安装文件等情况;卸载需考虑 卸载后是否删除app相关的文件;更新,分强制更新、非强制更新、增量包更新、断点续传、弱网状态下更新
4.边界测试:可用存储空间少、没有SD卡/双SD卡、飞行模式、系统时间有误、第三方依赖(QQ、微信登录)等
5.不同app版本的业务功能测试
6.测试工具方面,自动化测试工具:APP 一般使用 Appium,airtest;Web端一般使用 Selenium,性能测试工具:APP 一般使用 JMeter; Web 一般使用loadrunner、JMeter
小程序测试:
小程序是一种不需要下载安装即可使用的应用
1.功能测试方面,要覆盖各功能模块,所有操作路径
2.易用性测试,包括,导航、功能入口,上下层级进入&返回、其他人机交互体验等
3.兼容性方面,主要指操作系统和屏幕分辨率方面,操作系统主要是指android系统和iOS系统
4.安全方面,小程序是内嵌到微信的,因此客户端的安全性毋庸置疑。只需关注小程序本身与后端接口传递数据的安全性即可。此外,还要注意权限方面的要求
web端,app端,小程序端测试差异详解的更多相关文章
- 【微信小程序】支付过程详解
一.介绍 今天跟大家分享微信小程序集成支付. 二.分析 1.小程序支付API 地址:https://mp.weixin.qq.com/debug/wxadoc/dev/api/api-pay.html ...
- 小程序脚本语言WXS详解
WXS脚本语言是 Weixin Script脚本的简称,是JS.JSON.WXML.WXSS之后又一大小程序内部文件类型.截至到目前小程序已经提供了5种文件类型. 解构小程序的几种方式,其中一种方式就 ...
- 微信小程序获取用户手机号详解
最近在做一款微信小程序,需要获取用户手机号,具体步骤如下: 流程图: 1.首先,客户端调用wx.login,回调数据了包含jscode,用于获取openid(用户唯一标识)和sessionkey(会话 ...
- 微信小程序--问题汇总及详解之form表单
附上微信小程序开发文档链接:https://mp.weixin.qq.com/debug/wxadoc/dev/framework/MINA.html form表单: 当点击 <form/> ...
- 微信小程序~生命周期方法详解
生命周期是指一个小程序从创建到销毁的一系列过程 在小程序中 ,通过App()来注册一个小程序 ,通过Page()来注册一个页面 先来看一张小程序项目结构 从上图可以看出,根目录下面有包含了app.js ...
- 微信小程序项目wx-store代码详解
这篇文章会很长,非常长,特别长,无敌长. 真的是挤牙膏般的项目进度,差不多是8月底有开始这个项目的想法,时至今日都1个多月了,抛去频繁的加班时间,王者时间,羽毛球时间...见缝插针的写这个项目,我竟然 ...
- 微信小程序 this和that详解及简单实例
微信小程序中,在wx.request({});方法调用成功或者失败之后,有时候会需要获取页面初始化数据data的情况,这个时候,如果使用,this.data来获取,会出现获取不到的情况,调试页面也会报 ...
- 微信小程序--问题汇总及详解之图片上传和地图
地图用的是百度的地图,链接:http://lbsyun.baidu.com/index.php?title=wxjsapi/guide/getlocation 获取日期时间可以用小程序里自带的js文件 ...
- 微信小程序支付之代码详解
微信小程序自带的一套规则,类似vue语法,但是好多功能都集成在api中,给了很多初学者轮子,所以首先要熟悉这些api,忘记可照官网继续开发 这里主要说下微信小程序的支付,原理类似上篇介绍的公众网页支付 ...
随机推荐
- 2. 堪比JMeter的.Net压测工具 - Crank 进阶篇 - 认识yml
目录 堪比JMeter的.Net压测工具 - Crank 入门篇 堪比JMeter的.Net压测工具 - Crank 进阶篇 - 认识yml 堪比JMeter的.Net压测工具 - Crank 进阶篇 ...
- 自助式bi工具为什么这么受欢迎?
目前比较流行的一种BI形式,当属于自助式BI分析,也就是自助分析平台,即在这个倡导凡事自助的社会中,BI也要以这种形式来呈现.自助式的BI分析相比较于传统的形式,是有很多优点的,我为大家整理了一版. ...
- Excel制作图表太单调了,用哪些可视化分析工具?
那么在如今"颜值为王"的现在,如何将数据展现得更好看,让别人更愿意看,这也是一个技术活.好比公司领导让你对某一个项目得研究成果做汇报,那么你不可能给他看单纯的数据一样,你需要让数 ...
- 用 UI 多线程处理 WPF 大量渲染的解决方案
众所周知, WPF 的 UI 渲染是单线程的,所以如果我们异步或者新建线程去进行数据处理的时候,处理完,想要更新 UI 的时候,需要调用一下 Dispatcher.Invoke,将处理完的数据推入到 ...
- 【计算机网络】TCP的三次握手与四次挥手
今天讲一下TCP的三次握手与四次挥手 1.首先说TCP 协议的特点:TCP是在不可靠的IP层之上实现的可靠的数据传输协议,它主要解决传输的可靠.有序.无丢失和不重复问题.TCP 是TCP/IP 体系中 ...
- Adobe photoshop CS6 + 破解补丁
软件位置: 链接:https://pan.baidu.com/s/1KeKRS0yIMfeEbOJQ-ilo0g 破解流程 首先断开网络连接 (如果不断网安装过程中会要求登陆)打开Photoshop ...
- tensorflow源码解析之common_runtime-device
目录 核心概念 device device_factory device_mgr device_set 1. 核心概念 在framework部分,我们介绍了DeviceAttributes和Devic ...
- 面试官:Redis如何实现持久化的、主从哨兵又是什么?
哈喽!大家好,我是小奇,一位不靠谱的程序员 小奇打算以轻松幽默的对话方式来分享一些技术,如果你觉得通过小奇的文章学到了东西,那就给小奇一个赞吧 文章持续更新 一.前言 作为一名Java程序员,Redi ...
- python程序的三种执行结构
一.分支结构:根据条件判断的真假去执行不同分支对应的子代码 1.1 if判定 完整语法如下: if 条件1: #条件可以是任意表达式,如果条件1为True,则依次执行代码. 代码1 代码2 ... e ...
- np.vectorize()和crosstab()和pivotTab()函数解释
numpy.vectorize(pyfunc, otypes=None, doc=None, excluded=None, cache=False, signature=None) Parameter ...