表1:常用缺陷管理工具比较
序号 | 缺陷管理工具 | 商用OR免费 | 是否跨平台 |
优点 |
缺点 |
1 | QC(Quality Center) | 商用 | 是 | 基于Web,可在广泛的应用环境下自动执行软件质量测试和管理,功能强大 | 系统资源消耗比较大,英文版的易用性不是很好,性能不稳定,收费且价格不菲 |
2 | Bugzilla | 免费 | 是 | 基于Web方式,有强大的检索功能,强大的后端数据库支持,丰富多样的配置设定 | 安装需要Perl和配置MYSQL数据库,过程比较繁琐,修改配置文件比较麻烦;英文版的,能汉化但是汉化后容易出现乱码; |
3 | 禅道 | 免费 | 是 | 开放源代码,插件丰富;灵活,可以适用不同的管理场景;页面简洁、流程清晰 | 偏向于项目管理,测试只是部分功能 |
4 | Mantis | 免费 | 是 | 轻量级,开源,简单实用,报表功能强大,在功能上、实用性上足以满足中小型项目的管理及跟踪 | 安装配置较复杂 |
5 | JIRA | 商业 | 是 | 管理项目,跟踪任务、bug,通过JIRA的邮件通知功能进行协作通知,在实际工作中使工作效率提高很多,安全性、可扩展性方面发挥到了极致 | 对于测试需求、测试用例等都没有提供直接的方式进行管理。 |
6 | Gitlab | 免费 | 是 | 跟项目绑定,特别方便管理bug,随时assign给相关开发,也可以看到开发提交bug时的Commits,每次发版可以对照相关提交,既方便测试,也可以在出现问题时找到对应开发。 | 搭建Gitlab过程比较复杂 |
表2:基于Bugzilla 的缺陷分析理解
缺陷信息 | BugID(503619) | BugID(481796) | BugID(12331) | BugID(513334) |
Product(软件产品) | JDT | JDT | Platform | JDT |
Component(模块名) | Core | Core | UI | Debug |
Version(版本号) | 4.6 | 4.5 | 1.0 | 4.7 |
Hardware(运行平台) | PC Linux | All All | PC Windows NT | PC Windows 7 |
Importance(严重性) | P3 normal | P1 enhancement with 10 votes | P3 normal | P3 normal with 2 votes |
Status(缺陷所处状态) | RESOLVED FIXED | RESOLVED FIXED | RESOLVED WONTFIX | ASSIGNED |
Assignee(指定缺陷修复人员) | Stefan Xenos | Stefan Xenos | Nick Edgar | JDT-Debug-Inbox |
Depends on(上游缺陷) |
481796 | 497119 490010 491461 491558 492488 492504 492506 492941 495557 495817 496044 496129 496142 497044 497168 497355 497518 497996 498658 498730 499122 499256 499391 499472 499635 499708 500006 500095 500234 500362 500365 500462 500467 500545 500714 500785 501034 502192 502259 502884 |
无 |
481796 |
Blocks(下游缺陷) | 无 | 84916 351410 495062 496136 497513 513334 503619 | 无 | 无 |
Reported(首先报告缺陷时间) | 2016-10-04 14:29 | 2015-11-09 22:16 | 2002-03-27 03:42 | 2017-03-08 13:32 |
Modified(最后修改缺陷时间) | 2016-10-28 03:11 | 2018-02-06 09:19 | 2002-05-02 12:35 | 2018-11-09 08:15 |
#Comments(评论数量) | 3 | 183 | 8 | 38 |
LifeCycle(缺陷生存期) | 24天 | 28个月 | 37天 | 20个月 |
表3:基于 github 的缺陷管理(issue ID:10450)分析理解
缺陷信息 | IssueID(10450) | IssuelD(12263) | IssuelD(12230) | IssuelD(12207) |
IssuelTitle(标题) | ufunc.__call__ treats out passed by position and keyword differently | hstack/vstack/column_stack no longer accept generators | malloc issue with ployfit | subclasses of np.void can cause a segfault |
Product(软件产品) | numpy | numpy | numpy | numpy |
Component(模块名) | numpy.core | numpy.core | numpy.core | numpy.core |
Reporter(缺陷报告人) | eric-wieser | shoyer | astrofrog | eric-wieser |
Opened(首先报告缺陷时间) | 2018-01-22 | 2018-10-26 | 2018-10-21 | 2018-10-18 |
Assignee(指定缺陷修复人) | no | no | no | no |
#participants(参与交流人数) | 3 | 5 | 7 | 1 |
Milestone(里程碑) | no | no | 1.17.0 release | no |
Modified(最后修改缺陷时间) | 2018-04-26 | 2018-10-28 | 2018-11-18 | 2018-10-24 |
Status(缺陷状态) | closed | closed | open | open |
#lifecycle(缺陷生存期) | 94天 | 3天 | 28天 | 7天 |