1、写在前面的话

  本人从事软件工作多年,对如何作测试、如何管理Bug上有一些体会和想法;正好看到网上关于这方面的讨论较多,不妨简单地写出来。本文就测试工作的组织及工具的选用介绍一下主要的思路,供大家参考。

  2、如何作好软件测试

  (1)清晰的质量概念

  常言道没有规矩不成方圆,产品交到您手上,各方面质量标准您要心中有数。安装卸装、功能性能、用户界面、出错与恢复......等等,您可列出大纲式的CheckList,不一定很详细但一定要全。

  不同的开发队伍,规范化水平不同,他们不一定能提交完善的规格书、品质书,如果您自己也没有这个概念,测试中就容易疏漏很多东西。比如,界面上的Button大小、用词、字体、颜色等有规范吗?页面响应时间呢?总之,您要让人家明白,您对这些方面是有要求的。

  (2)善作计划

  按照CheckList,要测试的东西真的是很多,但人力、时间等资源是有限的,您需要考虑重要性、优先级等因素,作一个测试计划。确定测试内容是重要的,确定哪些不测或暂缓测试、同样也是重要的。针对需要测的内容,安排测试环境、人员、时间等,这些大的方面要与上司、相关人员讨论清楚,获得他们的支持。接下来再细化大的Check点,形成详细的测试方案。

  (3)明确进入退出标准

  需要明确进行测试所必须具备的条件,如:测试环境、送测产品的媒介形式、文档等。如果达不到基本要求可明确地提出来,暂时退出直到问题得到解决,否则很浪费大家时间的。如:环境不具备、根本就安装不上、有大量严重错误等。

  (4)对测试人员的要求

  逻辑思维要强,说到底,测试就是一种逻辑覆盖,要用尽量少的测试实例覆盖尽量多的逻辑,这就是效率。细心很重要,在每一个测试点,您需要静下来好好想想,还有哪些可能的情况?细心一定会给您带来高产量的Bug的。

  (5)关于自动测试工具

  任何工具都是在人的安排下发挥作用,您自己如何测永远是第一位的。一般说来,自动测试工具只能在压力、容量等某些性能领域发挥作用,其他绝大部分需要的是勤奋和智慧。

  (6)不断积累、持续改善

  您无论多么出色还是会漏掉Bug,您需要有一个方法能够不断地、持续地改善。分析总结原因、不断完善测试计划、测试方法等,并用文档整理出来,您的基础就会越垫越厚,工作越来越有效。

  (7)明确自己的责任

  作为测试人员,您的任务就是找出缺陷、及时清晰的汇报给相关人员,让管理者清楚产品的质量状况。有时,您测出的问题他们决定不改,或者您认为没达到Release标准他们决定Release,这是可能的。影响一个决定的因素是多方面的,有经费、市场、策略、质量等,虽然测试通常是产品开发的最后一关,但我还没有见过测试人员决定一切的。

  3、Bug管理的作用层次

  软件开发的重点已经从技术转到管理与质量控制上了,如何按时做出符合质量的产品是我们最大的挑战,测试工作在开发过程中占据相当大的份额,Bug管理的作用可想而知。其作用基本上分以下几个层次。

  (1)备忘与沟通

  备忘是一个Bug管理系统最朴素、最基本的作用,好记性不如烂笔头,道理就这么简单。您什么时候测出了Bug、怎么测的、当时环境怎样,开发人员解决了没有、什么时候解决的、如何解决的,需要及时记录下来;问题一多,您靠记忆是记不住的。没有遗漏地记下所有问题点并确保适当地处理掉,是Bug管理的基本要求。

  Bug的产生、变更需及时通知相关人员,他们也应能随时查询不同状况的Bug 数据,良好的沟通才能保证有效的协作。

  (2)监控

  作为项目管理者,您需要及时全面了解目前的项目状况,有些Bug是影响全局的严重错误,需要立即做出处理、决策;有些Bug需要决定改还是不改,或是放入以后版本、分配给其他人等等。所以项目管理者应该能够监控Bug状况。

  (3)定量分析

  对Bug数据作定量的统计分析是更进一步的需求,如:bug数量随时间变化的趋势图、从测试者、责任人、缺陷级别、缺陷原因等不同角度统计缺陷数量等等。

  (4)环境集成

  更高一级的需求是与需求、测试方案、SourceCode、自动测试工具等关联起来。

  4、Bug管理工具的选用

  与选用任何一件商品一样,与您的需求、产品价格、服务等有关。

  (1)需求

  大部分开发机构对Bug工具的要求并不高,能记录问题点、能及时传达给相关人员,并监督他们都作了适当的处理,基本上就可以了。很多网友说某某系统怎么弄得这么复杂、这么贵,自己花一个星期就能做个可用的东西,说的就是这个意思。早期,市场上没有合适的Bug管理系统,我使用Excel作,说实在的也不错。当然啦,时代在进步,Bug管理系统可更好地实现这些需求。

  稍微高一点的要求,可做定量的统计分析,挖掘信息潜在价值。

  更高一级的需求,就是景上添花啦,可以与需求、测试方案、SourceCode、自动测试工具等环境集成。但事物总是两面性的,要真正发挥这些作用需要有完善的需求规格、测试方案,需要仔细规划自动化工具所产生数据的过滤、运用。一句话,对自身的规范化要求较高,否则这些功能听起来不错,实际利用不起来。

  (2)服务与价格

  从价格上说,有3类缺陷管理工具可供选用。

  一是纯免费的,如Bugzilla、Mantis等。但免费的东西用户友好性差、安装难,您需要懂linux、perl、mySQL、apache之类的东西;而且没服务,出一点问题您就上Internet淘技术文章去吧,如何安装、使用这些免费软件简直是一门学问了。

  二是价格较低的国产软件,基本满足备忘沟通和监控的需要。如华创BMS,做得比较灵活,字段、权限、email通知、数据字典等都可以定制,适应性较强,统计报表的定制性也较强,可以做一定的定量分析。一般开发单位使用这类系统基本够用。

  三是价格中等或较高,如微创的BMS、MI的TestDirector、IBM Rational的ClearQuest等。可以做一定的环境集成,如TD,可以把Requirement、Testplan、Bug关联起来,微创BMS可以与MS Project、SourceSafe关联。价格稍高,几万到几十万之间,关键是这些高级功能您真的能利用上。

  总的说来,适合您的、就是好的,微软内部的Bug管理界面也非常朴素,看上去有点像windows 95那个时代的小工具。另外服务是很重要的,问题解决不了耽误自己的时间不说,可别影响测试工作。

  5、典型Bug管理工具比较

  我经历过几个单位,如何管理Bug前后使用过Excel、自制的简易工具、Bugzilla、TD、华创BMS,再参考分析ClearQuest、微创BMS,分析比较如下:

