一、缺陷产生的原因
  通常开发及测试人员所讲述的软件错误和软件缺陷是两个不同的概念,简单的来讲软件错误是指在软件声明周期内不希望或不可见接受的人为错误,其结果是导致软件缺陷的产生。在软件动态运行过程中,在某种条件下系统中软件缺陷暴露导致故障发生,终导致软件失效。
  软件缺陷产生的原因:
  ①需求规格说明书编写的不够全面、不完整、不准确而产生的缺陷;
  ②设计变更时,没有及时沟通或者沟通不顺畅;
  ③研发过程中的需求变更;
  ④程序开发人员对业务上的不理解或理解不一致;
  ⑤代码编写不严谨,缺少逗号、被除数为0等
  ⑥软件系统运行的软硬件环境带来的问题。
  正确理解了缺陷定义和产生的根源,可以帮助测试人员比较容易地找到判断缺陷的方法,因此用户的需求规格说明书或产品说明书是判断缺陷的关键。因此在识别缺陷的过程中,测试人员可以从以下几个方面入手:
  ①首先测试人员要对需求规格说明书或者产品说明书等说明性文档要非常熟悉,因为这些文档反映了用户的实际业务需求;
  ②通过对所测试产品或系统的行业和业务背景知识的了解,来发现被忽视的问题;
  ③通过自己不断的积累测试经验和行业规则,发现深层次的缺陷;
  ④通过沟通来收集、学习和分享其他人判断缺陷的方法。
  二、缺陷报告介绍
  缺陷报告是测试工程师的主要的产物,也是测试团队主要的交付物之一。其作用是让研发人员能够了解到缺陷是如何产生的,便于更好的修复缺陷。
  缺陷报告的几大要素:缺陷标题、缺陷发生的模块、缺陷产生的功能点、缺陷类型、缺陷状态、缺陷产生的详细步骤、缺陷的严重性、缺陷的优先级、缺陷的状态、涉及的软件版本、提交缺陷的人员、提交日期。同时还可以提供相关联的测试用例编号。
  缺陷处理后要填写的信息:修复的版本号、修复人、拒绝/挂起人。
  三、缺陷管理流程
  ①总体流程

  ②缺陷提交流程

  ③缺陷修复流程