小爸爸 发表于 2017-5-31 10:13:15

移动测试基础 web 及移动测试方法回顾

本帖最后由 小爸爸 于 2017-5-31 10:18 编辑

最近听人说到web测试和app移动测试有什么不一样?个人觉得大同小异,后来也百度看了看

Web端与移动端测试的区别?

从技术上来说:WEB测试和移动端测试其测试类型也基本相似,都需要进行功能测试、性能测试、安全性测试、GUI测试等测试类型。他们的主要区别在于具体测试的细节和方法有区别。web项目,一般都是b/s架构,基于浏览器的,而app则是c/s的,是有客户端的。
从系统架构来看的话,web测试只要更新了服务器端,客户端就会同步更新;而如果是app下修改了服务端,意味着客户端用户所使用的核心版本都需要进行回归测试一遍。
客户端性能方面,web页面可能只会关注响应时间,而app则还需要关心流量、电量、CPU、GPU、Memory这些了。
兼容方面,web是基于浏览器的,所以更倾向于浏览器(IE、chrome、Firefox)和电脑硬件,电脑系统的方向的兼容;app的测试则必须依赖手机或者pad,不仅要看分辨率,屏幕尺寸,重要看设备系统
相比较web测试,app更是多了一些专项测试:
多网测试:无线网络、2G、3G、4G等,断网、网速较差及网络之间的切换时页面的显示等,此外,在非wifi下,还需要注意网络使用量问题
中断测试:如电话、短信、通知、断电等,软件需要处理这些特殊情况
安装测试:除了常规的安装、更新、卸载时的用户数据处理外还要考虑到异常场景。包括安装时的中断、弱网、安装后删除安装文件、增量包更新、断点续传;升级测试的提醒机制,升级取消是否会影响原有功能的使用,升级后用户数据是否被清除
界面测试:如不同尺寸规格的图文在不同屏幕的显示;对于触摸屏手机,测试时还要注意手势,横竖屏切换,多点触控等测试
弱网测试:需要测试弱网所造成的用户体验,可从功能,性能,异常处理,场景特性等几个维度来考虑。
https://testerhome.com/uploads/photo/2017/177197b8e38b9ace5a1511c90a02364e.png!large

功能:在弱网下,做功能测试,不仅是次性能测试,也是一种可靠性测试
性能:从app的热启动、页面切换、前后台切换测试app的响应时间。尤其是H5的页面需要测试首屏时间,是否有302跳转,页面大小等,否则会出现各种白屏、闪屏、转菊花等。另外可通过网络请求API的整体时间,response以及body大小来推断是服务器处理的慢,还是需要治理传输包;如果时间很少,body又小,还很慢的话,这下就是客户端程序的问题。
强网络形态场景:有些场景就必须是开着wifi才能做的;比如微信的升级就会监听用户是否插着电,连着wifi,一旦监听到了,方可通知升级
容错机制:主要是考虑弱网情况下带来的不稳定,等待超时 ANR了,或者直接异常闪退了。这些的处理,一定要做的优雅,所以异常信息的文案一定要做的漂亮
重连机制:涉及两块,一块是客户端是否会重发请求,一块是服务端是否接受重连。配合超时机制,多久没有得到反馈才会发起重连,失败几次会不允许重连
无网状态测试:首先无网下页面呈现;其次数据完整性和session一致性;另外,还需要关注的是,无网状态下会不会还不断的请求网络,不断的做网络相关的操作。从无网状态恢复到有网络,会不会有请求堆积?
弱网模拟

使用Fiddler做代理

安装好后打开fiddler→选择 Tools >Fildder Options > Https
Connection勾选允许远程连接
在本机命令行输入:ipconfig,找到本机的ip地址。
打开android设备的“设置”->“WLAN”,找到你要连接的网络,在上面长按,然后选择“修改网络”,弹出网络设置对话框,然后勾选“显示高级选项”。
在“代理”后面的输入框选择“手动”,在“代理服务器主机名”后面的输入框输入电脑的ip地址,在“代理服务器端口”后面的输入框输入8888
使用Fiddler进行弱网模拟

打开Fiddler,点击Rules-->点击Customize Rules;(或者Ctrl+R)
Ctrl+F组合键调出搜索对话框,键入simulate进行搜索,找到如下代码框:https://testerhome.com/uploads/photo/2017/c120bce6b3c6c37f3cb258da43f0f873.png!large


修改其中的数字,已达到限定不同网速的效果。数字的含义为每KB数据所需要的时间(ms)
打开弱网模拟功能:点击Rules(或者Alt+R);点击Performance-->点击Simulate Modem Speeds,完成弱网模拟功能的打开。
易混淆的测试术语

性能测试:是为了获得系统在某种特定的条件下(包括特定的负载条件下)的性能指标数据;而负载测试及压力测试是为了发现软件系统中所存在的问题,包括性能瓶颈、内存泄漏等
负载测试:是模拟实际软件系统负荷,通过不断加载来观察不同负载下系统的响应时间和数据吞吐量、系统占用的资源(如CPU、内存)等。
压力测试:是在强负载下的测试,查看应用系统在峰值使用情况下操作行为,从而有效地发现系统的某项功能隐患、系统是否具有良好的容错能力和可恢复能力。
容错性测试: 输入异常数据或进行异常操作,以检验系统的保护性。如果系统的容错性好,系统只给出提示或内部消化掉,而不会导致系统出错甚至崩溃;倘若系统一但出问题,系统能自启动,数据不会丢失

梦想家 发表于 2017-5-31 10:50:52

支持分享

小皮球的故事 发表于 2017-5-31 11:43:19

app一般都是内网环境,如何测试4G弱网呢?

康浮生 发表于 2017-5-31 14:43:32

谢谢分享

测试就是来开荒 发表于 2017-6-5 16:53:37

第二点,web性能方面,那个响应是服务器的性能,前端还会关心资源加载,页面渲染之类的东西

小皮球的故事 发表于 2017-6-5 16:54:29

IOS不是有个开发者工具 可以设置弱网状态
页: [1]
查看完整版本: 移动测试基础 web 及移动测试方法回顾