功能特征\ 产品 Testdirector ClearQuest 微创BMS Bugzilla 华创BMS
构架模式 B/S C/S,B/S B/S B/S B/S
用户友好性 一般
流程定制 Y Y N Y Y
查询功能定制 Y Y Y Y Y
功能域定制 Y Y Y Y Y
附件支持 Y Y Y Y Y
用户权限分级管理 Y Y Y Y Y
Email通知 Y Y Y Y Y
批量修改 N N N Y Y
导出至外部文档 Word文档 N N N Excel,HTML
报表定制功能 Y 强,集成Crystal Report 有标准报表和高级报表,定制功能不够 Y 强,有标准报表,定制方便
数据更改历史 Y Y Y N Y
支持平台 Windows Windows, Unix Windows Linux,FreeBSD Windows
支持数据库 Oracle, M$ Access, SQL Server等 Oracle, M$ Access, SQL Server SQL Server等MSDE MySQL Access, SQL Server
安装配置的复杂度 简单 复杂 容易 有些复杂 简单
售后服务 国内有多家代理公司提供相关服务 在国内有分公司提供技术支持 技术支持和服务体系完备 有技术支持和服务,在线升级
与其他工具集成 本身又是测试需求、测试案例管理工具,与winRunner, LoadRunner集成,具有多种主流Case工具接口AddIn 与rational公司的其它产品无缝集成,特别与Clear Case配合以可实现UCM的配置管理体系 M$ VSS, Project 开源配置管理工具CVS
公司背景 世界主流测试软件提供商 已被IBM合并,世界著名软件公司 微软与上海市政府成立的 世界著名开源项目 国产软件
价格 几十万,昂贵 几十万,昂贵 几万,适中 免费 一二千
官方网址 http://www.mercuryinteractive.com http://www.rational.com http://www.wicresoft.com http://www.bugzilla.org http://www.hc-software.com

