大厂都在用的 Jira 管理平台,你还不会用么?

本贴最后更新于 806 天前,其中的信息可能已经时移俗易

前言

作为一名测试工程师,管理bug的生命周期是每天必备的日常工作;所以缺陷管理流程,以及缺陷如何记录并完成跟踪,都是测试必须要掌握的技能,然而管理缺陷需要借助缺陷管理平台。

目前比较主流和常见的一些缺陷管理平台有如下几款:
国内中小型企业:禅道,一个免费开源的系统
外企和大型企业:Jira,不免费
还有其他的:
bugfree
Readmine
Easybug
QC
TAPD
Mantis

本文章给大家重点讲解 Jira这个平台,如何使用和记录跟踪bug。

Jira是什么

Jira是Atlassian(艾特莱森-澳大利亚软件公司)公司出品的一款事务管理软件/缺陷管理类的软件。无论是“需求”/“BUG”/“任务”都是“事务”的一种,所以Jira可以胜任非常多的角色:需求管理、缺陷跟踪、任务管理等等。它特别适合敏捷开发团队使用,大型互联网公司如LinkedIn、Facebook、eBay等内部都在使用Jira。

JIRA产品非常完善且功能强大,安装配置简单,多语言支持、界面十分友好,能够跨平台部署和运行。JIRA 的特性如下:

  1. 管理缺陷,新特性、任务、改进或者其他任何问题

  2. 干净和强大的用户界面

  3. 灵活的工作流定制

  4. 全文搜索和强大的过滤器

  5. 企业级的权限和安全控制

  6. 非常灵活的邮件通知配置

  7. 可以创建子任务

  8. 方便的扩展及与其他系统集成:包括 email 、LDAP 和源码控制工具等;

  9. 丰富插件库

  10. 项目类别和组件/模块管理

  11. 可以在几乎所有硬件、操作系统和数据库平台上运行

    JIra基本概念的介绍

    1、项目(project)
    在JIRA系统中的项目概念是一组问题单(Issue)的集合,项目可以根据组织需求来定义,例如:软件研发项目,市场营销活动,一个请假管理系统等。每一个问题单属于一个项目。每个项目需要有一个名称(例如:Website Issues)和关键字(Key,例如WEB)。项目的关键字会成为项目问题单前缀,例如WEB-101, WEB-102等

图片.png

2、问题 /事件 (Issue)
JIRA跟踪问题,这些问题可以是bug,功能请求或者任何其他想要跟踪的的任务。issue的类型主要包括:
Bug — 故障,功能失效:Bug可由任何发现之人录入。 --测试主要关注
Improvement — 提升,既有功能增强
New Feature — 新功能
Task — 任务,用来管理开发/测试的基准与进度
Task分配到人,以便进行管理团队成员每日都应该更新自己的Task使用时间和进度。SM,PM及TL可以查看状态信息,以便在第二天站会的时候能有效的解决问题。
Sub-task — 子任务,进行任务分解

图片.png

3、版本 (Version)
对于一些类型的项目,尤其是软件研发项目,把一个问题单关联到一个特定的项目版本(例如:1.0 beta, 1.0, 1.2, 2.0)会非常有用。

