UI型Bug定义的处理方法
【UI型Bug定义】
这里指的UI型指以下两种Bug:
第一种是文字型Bug,即和给定的字符资源不一致的Bug,比如文字/字符/提示语/引导语/用户协议等文字方面的不一致。
第二种是UI效果不一致的Bug,比如应该是个圆角按钮,做出来的界面却是个平角的按钮;有下拉箭头效果,做出来的界面却没有下拉箭头效果;混动界面应该有3屏,做出来的界面却只有2屏,诸如此类。
【UI型Bug的产生】
理论上UI型Bug的产生只有一种原因,即开发人员没有按照需求文档或者UI做。
开发人员为什么没按需求的要求去实现?通常有两种原因:
第一种,开发人员一开始就没按需求实现
第二种,需求方频繁变更,没来得及更新文档
在敏捷Agile场景下,开发人员会把最主要的原因归为需求方没有及时更新文档。
【如何减少UI型Bug】
理想情况下,所有的环节都按文档做,是不存在所谓的UI型Bug的。即需求方确定文档,开发人员严格按照文档实现
UI文档的变动要及时更新并通知到开发人员和测试人员
开发人员要严格按照文档的需求去开发,不能主动发挥(任何的主动发挥都要征得需求方的同意并通知到下一个环节(即测试环节)的人员)
【QA人员碰到很多的UI型Bug该怎么办】
当UI型Bug占到Bug总数的一定数量后,QA人员有义务想产品或者项目经理提出抗议,说明这是在浪费大家的时间。
【AgileHei测试是怎么做的】
测试人员不负责测试UI型Bug,由需求方在验收时统一对UI进行验收(或者在项目中期约定一个时间进行修改)。UI型Bug是很直观的Bug,由需求方和实现方直接达成协议,结对及时修改最有效率。
【结论】
UI型Bug是沟通不一致的产物,测试人员不要把有限的精力放在UI型Bug上面。为追求所谓的敏捷而导致了后续环节的频繁沟通,不是Agile的本意,是为了敏捷而敏捷,为了增加沟通而沟通。
本文标题:如何有效发现UI用户界面层的缺陷http://www.ltesting.net/ceshi/ceshijishu/qxgl/2013/0220/205977.html
UI型Bug定义的处理方法的更多相关文章
- JAVA设计模式(01):创建型-工厂模式【工厂方法模式】(Factory Method)
简单工厂模式尽管简单,但存在一个非常严重的问题.当系统中须要引入新产品时,因为静态工厂方法通过所传入參数的不同来创建不同的产品,这必然要改动工厂类的源码,将违背"开闭原则".怎样实 ...
- 【测试基础第六篇】bug定义及生命周期
bug定义 狭义:软件程序的漏洞或缺陷 广义:测试工程师或用户所发现和提出的软件可改进的细节(增强型.建议性)或需求文档存在差异的功能实现 职责:发现bug,提给开发,让其修改 bug类型--了解 代 ...
- grootJS ui控件定义
index13.html <html><head> <title>ui控件定义</title> <script src="jquery- ...
- JS中定义类的方法
JS中定义类的方式有很多种: 1.工厂方式 function Car(){ var ocar = new Object; ocar.color = "blue" ...
- js中的数组Array定义与sort方法使用示例
Array的定义及sort方法使用示例 Array数组相当于java中的ArrayList 定义方法: 1:使用new Array(5 )创建数组 var ary = new Array(5): ...
- javascript定义类的方法总结
1.构造函数法 类是对象的模板,定义了对象共有的方法属性数据 等,在javascript中一个函数就是一个对象,也可以看做一个类的构造方法. 所以我们可以像以下方式定义类: //1.经典的构造方法 Q ...
- JS中定义类的方法<转>
转载地址:http://blog.csdn.net/sdlfx/article/details/1842218 PS(个人理解): 1) 类通过prototype定义的成员(方法或属性),是每个类对象 ...
- JAVA 长整型转换为IP地址的方法
JAVA 长整型转换为IP地址的方法 代码例如以下: /** * 整型解析为IP地址 * @param num * @return */ public static String int2iP(Lon ...
- chapter 13_2 关系类、库定义的元方法
元表还可以指定关系操作符的含义,元方法为__eq ,__lt(小于) ,__le(小于等于). 而其它3个关系操作符则没有单独的元方法,Lua会 把a ~= b 转化为not(a == b) 将a&g ...
随机推荐
- (转)大白话讲解如何给github上项目贡献代码
转自:https://site.douban.com/196781/widget/notes/12161495/note/269163206/ 2013-03-30 22:53:55 本文献给对g ...
- python中redis查看剩余过期时间以及用正则通配符批量删除key的方法
# -*- coding: utf-8 -*- import redis import datetime ''' # 1. redis设置过期时间的两种方式 expire函数设置过期时间为10秒.10 ...
- kafka多线程消费及处理和手动提交处理方案设计[转]
转自:http://blog.csdn.net/haoyifen/article/details/54692503 kafka与其他消息队列不同的是, kafka的消费者状态由外部( 消费者本身或者类 ...
- Mysql查看连接数相关信息
MySQL查看连接数相关信息在 数据库:INFORMATION_SCHEMA 表:PROCESSLIST 表结构如下: mysql> desc PROCESSLIST; +---------+- ...
- Office_Visio_Pro_2007
Office_Visio_Pro_2007http://pan.baidu.com/share/link?shareid=473782&uk=3474501992 解压后在文件夹里找到密钥[一 ...
- sql 基础练习 计算7天各个时间点的总和 group by order mysql一次查询多个表
SQL 基础练习 -- 创建数据库 CREATE DATABASE school CHARACTER SET UTF8; -- 使用数据库 USE school; -- id: 学生的id -- na ...
- 综合出现NSScanner: nil string argument libc++abi.dylib: terminat错误的解决方案
在开发中出现了这个错误,断点查找很久,没找到问题所在的代码,google下,发现了下面这几点会产生这个错误: 首先,顾名思义,错误原因是我们在调用某个方法的时候,传入了一个空字符串(注意区别于字符串内 ...
- 在dos下查看memcache运行状态
在dos命令行下查看memcache运行状态,操作很简单,只需cmd下输入:telnet IP 端口号->stats ,如果本机器不支持telnet还需安装,可以百度telnet的安装方法. ...
- mysql单表体积和一个库设计多少张表为妥
这篇文章来自于看博客园一个园友的分享经历,原文:http://www.cnblogs.com/qqloving/p/3427138.html 他不清楚mysql一个库里面分多少张表合适,他一个库分了8 ...
- Scrum卡片层次图
对照国内的项目管理软件禅道,可以好好感受一下,何为Scrum. 看板则一定要是实物,才有感觉.