软件测试及Bug管理经验谈相关推荐

  1. 软件测试管理神器之zentao(禅道)-BUG管理

    软件测试管理神器之zentao(禅道)-BUG管理 禅道在遵循其管理方式基础上,结合国内研发现状,整合了bug管理,测试用例管理,发布管理,文档管理等功能,完整的覆盖了软件研发项目的整个生命周期.在禅 ...

  2. 软件测试(软件测试生命周期,描述一个bug,定义bug级别,bug生命周期,如何开始第一次测试,测试执行和bug管理,测试工作中的人际关系处理)

    一.软件测试的生命周期 对比软件的生命周期和bug的生命周期 · 软件的生命周期:需求分析--计划--设计--编码--测试--运行维护 · 软件测试的生命周期:需求分析--测试计划--测试设计.测试开 ...

  3. 软件测试培训之bug管理

    bug信息不完全 某些信息,例如项目.模块.指定操作人员,也就是说,由谁负责处理,等等,这些信息用于统计分析,用于统计分析.项目.模块.谁的 bug多.谁发现的 bug多.谁修改的 bug多等等,根据 ...

  4. 20年研发管理经验谈(十一)

    本文继20年研发管理经验谈(十). 此文是对我个人测试思想的一个总结,由于经验不够,知识浅薄,如果有什么不合理的地方请一笑了之. 一.面向对象的概念  所谓的面向对象是软件开发的一种重要的思维方式,是 ...

  5. 消灭 Bug!推荐5款测试员不可不知的bug管理工具!

    Bug是软件开发过程中的"副产品",也是开发人员最不想见到的状况.如果没有跟踪和梳理各种bug和问题并及时解决,项目就会花费非常多的时间,导致整个项目的重心偏移.如果在此过程中,测 ...

  6. 一直被模仿,从未被超越-Bug管理工具-TCE

    十余年,SPASVO专注于软件测试,用心打造简洁.高效的bug管理工具--TestCenter Enterprise(以下简称"TCE"),一个在线的轻量级测试项目管理平台,完美地 ...

  7. 有什么比较好的类似 BugFree 的 bug 管理工具?

    这个主题关注人数不少,毕竟这个问题存在的时间不短. 工具再优秀,适合自己才最重要. 为尽量讲透这个问题,本文的行文结构我先整理如下: 1.为什么需要 bug管理工具? 2.好的bug管理工具的标准是什 ...

  8. 如何使用Leangoo进行简单的BUG管理

    大家都知道,Leangoo是一款很简洁高可视化的项目管理工具,它的优点就是以看板为核心,功能强大!用Leangoo实现一个简单的bug管理系统,是非常简单的事情! 创建项目看板 首先,我们先创建一个b ...

  9. 怎样在bug管理上节省时间

    "bug管理"应该是所有互联网企业必不可少的工作内容之一,但是同行们针对这项工作的解决方案各不相同,我经历或见过如下几种: 1.小团队日常使用产品过程中遇到bug,直接找开发人员沟 ...

最新文章

  1. Python-time标准库知识小结
  2. 图解notepad++插件使用
  3. python的django框架与springboot_Django框架简介
  4. 简单,为什么要复杂和妥协?
  5. 脚本安装mysql数据库_Linux使用脚本安装MySQL数据库
  6. MySQL InnoDB的缓冲池之预读失效和缓存池污染
  7. python快速检测视频跳过帧_python实现视频分帧效果
  8. xml转excel(Office XML转excel)
  9. 解析数论引论 第1章 算术基本定理
  10. 取代ClubHouse的节奏!这款开源聊天室太好用了
  11. Android 将自己的应用改为系统应用
  12. CAN/CANFD总线基础培训
  13. 微信隐藏功能系列:微信笔记怎么制作?微信备忘录?计划表?2步完成
  14. 简体繁体转换功能php,PHP输出控制功能在简繁体转换中的应用
  15. Wampserver部署thinksns
  16. python csv
  17. 什么是WiFi 7?| 奇怪的知识又增加了……
  18. fuzzy-control 用python包做模糊控制
  19. 20201104-成信大-C语言程序设计-20201学期《C语言程序设计B》C-trainingExercises07
  20. Windows11不显示WiFi图标

热门文章

  1. Kaptcha图片验证码工具
  2. 微信小程序学习笔记--商城案例(黑马教程)
  3. syslog 服务器过程详解
  4. Docker是什么?Docker可以做什么?
  5. MPEG1、MPEG2、MPEG4标准比较
  6. java爬虫爬b站_Java + golang 爬取B站up主粉丝数
  7. 关于 Jenkins 的 Unity 3D Plugin
  8. 系统架构设计——高可扩展性架构
  9. 二手手机交易存个人信息安全隐患?旧手机到底该怎么样处理?
  10. 汇佳学校家长专栏|家校携手,共创“教育的第三种选择”