web项目,b/s架构,基于浏览器的;web测试只要更新了服务器端,客户端就会同步会更新。
app项目,c/s结构的,必须要有客户端;app 修改了服务端,则客户端用户所有核心版本都需要进行回归测试一遍。
1、系统架构
WEB端:B/S结构,WEB端的前端一般不做端的区分。WEB端的上线不管是预发布还是N环上线,server上线后,前端同步更新,一般是不存在多个版本的问题;
移动端:C/S结构,移动端的前端分为安卓端&iOS端。移动端的server上线后,客户端还是存在多个版本,需要考虑旧版本兼容&回测问题
2、抓包工具
WEB端:WEB端有个比较方便的方法可以查看前端请求的接口:Chrome浏览器里打开检查,可以从network里直接查看前端请求的接口。当然也可使用抓包工具抓取请求。
移动端:移动端常用的的抓包工具有Charles、fiddler等,可以通过连接代理等方式抓取请求
3、UI自动化
WEB端:WEB端常见的就是 unnitest + selenium 了,需要安装所需要浏览器的driver
移动端:移动端常见 appium,是在selenium的基础上发展而来,当然还有一些封装的很不错的工具,例如网易出品的基于图像识别和 poco 控件识别的 Airtest
4、接口自动化
WEB端:WEB端的接口相对简单
移动端:需要带上version/productid等参数信息,因为可能会有新旧版本兼容等问题,不同版本可能会出现返回不一样的情况。需要有 client 信息,Android/iPhone/iPad,一般可以提取成环境变量单独存放
5、性能
WEB端:WEB端的性能更注重页面响应速度,一般会用JMeter
移动端:更注重并发、qps、耗电量等指标,同样也会用JMeter,另外也有集成好的PerfDog等工具可应用
6、兼容
WEB端:更侧重于电脑系统、浏览器类别/版本的兼容
移动端:更侧重手机系统版本、品牌、屏幕尺寸、分辨率等的兼容
7、安全
WEB端:常用工具:BurpSuite、appcheck、appscan等(目前我就接触过这几个哈哈)
移动端:有一些第三方的加固可以接入例如:360加固,爱加密等;可根据项目的需求调研选择,有一点副作用就是可能会带来crash率的一点点上升,接入后需要比较全面的回归测试
8、app测试更注重的一些方面
安装、卸载、覆盖安装(关注缓存)、冷启动/热启动等
中断事件(返回,画面、音频的打断,电话、锁屏、切后台等操作)
操作类型:手势(左滑右滑上滑下滑,拖动,长按,多点触控)
网络状况:4G/Wi-Fi,网络切换,弱网,断网
权限:拍照、录音等需要权限
安装包的大小
横竖屏翻转
app大多是直接面向用户的,所以交互体验比web端的要求要高许多,同时一些网络情况、内存等影响因素比较多且复杂,所以一些容错的处理也非常重要。
移动端和web端测试有什么区别_荔枝-yzl的博客-CSDN博客_移动端测试和web测试的区别
移动端和web端测试有什么区别
单纯从功能测试的层面上来讲的话,APP 测试、web 测试 在流程和功能测试上是没有区别的。
根据两者载体不一样,则区别如下:
系统结构方面
web项目,b/s架构,基于浏览器的;web测试只要更新了服务器端,客户端就会同步会更新。
app项目,c/s结构的,必须要有客户端;app 修改了服务端,则客户端用户所有核心版本都需要进行回归测试一遍。
性能方面
web项目 需监测 响应时间、CPU、Memory
app项目 除了监测 响应时间、CPU、Memory外,还需监测 流量、电量等
兼容方面
(1)web项目:
\1. 浏览器(火狐、谷歌、IE等)
\2. 操作系统(Windows7、Windows10、Linux等)
(2)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相关的文件
更新:分强制更新、非强制更新、增量包更新、断点续传、弱网状态下更新
\4. 界面操作:关于手机端测试,需注意手势,横竖屏切换,多点触控,前后台切换
\5. 安全测试:安装包是否可反编译代码、安装包是否签名、权限设置,例如访问通讯录等
\6. 边界测试:可用存储空间少、没有SD卡/双SD卡、飞行模式、系统时间有误、第三方依赖(QQ、微信登录)等
\7. 权限测试:设置某个App是否可以获取该权限,例如是否可访问通讯录、相册、照相机等
测试工具方面
自动化工具:APP 一般使用 Appium; Web 一般使用 Selenium
性能测试工具:APP 一般使用 JMeter; Web 一般使用 LR、JMeter
————————————————