Web、app、H5、⼩程序测试的区别
单纯从功能测试的层⾯上来讲的话,APP 测试、web 测试和H5测试在流程和功能测试上是没有区别的。
Web项⽬或pc项⽬都是在电脑上进⾏测试的。常见的PC项⽬架构有BS架构和CS架构的,BS架构就是通过浏览器(browser)请求后台服务(server),后台返回到响应内容显⽰在浏览器上,常见BS架构的项⽬有天猫、京东等浏览器输⼊地址就可以访问。CS架构的项⽬⽐如QQ、等,需要在电脑下载客户端(client),客户端与后台服务器(server)进⾏数据传输交互。基于以上信息,PC端测试都是在电脑上,要么是在浏览器上测试要么安装对应客户端。⽽app测试平台分为安卓和IOS端:安卓测试需要在安卓⼿机上安装开发提供的apk测试包;IOS测试需要将⼿机UUID提供给开发安装ipa测试包进⾏测试。H5测试就是测试移动端web/wap页⾯,在PC或者⼿机浏览器都可以直接访问H5页⾯。
它们的不同点有
系统架构不⼀样,PC和H5端项⽬尤其是WEB项⽬对应⼀个后台服务,所有客户访问的都是同⼀个后台。web测试只要更新了服务器端,客户端就会同步会更新。上线测试时,直接访问线上地址测试即可。APP测试虽然对应了⼀个后台,但是不同的⽤户可能下载了不同版本的客户端,上线测试时,需要兼容每个版本的测试。app 修改了服务端,则客户端⽤户所有核⼼版本都需要进⾏回归测试⼀遍。
发布流程不同,PC端每次更新发布,需要将测试通过的包替换线上包,重启服务后⽴刻⽣效,访问的就是最新的环境;H5由于是⼀些html5⽹站发布上线后⽆需重启即可访问;APP端需要向应⽤市场发布,安卓发布的市场有很多,应⽤宝、豌⾖荚、应⽤商店等,每个应⽤都需要单独审核;IOS端应⽤⽐较单⼀就是appstore,从提交、审核到发布会有⼏天的时间间隔,开发的应⽤包不会⽴刻发布。
专项测试,app端需要⼀些专项测试。
兼容性⽅⾯,因为测试平台的不同,着重点不⼀样。
下⾯具体展开来说。
App测试
APP的测试类型有
· 安装卸载测试:确认系统能正常安装应⽤及使⽤,不需要时卸载及数据清除,
· 安全测试:防范隐私泄露、密码加密及传输安全、权限的合理开放、数据库安全、通信安全以及安装包反编译;
· 接⼝测试:前后端数据⼀致校验、接⼝异常状态及前端展⽰、数据的加密传输、业务功能覆盖;
· 交互与异常测试:同级/上下级页⾯的页⾯交互及数据加载、⽹络异常、数据异常前后端展⽰及状态;
· 性能测试、耗电量&流量测试:内存、CPU、流量消耗、耗电量、冷热启动速度、图⽚资源⼤⼩;
· 界⾯易⽤性测试:符合⽤户习惯;
· UI测试:页⾯颜⾊搭配、控件摆放位置及兼容性;
· 功能测试:需求⽂档已有及隐含的需求功能可正常使⽤;
· 兼容性测试:⽹络、机型、系统、分辨率、硬件、同类软件、新旧数据;
此外还有,Web和移动端的同步情况,⽤户在Web端的操作,在移动端是否可以正常的进⾏同步、显⽰;在移动端的操作,⽤户登录web账号,信息是否同步等。
与web测试的异同
界⾯测试⽅⾯,移动端测试需注意⼿势,横竖屏切换,多点触控,事件触发区域等。
兼容性测试⽅⾯,web是基于浏览器的,所以更倾向于浏览器和电脑硬件,电脑系统的⽅向的兼容,
不过⼀般还是以浏览器的为主。⽽浏览器的兼容则是⼀般是选择不同的浏览器内核进⾏测试(IE、chrome、Firefox)。app的测试则必须依赖phone或者是pad,不仅要看分辨率,屏幕尺⼨,还要看设备系统-系统总的来说也就分为Android和iOS。web端的测试⼀般都是主要使⽤⼀种浏览器,待系统基本稳定的时候,再去专门测试浏览器的兼容性。移动端主要分为安卓和IOS,⽽这两端出现的问题⼀般是不⼀致的,⼀致的问题主要是数据问题,这时候是需要后台处理的,所以我们测试的时候需要两端都重点测试,⽽不会出现先着重测试某⼀端的问题。
性能⽅⾯,web项⽬需监测响应时间、CPU、Memory,app项⽬除了监测响应时间、CPU、Memory外,还需监测流量、电量等。
安全测试⽅⾯,安装包是否可反编译代码、安装包是否签名、权限设置,例如访问通讯录、相册、照相机等等,登录后长时间⽆操作情况
专项测试⽅⾯,相对于 Wed 项⽬,APP有如下专项测试项
1. ⼲扰测试:中断,来电,短信,关机,重启等
web端登录2. 弱⽹络测试(模拟2g、3g、4g,wifi⽹络状态以及丢包情况);⽹络切换测试(⽹络断开后重连、3g切换到4g/5g/wifi 等)
3. 安装、更新、卸载。安装需考虑安装时的中断、弱⽹、安装后删除安装⽂件等情况;卸载需考虑 卸载后是否删除app相关的⽂件;更新,分强制更新、⾮强制更新、增量包更新、断点续传、弱⽹状态下更新
4、接⼝测试
5、边界测试:可⽤存储空间少、没有SD卡/双SD卡、飞⾏模式、系统时间有误、第三⽅依赖(QQ、登录)等
6、不同app版本的业务功能测试
测试⼯具⽅⾯,⾃动化测试⼯具:APP ⼀般使⽤ Appium;Web ⼀般使⽤ Selenium,性能测试⼯具:APP ⼀般使⽤ JMeter; Web ⼀般使⽤loadrunner、JMeter。
H5测试
我们很容易将H5与HTML5混淆,H5是⼀个产品名词,作为⼀种解决⽅案,⽽HTML5则是⼀个技术名词,是下⼀代⽂本标记语⾔标准。
H5页⾯,⼊⼝的位置可以在浏览器打开或是APP的某个⼊⼝,可以理解成是适⽤于移动设备上展⽰⽹
页的⼀种新形式。APP中主要是通过Webview控件来加载URL来展⽰H5的。这种⽅式打开的H5页⾯⼀般没有刷新按钮,页⾯顶端也看不到URL。
H5的测试点
在接⼊客户端测试之前,我们可以先使⽤chrome⾃带的开发者⼯具(视图-开发者-开发者⼯具)来进⾏测试,效果是⼀样的,将H5链接放到浏览器中,打开开发者⼯具,我们就能看到所有接⼝和页⾯的显⽰。这个⼯具还可以⽤来做兼容性的测试,在页⾯左上⾓可调出,可以选择⼿机、分辨率等,内置的设备还有很多可以编辑,这⼀点上降低了我们⼿⼯去测试兼容性关于机型的测试。
H5页⾯的测试点⼀般有
基本业务功能测试,包括登录、刷新、回退、前进、翻页和业务逻辑。其中,登录⽅⾯,客户端已登录,那么进⼊H5后仍是登录状态;若客户端未登录,进⼊H5,点击对应链接,如果需要登录则需要拉起native登录。下拉刷新是否仍然处于当前页⾯ ;⽤户主动点击刷新按钮是否仍然处于当前页⾯ ;点击返回与back键,回退页⾯是否是期望页⾯ ;翻页加载情况;进⼊后台后,重新调出
性能⽅⾯,和操作体验相关的测试,包括流量、页⾯加载时间、弱⽹络环境和服务端的压测。流量测试⽅⾯,对于某些资源是否要做缓存或压缩;弱⽹络下,数据加载较慢,是否有对应的loading提⽰;刷新页⾯或者加载新内容时页⾯是否有抖动
安全⽅⾯,包括恶意攻击、权限认证、脱敏处理和直接url打开等
接⼝测试⽅⾯,包括功能、安全、性能
兼容性⽅⾯,包括浏览器兼容、系统版本兼容、分辨率兼容等⽅⾯
Hybrid app测试
【部分内容来⾃《给产品经理讲技术》】
现在,移动端上的很多应⽤都采⽤了Hybrid  APP的架构。所谓HybridAPP,就是指使⽤原⽣和H5两种UI呈现内容。如何确认⼀个页⾯哪些部分采⽤了原⽣UI,哪些部分采⽤了H5?
在Android系统的“开发者选项”界⾯⾥,有⼀个名为“显⽰布局边界”的功能,通过使⽤这个功能,读者可以很快地分辨出哪些是原⽣UI,哪些是 H5。
当“显⽰布局边界”的功能开启后,所有的原⽣控件都会被⼀个框框住。⽽其中的H5页⾯会被WebView 这个原⽣控件框住。它与其他原⽣控件的区别是WebView展⽰的内容⽐单⼀的原⽣控件复杂得多。例如,原⽣的TextView⽤来显⽰⽂本内容、ImageView ⽤来显⽰图⽚等;⽽WebView  可以显⽰⼀个⽹页的内容,我们可以把它看作精简版的浏览器。
原⽣页⾯为了展⽰丰富的内容,⼀般需要利⽤⼤量控件进⾏组合,所以当读者看到某个页⾯布满了框时,就可以判断出这部分肯定是基于原⽣UI 呈现的,如果⼀个页⾯显⽰的内容很丰富,页⾯中却只有⼀个⼤⼤的框,那么这个框内的内容很可能就是由WebView显⽰的。如当当APP中的云阅读页⾯
⼀个APP中既使⽤原⽣UI,⼜使⽤H5,是为了满⾜不同的需求及⽤户体验。使⽤原⽣UI可以应对流畅性体验要求较⾼的场景和UI样式相对固定,不会频繁变化的页⾯。使⽤H5页⾯可以满⾜较强的动态运营需求,UI样式频繁变化,满⾜多平台复⽤。
测试点有
1、App与HTML5对接部分需要加密传输;
2、App头部的点击后返回的是前⼀个页⾯还是退回app主界⾯,需要注意;
3、从App各个⼊⼝进⼊HTML5界⾯都是免登录,各⼊⼝登录、登出正常;
4、在各个机型中,屏幕较⼩和较⼤的机器会出现不能全部显⽰或者部分空⽩的情况。
5、长时间不操作HTML5或者App,需要重新登录,或者需要重新输⼊密码;
6、屏幕较⼩⼿机提交参数的确认页⾯,由于字数较多会出现换⾏的情况,需要做适配。
⼩程序测试
⼩程序,简称⼩程序,英⽂名Mini Program,是⼀种不需要下载安装即可使⽤的应⽤。
它的测试点有
功能测试⽅⾯,要覆盖各功能模块;在业务和数据流程上,把各个功能点串联起来形成完整的业务流程来检查;功能模块间的交互性检查。同⼀个业务,可能有不能的操作路径来实现,每个路径都需要覆盖检查;同⼀功能的不同⼊⼝检查;
易⽤性测试,包括,导航、功能⼊⼝,上下层级进⼊&返回、其他⼈机交互体验等
兼容性⽅⾯,主要指操作系统和屏幕分辨率⽅⾯,操作系统主要是指android系统和iOS系统。⼩程序运⾏在中,看起来是跟操作系统没关系,实际上还是有关系的,因为底层调⽤依赖于具体的操作系统。按照官⽅⽂档在⼩程序在ios上是运⾏在JavaScriptCore中但在Android上是通过X5JSCore来解析的。如果有条件,不仅要覆盖android和iOS,包括主流的Android品牌也要覆盖;分辨率⽅⾯,普通的⼿机APP会有屏幕兼容性的问题,⼩程序同样有这样的问题,只不过相对少了些。⼩程序定义了⼀个新的尺⼨单位rpx(responsive pixel)可以适配不同尺⼨的屏幕,在页⾯上定义对象的单位是rpx就可以在不同的屏幕上适配。
安全⽅⾯,⼩程序是内嵌到的,因此客户端的安全性⽏庸置疑。只需关注⼩程序本⾝与后端接⼝传递数据的安全性即可。此外,还要注意权限⽅⾯的要求。
接⼝测试,对接⼝进⾏测试,和平时的接⼝测试是⼀样的,没有特别之处。但是我们需要了解的就是,⼩程序SDK提供的接⼝是websocket。WebSocket是 HTML 5的⼀个主要特性,它是建⽴在TCP上的⼀种全双⼯协议,也就是说客户端可以向服务器发信息,服务器也可以向客户端推送消息。WebSocket 在⾸次建⽴连接时,使⽤普通 HTTP和服务器通信,同时告诉服务器后⾯的交互⽤WebSocket的⽅式。在WebSocket连接建⽴后,往来的消息都可以通过这条管道发送,同时客户端与服务器也会不断地⽤ping-pong的⽅式保持⼼跳,防⽌连接异常断开。
性能测试,⼩程序的性能不是测试⼩程序的重点,优先级也⽐较低。⼩程序的性能和WEB的性能测试⾮常类似,性能的常⽤指标也⼤致相同。包括页⾯的⽩屏时间,⾸屏时间,资源占⽤,页⾯渲染时间,帧率等等。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。