产品测试规范

新书

速递

吴老的java版《selenium webdriver 实战宝典》和python版《selenium Webdriver 3.0 自动化测试框架实战指南》出版了,代码拿来就能用。

文 | 俞美玲

Bug预防体系

10

1.10.2 app常见产品问题及预防

01

界面适配

a:手机分辨率为1920x7080的高分辨率手机,在调整手机字体大小时,会导致页面显示出现变形;

b:因用户设置的特殊字体导致列表的字母条不显示;

c:某些 banner 图片在部分机型只能显示一半。

预防方法:

a:文字或者图片需要适配不同分辨率的机型时,建议使用dp方式进行开发,即使是使用dp,也需要考虑特殊分辨率的机型显示;

b:适应宽度/适应高度/高宽均适应的;

c:针对程序需求,设定合适的适配机制。

02

系统适配

a:调用高版本API,导致某些机型进入主页显示空白页面。

预防方法:

a:调用高版本API,需要考虑兼容性,开发团队需要制定程序API调用规范。

03

交互适配(1)

a:在输入框操作时,调出系统输入法软键盘后,没有有效启用键盘上的 “下一项”、“确定”、“搜索”等按键;

b:系统软键盘,在关闭当前页面时没有及时收起软键盘。

预防方法:

a:需求设计过程中需要考虑输入法操作键的使用细节,确保所有软键盘的输入键可使用;

b:设计规范:程序/页面设计针对输入法操作键的使用制定规范

04

交互适配(2)

a:APP界面的“返回”操作与手机系统的“返回”按键操作效果不一致;或界面未提供“返回”,在无系统“返回”按键的手机上,无法返回。

预防方法:

a:设计规范:程序设计针对手机返回键制定使用规范;

b:在设计中要综合界面需求设定是否提供 “返回”操作。

05

界面风格

a:对话框标点、英文字符出现全角、半角的不统一;

b:对话框、提示浮动框提示语风格不同,显示位置均不同,产品友好度下降;

c:字体和字号要在app中是不同的风格。

预防方法:-语言文字提示规范

a:全角字符和半角字符都要使用一个空格分开;

b:英文和数字之间要有空格分开;

c:汉字和英文、数字要有空格分开;

d:带有汉字的话要使用全角字符;

e:语言中不要混用全角和半角标点;

f:字体和字号要保持统一的风格。

06

性能优化(1)

a:进入一些列表,若数量较多则会出现卡死:;

b:界面显示对象数量较多,某些会导致页面操作卡顿,用户体验很差;

c:处理大量数据时,用户等待时间过长,无进度条提示进度。

预防方法:

a:程序对耗时较多的操作逻辑、判断逻辑,不放入UI主线程;

b:对数据库记录较多的操作,可以改成数据库批量操作,或者 调用批量接口;c:程序在后台处理用户的输入,则提供进度条或对话框。

07

性能优化(2)

a:后台播放内存泄露;

b:程序后台运行的时候,手机一直处于占用CPU的运行状态;

c:页面中的动态效果(如:马灯滚动)次数无限制,导致界面不断刷新消耗资源。

预防方法:

a:使用静态分析工具或代码检查方式检查内容的分配和释放;

b:WakeLock机制是防回收技术,当没有播放、下载等操作时,应该主动关闭后台的唤醒锁,减少耗电。当再次需要使用播放、下载功能时才去开启唤醒;

c:对刷新消耗资源类操作,要有次数限制。

08

多服务、多进程

a:某些功能操作后, app 无法连接网络;

b:进程被杀死后重启,通知栏中显示的信息不正确,没有显示正确的信息;

c:app未启动,通过其他第三方app的调用入口调用app ,无法正常使用某些功能;

d:服务停止后,无法被启动;

f:程序被手动退出后,进程仍然在后台存在。

预防方法:

a:重新初始化时获取值时读取到空值,因此赋予一个默认值;

b:服务重启被回收重启时,初始化对象时要判断当前是否已存在,若存在则复用并更新内容

c:任务独立,需要创建不同的服务,生命周期不会互相影响,服务独立可以避免某个服务结束会影响到其他功能的正常使用。

总体,对有启用多服务、多进程的程序,有需要做好服务、进程的一致性管理。

09

外部调用

a:某些机型启动app之后一直在调用某些外部服务(通过后台服务可以看到其他服务进程,退出app后,有些服务进程消失)

b:某些功能模块被扫描成存在木马病毒;

c:安全管家告警程序获取绝密权限(通讯录权限)。

预防方法:

a:调用第三方功能作为统计或者监控作用时,需要考虑该sdk是否会一直唤醒app导致耗电或者程序无法真正关闭问题;

c:及时关闭不需要的服务进程,在能满足需求的情况下,尽量减少使用敏感的系统权限。

10

网络机制(1)

a:网络重试操作机制不统一,导致页面超时体验风格不统一;

b:某些应用页面,访问响应慢。

预防方法:

a:对底层网络重试机制做统一封装后,供上层调用;

b:固定好每次重试间隔(建议10s重试)和重试总次数(建议3次);

c:为使页面提示可以区分网络层与业务解析层不同错误,需对不同错误类型做分类的异常处理,并提示用户原因或让用户重试;

d:对多个网络请求的界面,网络接口并行请求有利于提高响应速度。(待续)

产品测试规范纲要

目 录

1.10.2 app常见产品问题及预防

1.11 BUG管理规范

1.11.1 bug提交规范

1.11.2 bug级别定义

再来哟!

安装喜马拉雅app,搜索“光荣之路”可以收听吴老和他的朋友们分享的35小时测试知识语音

  • 发表于:
  • 原文链接:http://kuaibao.qq.com/s/20171208B0YUEX00?refer=cp_1026

扫码关注云+社区