前些日子上线了新版的app,在上线后发现了几个重大的bug,在此总结,在以后的测试工作中需要额外的关注。

  • 需求流程bug
  • 页面刷新bug
  • 标签栏刷新bug

第一个bug出现的原因是产品需求与运营实际操作不同步而产生的bug

产品上线的需求是上线一个活动,活动有报名时间,报名通过公布名单时间。在流程图上,所有一系列的操作都是在活动时间内操作的(包括活动报名,查看名单,通过报名,上传活动体验),而在活动结束后没有任何的操作。但是实际上线后发现的问题是,运营都是在活动结束后才会公布名单,然后用户才可以查看名单,上传活动体验。而此时操作按钮都已经变成了"已结束"。这就十分尴尬了,因为在测试过程中我们根据流程图进行测试,活动时间内可以进行相关的操作,而活动结束了变为了已结束,完全符合需求,功能实现也没有问题,但是实际运营就有问题了。

这个bug的出现很难说是谁的问题,从项目流程来说,在需求定义、流程确认阶段就有问题,导致下游一系列的工作都是在错误的方向;但是从实际工作内容来讲,测试及开发人员对相应地需求没有进行很好地确认,对需求进行深层次的解读,仅仅是看着需求文档就完成了自己的工作,这也是存在问题的。

从测试人员角度出发,这个bug的出现可以让我们反思到一些问题,作为一名测试,如何测试才是有效的测试?是一条条详细的测试案例?是对需求文档的详细分析?我认为这些都不是重点,当我们完全认同这份文档,无论我们提出怎样的问题,设计怎样的案例,都无法测试出其中的问题。拿上述例子来说,就看到的流程来说是没有任何问题的,需求文档得到了开发,测试,产品多方的认同。但就是在实际操作方面出现了问题,那么如何避免这样的问题,或者说可以测到类似的问题?

我认为测试人员应当明确自身的责任,作为一名测试,不是让一个app能够完美运行,让一个系统正常运行就可以了,或者提出这样那样的bug,而是将自己放到一个产品运营,项目开发的质量保障位置,用自己的技术、思维来解决问题,能够发现在项目开发,产品运营中的痛点(这不仅仅是指bug),并能以自己的能力去解决这些痛点,可以让开发、运营更高效的工作,产品系统运营的更好,这才是一名优秀的测试人员,测试人员不应把自己放到提出问题的位置,而是能解决问题的位置,间接的解决问题。莫要先入为主,我就是个测试,我测试的东西能够跟产品需求吻合就OK了,这样可能会测试工作完成的很好,但是从测试人员角度来说已经把自己限制死了。

第二个bug出现的原因是常见的app中cell的复用问题

做过app开发的同学可能都清楚,大部分的app页面都是一个个tableview,tableview重要的一个功能是cell复用,当我们上滑页面,一个cell消失,下面cell出现,其实不是出现了一个新的cell,只是滑出屏幕的cell被复用了,这样做的目的是可以大大优化tableview的性能,但是如果cell复用的时候数据处理不好可就有bug了,没有将之前的数据清除,那么就会造成下滑出现的cell的数据跟上面是重复的,造成各种各样的问题,这个在测试过程中需要多多注意。

第三个bug是标签栏刷新bug

一个标签刷新了,再去点击另一个标签,数据刷新了,但是标签栏选中状态还是上一个标签,常见bug,该拿程序猿祭天了,不多说了。

