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,忘记可照官网继续开发 这里主要说下微信小程序的支付,原理类似上篇介绍的公众网页支付 ...
随机推荐
- Vue 源码解读(4)—— 异步更新
前言 上一篇的 Vue 源码解读(3)-- 响应式原理 说到通过 Object.defineProperty 为对象的每个 key 设置 getter.setter,从而拦截对数据的访问和设置. 当对 ...
- JDBC(解析properties)
练习1:解析配置文件jdbc.properties jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://192.168.168.168:33 ...
- 厌倦了excel绘制地图的繁琐操作,来看看这款可视化地图神器!
在现代生活中,地图无论对于社会主义建设.国防.运输以至旅行都是不可缺少的.要学会正确地使用地图,必须学会如何绘制地图. 最近我发现了一款好用的可视化地图神器,比excel做地图可视化好一万倍!其实呢, ...
- 【C# Task】开篇
概览 在学task类之前必须学习线程的知识. 以下是task命名空间的类的结构图 1.2种任务类型: 有返回值task<TResult> .无返回值task. 2.2座任务工厂 TaskF ...
- 1、cpu架构和工作原理
cpu架构和工作原理 计算机有5大基本组成部分,运算器,控制器,存储器,输入和输出.运算器和控制器封装到一起,加上寄存器组和cpu内部总线构成中央处理器(CPU).cpu的根本任务,就是执行指令,对计 ...
- Oracle数据库对象(表空间/同义词/序列/视图/索引)
数据库对象 Oracle数据库对象: 数据库对象是数据库的组成部分,常常用 CREATE 命令进行创建,可以使用 ALTER 命令修改,用 DROP 执行删除操作. 种类: (1)表空间:所有的数据对 ...
- 简明Python教程 - 学习笔记
1,第一步 cmd下运行python文件 :python 文件名.(在文件目录下) 退出python解释器:ctrl + z 或 exit() 回车 进入帮助模式:help(),退出:q 或 回车 2 ...
- linux shell脚本批量修改密码,无需交互输入
转至:https://blog.csdn.net/weixin_34409357/article/details/89833777?utm_medium=distribute.pc_relevant. ...
- C# Md5Hash
/// <summary> /// MD5 32位加密(大写) /// </summary> /// <param name="str">< ...
- LeetCode-023-合并K个升序链表
合并K个升序链表 题目描述:给你一个链表数组,每个链表都已经按升序排列. 请你将所有链表合并到一个升序链表中,返回合并后的链表. 示例说明请见LeetCode官网. 来源:力扣(LeetCode) 链 ...