问题单(Issues)有两个跟版本有关的字段:
影响版本(Affects Version(s): 这个是要说明受问题单影响的版本.举例而言,一个软件Bug可能影响1.1和1.2版本。
修复版本(Fix Version(s)): 这个是为了标明这个问题单在哪一个版本中被修复。
比如Bug的影响版本号是1.1和1.2,但是可能会在版本2.0中才被修复。 没有修复版本号的问题单会被归类为未规划(Unscheduled)。

版本可以是下面三种状态之一:发布(Released),未发布(Unreleased)和归档(Archived)。
版本会有一个发布日期,并且如果在发布日期之后还没有按时发布,这个状态会自动变为过期状态(overdue)。

4、工作流(Workflow): JIRA中的工作流由一系列的状态(statuses)和变迁(transitions)构成,一个问题单在其生命周期中会经过这些状态和变迁。
不同项目模板会有不同的内置工作流,另外,也可以自己定义工作流。但是,一般,用默认就可以了。

图片.png

5、状态(Status)
每一个问题单都会有一个当前的状态,状态说明了当前Issue的处理状态。这个可以自己定义!!
一个问题单开始阶段可能是Open或者To Do状态,然后可以转移到Resolved或者Closed,具体的迁移依赖于系统流程配置的方式。
状态分为:TO DO(待定),Progressing(进行中),Resolved(已解决),Done(已完成),Reopen(重新打开),Pending(搁置),Feedback(反馈)。用户可以通过浏览Issue页面中的状态操作按钮,改变当前的状态,操作为【open】【progress】【reopen】【pend】【resolve】【Feedback】【Close】。状态如下分类:

TO DO/Open(待定):每一个新建的Issue初始状态都为TO DO/Open。
Progressing(进行中):Issue(事件)指定给解决人之后,修改状态为Progressing,表示该Issue正在解决的过程中。
Under Review(在审核):与Processing类似。测试人员在验证
Resolved(已解决):当解决人把指定的Issue解决完成后,修改状态为Resolved,表示该Issue已经解决完成,可以进行测试或验证了。
Done(已完成):测试人员或验证人员(通常是PM),确认该Issue正确后,修改状态为Done,表示该Issue已经被验证完成,是一个合格的Issue。原则上,解决人不能够直接close指定给自己的Issue,必须由指定给自己的reporter来验证。
Reopened(重新打开):验证不通过的Issue,修改状态为reopened,表示该问题仍未解决,可以指回给解决人继续解决。
Pending(搁置):无法处理,暂时搁置的问题,修改状态为pending。
Feedback(反馈):解决人对问题有疑问的问题,修改状态为Feedback,并指回给reporter。
Cancelled(取消):问题单被取消了,但是也可以被再次打开
Approved(审核通过):任务审核 通过了
Rejected(拒绝):任务或者问题被拒绝了

6、决议(Resolution)
一个问题可以有多种解决结果,其中只有一种方法是修复。一个解决结果通常会在状态变更时候被设置起来。
系统默认的问题解决结果会有以下几种:

Fixed — 修复
Unresolved -- 未修复的状态
Won't Fix — 不用修复。例如这个问题所描述的现象已不再有影响了。
Duplicate — 重复。同其它已经存在的问题重复了,推荐把相关的单子链接起来.
Incomplete — 未完成。没有足够的信息继续完成这个问题。
Cannot Reproduce — 不能重现。如果以后有更多信息可以继续可以重新打开这张单子.
Won't Do — 不做。类似于不用修复的方案,试用于软件项目的默认状态。

注意,resolution也可以自己定义。一般不建议弄太多的状态,不方便进行跟踪。

Jira创建缺陷实战

现在我们来演示一下测试发布一个bug到Jira系统的过程:

1、使用测试账号登录到Jira;
2、点击菜单栏里“新建”创建issue;
3、选择对应项目和issue类型(bug),依次输入一下内容:

bug标题:简明扼要的语言描述清楚这个bug的操作和问题;
步骤描述:测试发现这个bug的步骤,需要尽可能的详细;
优先级:开发修复这个bug的优先级,一般由开发老大自己的设置;
工作量预估:开发修复这个bug的工作量的预估时间;
测试环境:bug发现的时候浏览器的版本、电脑的系统版本等这些环境因素,为了帮助开发尽快复现这个bug;
附件:bug的截图和视频等证据和素材,可以添加到附件里;
影响版本:这个bug影响的版本号;
预计修复时间:开发预计修复这个bug的时间;
相关的bug:有跟这个bug有关系的bug,比如阻塞了的bug,重复的bug等;
指派人员,指派给对应的开发,当然用户账号需要提前添加到jira里。

图片.png

图片.png

发布完成之后,bug就会显示在jira的issue模块里:

图片.png

回帖
请输入回帖内容 ...