下你所需,载你所想!
IT技术源码资料下载网站

APP和Web测试系统结构方面的区别

:其他软件 2020-09-07 14:24:16

APP和Web测试系统结构方面的区别

一、系统结构方面
web项目,b/s架构,基于浏览器的;web测试只要更新了服务器端,客户端就会同步会更新
app项目,c/s结构的,必须要有客户端;app 修改了服务端,则客户端用户所有核心版本都需要进行回归测试一遍
二、性能方面
web项目 需监测 响应时间、CPU、Memory
app项目 除了监测 响应时间、CPU、Memory外,还需监测流量、电量等
三、兼容方面
web项目:
1. 浏览器(火狐、IE等)
2. 操作系统(Windows7、Windows10、OSX、Linux等)
app项目:
1. 设备系统: iOS(ipad、iphone)、Android(三星、华为、联想等) 、Windows(Win7、Win8)、OSX(Mac)
2. 手机设备可根据 手机型号、分辨率不同
四、相对于 Wed 项目,APP有专项测试
1. 干扰测试:中断,来电,短信,关机,重启等
2. 弱网络测试(模拟2g、3g、4g,wifi网络状态以及丢包情况);网络切换测试(网络断开后重连、3g切换到4g/wifi 等)
3. 安装、更新、卸载
安装:需考虑安装时的中断、弱网、安装后删除安装文件等情况
卸载:需考虑 卸载后是否删除app相关的文件
更新:分强制更新、非强制更新、增量包更新、断点续传、弱网状态下更新
五、测试工具方面
自动化工具:APP 一般使用 Appium; Web 一般使用 Selenium
性能测试工具:APP 一般使用 JMeter; Web 一般使用 LR、JMeter
6. 界面操作:关于手机端测试,需注意手势,横竖屏切换,多点触控,前后台切换
7. 安全测试:安装包是否可反编译代码、安装包是否签名、权限设置,例如访问通讯录等
8. 边界测试:可用存储空间少、没有SD卡/双SD卡、飞行模式、系统时间有误、第三方依赖(QQ、微信登录)等
9. 权限测试:设置某个App是否可以获取该权限,例如是否可访问通讯录、相册、照相机等
10.web测试用一台电脑就可以,而app测试需要测试多台的手机
六,稳定性测试
10,web项目的稳定性测试更多的是:长时间测试后端服务的接口和前端页面的显示,方法就是长时间跑自动化脚本。
11,app项目的稳定性测试更多的是:长时间测试app页面的显示,方法就是用monkey,monkeyrunner长时间在屏幕上面跑,看是否卡死,闪退,报错或其他异常。
七,业务功能,和用户量方面
12,不同的项目web和app的业务功能有所不同,比如web页面更多的偏向系统管理和运营方面的功能,而移动app更多的偏向浏览,支付下单
13,不同的项目web和app的用户量有所不同,现在很多用户量都偏向了移动app端
随着手机应用的不断状态,同一款产品的移动端应用市场占相较PC端也越来越大,那么app与PC端针对这些产品的测试有什么相同与不同之处呢?笔者总结如下:
首先谈一谈相同之处
一,针对同一个系统功能的测试,三端所测的业务流程是一样的
二,一般情况下手机端和PC端都对应一套后台服务,比如说笔者公司所开发的互联网金融平台,整个平台做了分布式服务架构,后台服务包括用户服务、交易服务、产品服务等。PC和手机端测试以上三个流程时,调用的都是同一个后台服务。(注:也有一些功能,比如PC与手机端展示不一致,或者有什么特殊处理,这样情况下后台会写两套不同的接口来处理对应的业务需求)
不同之处
PC、APP、H5三端测试的相同与不同
一,测试平台(容器)不同:
pc项目都是在电脑上进行测试的:常见的PC项目架构有BS架构和CS架构的,BS架构就是通过浏览器(browser)请求后台服务(server),后台返回到响应内容显示在浏览器上,常见BS架构的项目有天猫、京东等浏览器输入地址就可以访问。CS架构的项目比如QQ、微信等,需要在电脑下载客户端(client),客户端与后台服务器(server)进行数据传输交互。基于以上信息,PC端测试都是在电脑上,要么是在浏览器上测试要么安装对应客户端。平台都是电脑。
app测试平台分为安卓和IOS端:安卓测试需要在安卓手机上安装开发提供的apk测试包;
IOS测试需要将手机UUID提供给开发安装ipa测试包进行测试;
H5测试就是测试HTML5页面:在PC或者手机浏览器都可以直接访问H5页面
二,兼容性测试不同:
基于以上测试平台的不同,三端的兼容性也不一样。
PC的兼容性主要包括各浏览器和不同操作系统,目前笔者所经历的公司主要测试了不同主流版本浏览器的兼容性,还未涉及操作系统层面
APP的兼容性包含安卓和IOS不同机型,不同版本,不同屏幕都要适配
H5的兼容性主要测试手机端的不同浏览器的兼容性
三,系统架构不一样
PC和H5端项目尤其是WEB项目对应一个后台服务,所有客户访问的都是同一个后台。上线测试时,直接访问线上地址测试即可
APP测试虽然对应了一个后台,但是不同的用户可能下载了不同版本的客户端,上线测试时,需要兼容每个版本的测试。
四,发布流程不同:
PC端每次更新发布,需要将测试通过的包替换线上包,重启服务后立刻生效,访问的就是最新的环境
H5由于是一些html5网站发布上线后无需重启即可访问
APP端需要向应用市场发布,安卓发布的市场有很多,应用宝、豌豆荚、应用商店等每个应用都需要单独审核;IOS端应用比较单一就是appstore。从提交、审核到发布会有几天的时间间隔,开发的应用包不会立刻发布,此时测试人员就可能会使用生成环境体验包(需要开发人员提前将你的账号开白名单)
五,专项测试
除以上不同外,app端还有一些专项测试:
性能方面:响应时间、流量测试和耗电量测试
安装测试(PC端web项目不用测试,CS架构的也需要考虑)
交叉测试:就是在操作某个软件的时候,来电话、来短信,电量不足提示等外部事件
操作类型:手势测试、横屏竖屏
网络测试:包含弱网和网络切换测试,重点要考虑回退和刷新是否会造成二次提交。弱网络的模拟,据说可以用360wifi实现设置。
升级测试:升级测试的提醒机制,升级取消是否会影响原有功能的使用,升级后用户数据是否被清除了。