近期测试BUG总结的更多相关文章

  1. [工作日志] 2018-12-06 重点: 解决安全测试bug

    安全测试bug 业务端提出, 在修改是否给联系人发送短信接口,如果操作人和被操作的联系人不在同一个企业的情况下, 也是可以修改的. 解决办法: 加校验.

  2. 测试BUG记录模板(供参考)

    文档说明如下: Bug严重程度: A-崩溃的:由于程序所引起的死机.非法退出.死循环:数据库发生死锁:因错误操作导致的程序中断:主要功能错误:造成数据破坏丢失或数据异常:数据库连接错误:数据通讯错误. ...

  3. 用excel记录测试bug问题总结

    前几天与开发在讨论问题的时候,开发提了一个问题,说是已经解决的问题,能否用excel表格总结一下,问了一下原因,感觉想法很好,就总结了一下. 在上家公司的时候,提交bug用的是mantis,现在是禅道 ...

  4. 一次压力测试Bug排查-epoll使用避坑指南

    Bug复现 使用Webbench对服务器进行压力测试,创建1000个客户端,并发访问服务器10s,正常情况下有接近8万个HTTP请求访问服务器. 结果显示仅有7个请求被成功处理,0个请求处理失败,服务 ...

  5. 测试bug级别定义

    致命bug:不能完全满足系统要求,系统停止运行,系统的重要部件无法运行,系统崩溃或者挂起等导致系统不能正常运行. 修改优先级为最高,该级别问题需要立即修改. 1.系统崩溃 2.导致程序重启,死机或非法 ...

  6. 手机monkey测试BUG重现及解决方法

    目录 1.1 Monkey测试简介...1 1.2 Monkey程序介绍...1 1.3 Monkey命令的简单帮助...2 1.4 Monkey命令参数介绍...2 1.5 Monkey测试步骤.. ...

  7. 开发至今,终于开始测试bug,可以省心点了

    今天遇到一个特别奇葩的问题 IOSSDK9.1 Xcode7.1.1 使用表控制器UITableViewController来刷新表时, 之前对表的frame进行的修改,都会被恢复,沾满整个屏幕. 目 ...

  8. 关于上级机构的冲突性测试bug修复

    描述: 1.上级机构可以为空. 2.机构添加时,选择了上级机构,在未提交前,另一用户将该机构删除,然后前一用户再提交表单,提示会保存成功,本操作应该保存失败. 思路:在上级机构不为空时,保存前进行查询 ...

  9. 测试bug

    模板在运行时出现了以下 1 个错误:---------------------------Controller.tt(-1,-1) : error : 获取 AppDomain 以便从主机运行转换时出 ...

随机推荐

  1. 洛谷——P1144 最短路计数

    P1144 最短路计数 题目描述 给出一个N个顶点M条边的无向无权图,顶点编号为1-N.问从顶点1开始,到其他每个点的最短路有几条. 输入输出格式 输入格式: 输入第一行包含2个正整数N,M,为图的顶 ...

  2. mybatis ----SqlSessionManager

    今天我们来看看这个类 有些写法还是很经典的 public class SqlSessionManager implements SqlSessionFactory, SqlSession { priv ...

  3. JS里面的call, apply以及bind

    参考了这篇文章:http://www.tuicool.com/articles/EVF3Eb 给几个例子 function add(a,b) { alert(a+b); } function sub( ...

  4. intent 支持的action 动作

    String ACTION_AIRPLANE_MODE_CHANGED Broadcast Action: The user has switched the phone into or out of ...

  5. NYOJ 38 布线问题_(解法1 Kruskal算法)

    时间限制:1000 ms  |  内存限制:65535 KB 难度:4 描写叙述 南阳理工学院要进行用电线路改造.如今校长要求设计师设计出一种布线方式,该布线方式须要满足下面条件: 1.把全部的楼都供 ...

  6. Win7安装软件,界面上中文显示乱码的解决方案

    “Control panel”->"Clock,Language and Region"->"Region and Language"->第四 ...

  7. awk中的NR FNR

    shell编程中,awk简直就是一把利器,你能够把它看成shell的一部分,也能够看成一种单独的语言,功能十分强大.今天先来说一说NR与FNR 先准备两个文件: 1.txt,内容为: user pas ...

  8. 【Java编程】Java在dos窗体编译与运行的批处理

    近期在Java编程过程中,常常使用到dos窗体对程序进行编译与执行. 可是不方便之处在于每次都要输入命令进入将要编译的程序的文件夹(事实上也有简单的方法,在文章末尾给出).于是编写了一个配置文件,能够 ...

  9. Flex4_Tree组件2(添加多选框、修改树图标)

    1.新建AS类,用于为Tree生成复选框,及一些选择事件. package com.th.myUtils { import flash.events.Event; import flash.event ...

  10. kettle中使用javascript步骤和fireToDB函数实现自己定义数据库查询

    kettle中使用javascript步骤和fireToDB函数实现自己定义数据库查询 如果你须要实现非传统的数据库查询操作.为了讨论这样的情景,我们如果你须要读取数据库中的正則表達式,然后检查输入的 ...