HTML5的测试总结
HTML5其实也是web的一种,所以基本的web测试的一些重点,HTML5上都要过一遍,不过也有其特殊之处。
【需求设计测试】
需求是否合理、是否有更好的实现方法或者功能的遗漏,以及原型图测试,包括用户体验和用户习惯,或者发现业务不明确或者矛盾。把问题发现在源头,减少后期因需求变更引起开发和测试的迭代成本。在需求阶段即介入测试功能点的编写和记录,也符合尽早介入测试的原则。
【接口测试】
根据开发提供的接口文档,编写测试用例,根据协议选择对应的测试工具。http协议可以选择httpquester(firefox),jmeter等。
接口测试主要关注点:
1)接口返回的数据期望的是否一致;
2)接口入参的边界值校验 ;
3)检查接口的容错性 比如对于传输数据类型错误能否处理等,整型的输入小数、中英文等;
4)接口的性能情况,调用接口数据返回的时间,接口反应慢肯定影响用户体验。
5)接口的安全性:接口部分敏感信息是否加密传输等
【功能测试】
可用性:测试中的重点,可以根据公司的业务和功能进行测试。
【用户界面测试】
根据测试和评审修改过的UED(用户体验设计),测试开发递交的测试包。风格、样式、颜色是否协调,不仅包括HTML5本身,因为HTML5会嵌入App里面,所以要考虑h5的风格、样式、颜色是否与app本身协同,不至于格格不入,包括用户习惯等也最好保持一致或相近,最好在设计初期就有颜色、按钮、图片、背景、边框等详细规划和统一。
但是正是由于H5的可移植性,同一服务会嵌入到N家客户的产品中,难以与各家都完全统一,所以在设计中就应该考虑这些问题。
【兼容性测试】
前文提到PC web因为无法兼容IE6.7.8。PC主要测试在不同系统下不同浏览器google、firefox、360、IE9、IE10、IE11等主流浏览器下的界面兼容和功能兼容,因为不同浏览器对HTML、SVG、XHTML,CSS及javascript的解析会有不同。
例如有些浏览器能够发送验证码,而有些会功能失效,页面排版也会错乱等。手机HTML5主要应用是嵌入在app或者微信公众号里面,所以兼容性主要是IOS、android2个系统各种主流机型的适配。
下面做了一些与App对接测试常见问题:
▲由于HTML5嵌入在App里面,输入框需要调用原生键盘。由于andriod不同手机的差异化,会导致原生键盘功能不同。曾发现三星的android某版本调用原生数字键盘没有小数点,后只要碰到三星机器就调用全键盘;
▲App底部导航栏是否带入到H5页面中,打开键盘是否会影响导航栏位置变动。一般在HTML5页面中应该删除App的导航栏;
▲App与HTML5对接部分需要加密传输;
▲App头部的点击后返回的是前一个页面还是退回app主界面,需要注意;
▲IOS、Android的部分机型由于键盘的打开和收起会出现提示或确认页面弹框上下不居中;
▲由于网络问题偶现的App的报错需要包装;
▲从App各个入口进入HTML5界面都是免登录,各入口登录、登出正常;
▲在各个机型中,屏幕较小和较大的机器会出现不能全部显示或者部分空白的情况。
▲长时间不操作HTML5或者App,需要重新登录,或者需要重新输入密码;
▲屏幕较小手机提交参数的确认页面,由于字数较多会出现换行的情况,需要做适配。
微信主要是入口不一致,申请对接公众号后,需要用微信自带的浏览器进行兼容性测试,其他很多都相似,此处不在赘述。
【网络测试】
由于H5系统很多是云服务,所有响应速度普遍较慢。我们测试的时候一般会用wifi,速度会相对可观点。我们应该观察在4G、3G、甚至2G的网下,看响应时间是否在忍受范围内。时间过长的话,需要提示优化代码做改善。
【安全测试】
由于我们对应的产品部利用HTML5把一些通用功能做成了云服务,可以嵌入多家客户的App,根据渠道划分,所以安全性显得尤为重要。
【性能测试】
随着对接客户的增加,对服务的性能方面的要求也会增加。对于云服务的模块需要做性能测试。
由于部门机器的有限,第一轮测试我一般是采用google模拟器测试,也方便快速熟悉交互,最重要的是可以简单调试报错信息,定位缺陷原因,便于开发调试。
第二轮大功能基本稳定后,我才会借各种机器,用手机的自带的浏览器测试手机的兼容问题。因为app一般同步开发,App团队给不了稳定的包给我们做对接测试。
第三轮或者等App能给出稳定的包的时候,才嵌入微信和App测试。
HTML5的测试总结的更多相关文章
- html5测试总结
1.因为html5不兼容IE78,所以在PC上使用并非十分光.pc上IE还是占主流 2.html5主要用在移动终端 3.html5短期内因为自身的缺陷,用户体验无法达到原生app的体验.如:html5 ...
- 使用HTML5开发Kinect体感游戏
一.简介 我们要做的是怎样一款游戏? 在前不久成都TGC2016展会上,我们开发了一款<火影忍者手游>的体感游戏,主要模拟手游章节<九尾袭来 >,用户化身四代,与九尾进行对决, ...
- 读书笔记:《HTML5开发手册》--HTML5新的结构元素
读书笔记:<HTML5开发手册> (HTML5 Developer's CookBook) 虽然从事前端开发已有很长一段时间,对HTML5标签也有使用,但在语义化上面理解还不够清晰.之前在 ...
- HTML5 Boilerplate - 让页面有个好的开始
最近看到了HTML5 Boilerplate模版,系统的学习与了解了一下.在各种CSS库.JS框架层出不穷的今天,能看到这么好的HTML模版,感觉甚爽.写篇博客,推荐给大家使用. 一:HTML5 ...
- 戏说HTML5
如果有非技术人员问你,HTML5是什么,你会怎么回答? 新的HTML规范... 给浏览器提供了牛逼能力,干以前不能干的事...(确切地说应该是给浏览器规定了许多新的接口标准,要求浏览器实现牛逼的功能. ...
- nw.js桌面软件开发系列 第0.1节 HTML5和桌面软件开发的碰撞
第0.1节 HTML5和桌面软件开发的碰撞 当我们谈论桌面软件开发技术的时候,你会想到什么?如果不对技术本身进行更为深入的探讨,在我的世界里,有这么多技术概念可以被罗列出来(请原谅我本质上是一个Win ...
- Web大前端时代之:HTML5+CSS3入门系列
准备来一波新技术,待续.... Old: 联系源码:https://github.com/dunitian/LoTHTML5 文档下载:https://github.com/dunitian/LoTD ...
- 07. Web大前端时代之:HTML5+CSS3入门系列~H5 地理位置
Web大前端时代之:HTML5+CSS3入门系列:http://www.cnblogs.com/dunitian/p/5121725.html 源码:https://github.com/duniti ...
- HTML5 介绍
本篇主要介绍HTML5规范的内容和页面上的架构变动. 目录 1. HTML5介绍 1.1 介绍 1.2 内容 1.3 浏览器支持情况 2. 创建HTML5页面 2.1 <!DOCTYPE> ...
随机推荐
- 【bzoj2324】[ZJOI2011]营救皮卡丘 最短路-Floyd+有上下界费用流
原文地址:http://www.cnblogs.com/GXZlegend/p/6832504.html 题目描述 皮卡丘被火箭队用邪恶的计谋抢走了!这三个坏家伙还给小智留下了赤果果的挑衅!为了皮卡丘 ...
- Codeforces 846D Monitor(简单二分+二维BIT)
D. Monitor time limit per test 2 seconds memory limit per test 256 megabytes input standard input ou ...
- 湘潭邀请赛 2018 I Longest Increasing Subsequence
题意: 给出一个长度为n的序列,序列中包含0.定义f(i)为把所有0变成i之后的Lis长度,求∑ni=1i⋅f(i). 题解: 设不考虑0的Lis长度为L,那么对于每个f(i),值为L或L+1. 预处 ...
- [AGC005D] ~K Perm Counting [dp]
题面 传送门 思路 首先可以明确的一点是,本题中出现不满足条件的所有的数,都是分组的 只有模$K$意义下相同的数之间才会出现不满足条件的情况,而且仅出现在相邻的情况 那么我们考虑把这个性质利用起来 我 ...
- 【BZOJ 5000 OI树】
Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 107 Solved: 64[Submit][Status][Discuss] Description ...
- jquery字数限制超出显示...,原有内容在title中显示
为标签添加class = sliceFont:添加data-num属性为要显示的字数,截取后会在title中显示原有字符串: $('.sliceFont').each(function(index, ...
- 装多个版本jdk后,eclipse无法正常启动
需要在eclipse.ini中plugins/org.eclipse.equinox.launcher_1.3.0.v20140415-2008.jar后面指定jdk的路径. 指定jdk所在路径 -v ...
- kvm qemu内幕介绍
转自:http://blog.csdn.net/wj_j2ee/article/details/7978259目录 1 硬件虚拟化技术背景 2 KVM的内部实现概述 2.1 KVM的抽象对象 2.2 ...
- Java异常throws与throw的区别
throws关键字通常被应用在声明方法时,用来指定可能抛出的异常.多个异常可以使用逗号隔开.当在主函数中调用该方法时,如果发生异常,就会将异常抛给指定异常对象.谁调用谁处理: 抛出异常throws: ...
- BufferedInputStream&BufferedOutputStream
使用字符缓冲区相关实现copy文件: public static void main(String[] args) { //创建文件对象指定要拷贝的文件路径(源文件),文件须存在,测试用例不做判断 F ...