SCMLife.com

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 3563|回复: 1

[推荐] 使用 Rational Quality Manager 高效管理敏捷项目的测试

[复制链接]
发表于 2012-12-25 18:11:20 | 显示全部楼层 |阅读模式
本帖最后由 技术狂人 于 2012-12-25 18:13 编辑 . P! G; G+ t- _4 \8 _! S3 w

, s. N1 b, \2 Y9 K
背景
Rational Quality Manager(RQM)是一款基于 Web 的集成化测试管理工具。它已经可以完全的取代 IBM Rational Manual Tester(RMT)和 IBM Rational ClearQuest Test Manager(CQTM)成为很多项目组的首选测试管理软件。近年来越来越多的项目开始使用敏捷开发模式(Agile),怎样使用 RQM 高效的管理敏捷项目成为很多测试项目组急需要解决的问题。幸运的是,RQM 针对敏捷迭代的特性提供了强大的支持。但是如果没有正确的利用 RQM 提供的功能,可能会使项目处于进退两难的境地。本文结合作者 2 年的 RQM 使用经验,介绍了如何使用 RQM 在敏捷项目中高效的进行测试管理。
( M/ Y7 {& ^  `1 x/ d3 {
$ d: m4 b% F# r, M- ~

1 m8 q% y1 c) L& c9 R7 b- f, |* ~  O
RQM 简介
RQM 是基于 Jazz 平台的集成化测试管理工具。用户可以通过 Web 访问。与胖客户端的测试管理软件相比具有更高的可用能和灵活性。RQM 集成了 Jazz 平台的很多特性,能够为各种规模的测试项目组提供全生命周期的测试管理支持。RQM 中可以管理的资源实体(Artifact)包括项目,测试计划,测试需求,测试用例,测试脚本,测试执行记录,测试结果等。
' e+ J# x& C; n1 b
" x/ m$ h) S  B& S& f图 1. RQM 中各资源实体的关系! H. \) U# o) H: ~1 t/ s' k) d
! x0 C, |" g0 J  w
  • 测试计划(Test Plan):一个项目可以包含多了测试计划。测试计划可以按照测试种类划分,例如功能测试,系统测试,性能测试等。
  • 测试需求(Test Requirement):测试需求可以对应多个测试计划和测试用例。测试需求可以对应于敏捷开发模式中的用户故事(User Story)。这样可以把测试计划和测试用例与用户故事关联起来,便于管理。
  • 测试用例(Test Case):测试人员进行测试的核心资源实体。
  • 测试脚本(Test Script):具体的测试步骤。依附于测试用例。一个测试用例可以关联多个测试脚本。
  • 测试执行记录(Test Execution Record):基于测试用例,测试环境,测试阶段,测试人员创建而成。用于记录测试结果。
  • 测试结果(Test Result):记录测试脚本每一步的测试结果。一个测试执行记录可以关联多个测试结果。最后一次测试结果将作为测试执行记录的最终结果。* K" S; K: U8 A5 k% V5 J

+ z- L- f* ]4 ]8 z. n# e

. s" w0 F, @% M1 a
创建项目
敏捷开发模式的一个突出特点是迭代。整个开发周期会被分为若干个阶段(sprint)。每个 sprint 会在上一个 sprint 的基础上开发扩展用户需求。对于测试来说,在每个 sprint 除了要对新功能进行测试,大多还需要对旧的功能进行回归测试。这就需要重用旧的测试用例。为了减少测试用例在多个项目之间频繁迁移,在敏捷开发模式下,建议为每一个产品版本建立一个项目而不是 sprint。
2 r: q: [( {1 `0 f6 e6 m- G: J另外,RQM 中所有的资源实体(Artifact)都是在项目中进行管理。在创建项目时要充分考虑到项目的规模。如果项目创建的太小,会经常涉及到项目中的实体资源在多个项目之间进行迁移。如果项目创建的太大,一个项目中的资源实体过多,会影响使用及管理的效率。8 {' O: s$ ^: q) r: f( A1 v: X
RQM 管理员可以在项目管理面板(Jazz Project Administration)中创建项目。在创建项目的过程中可以进行项目模板选择,添加用户等操作。当然管理员也可以随时对其进行修改。
* h( M$ }& y3 e) C4 Y" V; I
1 x" L+ w- F$ S9 e( J
* t* A( c6 ?/ e& z2 O
创建测试计划
在创建完项目之后,需要创建测试计划。测试计划是 RQM 中资源实体管理的核心。测试计划中包括测试需求,测试阶段,测试用例等资源实体。各个项目组需要按照测试计划完成测试。在敏捷项目中,建议为每一种测试类型建立一个测试计划。而在每个测试计划中,对各个 sprint 的测试内容分别进行管理。这样,既能在逻辑上对不同的测试类型分别进行管理,又能在不同的测试计划之间共享资源实体,节约测试资源。
4 m' g, Z+ y) ?7 }5 H: m+ Q( Z) b/ q  U9 i3 S: z$ g0 f  g$ F' t" x- e+ F
图 2. 测试计划列表
8 k' }6 r. k8 U) [5 j# t   P" k, U( Q; b# F
  • 为每一种测试类型建立一个测试计划。图 2 中分别为 FVT、SVT、GVT、PVT 创建测试计划。
  • 各个测试计划可以共用测试需求,测试用例。
    + q3 r  d! W2 T6 {9 i' z
在创建测试计划时,需要选择测试计划模板。用户可以根据项目的需求定制模板。. R- W! `6 G1 O# J# B/ B6 A
# [; C: R2 k6 L- q9 l) W! t( o
图 3. 创建测试计划模板! s0 Z# b7 e! S$ G  q' R! f

" Z5 t0 i+ `, M$ ~8 K7 T; N
  • 测试需求(Requirements):管理该测试计划所需要满足的测试需求。
  • 测试用例(Test Cases):该测试计划所需要完成的所有测试用例。
  • 测试阶段(Test Schedule ):用于列举测试计划中所包括的所有测试阶段(Sprint)。在敏捷项目中起着关键作用。本文后续将做详细介绍。
  • 进入标准(Entry Criteria):列举开始该测试计划的系列标准。用户可以选择及修改预设标准,也可定制更适合特定项目的标准。
  • 退出标准(Exit Criteria):列举退出该测试计划的系列标准。用户可以选择及修改预设标准,也可定制更适合特定项目的标准。
  • 测试环境(Test Environment):定义测试阶段需要覆盖的所有测试环境。在创建测试执行记录时,可以根据需要选择定义测试环境。
  • 审查(Formal Review):RQM 提供完善的审查流程。
  • 定制部分(Custom section):用户可以根据项目需要添加定制部分。定制部分可以是多格式文本或表格形式。
    ; \- M2 t7 J1 q2 g* [
以上列举了在敏捷项目中推荐的测试计划模板内容。当然,用户可以根据项目的需要进行添加和删减。
( d; ^) Q: T7 m5 ?% B; {7 [! ]; E) f. H( c
图 4. 测试阶段定义+ ]8 C, R* W! r% n. k9 G7 s) O7 E
) u* J! o4 u( }$ m* S* i* |& x" Y
  • 为每一个 sprint 创建一条记录,包括测试阶段的开始和结束时间,计划的点数(Points),预期的缺陷数目(Defect )等。
  • 在创建测试执行记录时,需要选择测试阶段。这样,可以实现在一个测试计划中,基于一个测试用例创建多条测试记录,并在不同的测试阶段执行。测试用例可以在不同测试阶段重复使用。
  • 建议在每个测试计划中为回归测试(Regression Test)创建一条记录,并基于其创建测试执行记录。这样,使用者不需要为回归测试复制测试用例。对于具有上千测试用例的项目来说,大大节省了测试资源。# f2 R+ ]$ @! I! M) u( u6 {


4 v* P7 y4 C! w% Y3 i9 M' \* B! n$ d- V
创建测试用例及用例分类
测试用例是测试人员进行测试的核心资源实体。每个测试用例可以关联一个或多个测试脚本。测试脚本用来记录具体的测试步骤。建议创建测试脚本而不是把测试步骤记录在测试用例里。这样,在执行测试执行记录时,可以按步骤记录详细的执行结果,节省了手工记录执行结果的时间。
5 D+ Q; r8 L2 @很多项目的测试用例的数量很大,有些已经达到万级。我们需要能够有效的管理这些测试用例,快速的筛选出需要的测试用例。" Y; [  L* m$ P5 {/ Z2 C

. q; G7 i9 T, ~5 {1 M" F图 5. 测试用例分类
5 j/ V6 ?1 m9 n; v8 A
8 N, t% D/ k  W: G  g# K6 }+ dRQM 可以对测试用例进行分类管理。用户可以根据项目自身的特点,对分类进行定制。图 5 中,我们通过自动化(Automation)、类别(Category)、功能(Function)、测试阶段(Test Phase)等对测试用例进行分类。
7 c7 j. E" g0 n& _3 S
% n3 S$ Y; h# D& y% P图 6. 测试用例筛选
) R! A! l/ p0 u; P( @/ w- ]6 x7 r! l' g% I
在测试用例页面,可以根据分类对测试用例进行筛选。9 a4 Q& O" \1 n+ ]* x& r! T) A; x& S


+ X. c& u2 P8 A- H7 X% y9 M* N* i
  U7 d1 x8 R# _, B' h
创建测试执行记录及执行
测试执行记录是测试者最终使用并记录测试结果的资源实体。" N8 [1 \8 H- z* N! h

$ H% [' L$ f$ O: C图 7. 创建测试执行记录7 c. e* U& @  S7 a% c3 j
  q4 F1 ]1 p- _
  • 测试执行记录基于测试用例,测试环境,测试阶段和测试者进行创建。
  • 可以同时为多个测试阶段,测试环境创建多个测试执行记录。
  • 建议使用测试计划中定义的测试环境(Reuse Existing Test Environment),比避免产生大量重复的测试环境。  L9 E7 k$ Z: o7 N9 v( Z
) d4 Y+ ]$ b. D. n
图 8. 执行测试执行记录- Y" E8 @! X: d6 _5 x: e

& h; |% _% @+ J- I
  • 在执行过程中可以逐步标记执行结果,并添加注释。
  • 如果项目通过 RQM 管理缺陷,或与 Rational Clear Quest、Rational Team Concert 整合管理来管理缺陷,可以实现在执行中创建或添加 defect。
  • 测试者可以多次执行测试记录。最后一次的测试结果将作为测试执行记录的最终结果。每次测试结果都会被保存以供后续查询。
    4 F! B5 X; g% T- R! o% }


+ S8 [9 c" y7 G9 O- X* u1 l* p- P  D* f0 d$ y1 _2 x4 T& Z# E
监控项目进度
敏捷开发模式的各个 sprint 周期较短,一般在 4~6 周。这就要求管理者及时监控项目状态,发现解决问题,以保证项目能够及时退出本 sprint,进入下个 sprint。RQM 提供了多种报告模板,可以对 RQM 中所有的资源实体进行监控,能够满足大多数项目的要求。RQM 提供的报告模板包括:  Q2 b* h' S+ {' Y
  • 缺陷列表,状态,缺陷报告和解决趋势
  • 测试执行进度
  • 测试结果统计
  • 测试需求覆盖
    & S; `" S( C# b( A) X
以一个 sprint 周期为例。) M* f+ j  y- j6 k+ g, ~
  • 在测试计划中,可以预估每天需要完成的测试点数。使用模板“执行趋势”(Execute trend)可以比较出实际测试趋势与计划测试趋势的区别,从而评估项目可能发生的风险,及时执行风险应对计划。
  • 使用模板“测试者 TER 执行状态”(Execution Status by Owner using TER Count)监控每一个测试者在该 sprint 的工作完成情况。通过监控,可以帮助协调测试资源,以按时完成整个测试计划。
  • 使用模板“TER 执行状态”(Execution Status using TER Count)监控整个项目在该 sprint 的测试执行情况。通过监控可以帮助管理者实时的在整体上把握项目的进度。
  • 如果使用 RQM 管理缺陷,模板“缺陷报告和解决趋势”(Defects arrival and resolution)可以帮助按时间段(天 / 周 / 月)统计缺陷的报告和解决情况。管理者可以通过该趋势评估产品的质量,以及未来可能出现的质量风险。
    , [2 z* Q$ e1 J- [; y
除了 RQM 提供的报告模板,RQM 还可以与 Rational Common Reporting 整合提供更强大的报告功能。4 v& {2 [$ e! a8 K1 n

5 G- ?4 R+ n  i3 z0 M9 q
9 t; j  f8 O- h$ G3 r
小结
本文介绍了如何在敏捷项目中使用 RQM 进行测试管理。内容包括项目的规模,测试计划的创建,测试用例的分类,测试执行,项目监控,数据复制等。除此之外,RQM 还提供很多其他功能,如与自动化测试工具的整合,缺陷管理,实验室资源管理等。读者可以在使用中不断学习,加以利用。6 m6 ~5 n* `9 c# m, I

# W/ N6 ?5 J, `# |3 s; g+ E7 }

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
 楼主| 发表于 2012-12-25 18:12:37 | 显示全部楼层
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

SCMLife推荐上一条 /5 下一条

QQ|小黑屋|手机版|无图版|SCMLife.com ( 京ICP备06056490号-1 )

GMT+8, 2020-8-5 15:39 , Processed in 0.071081 second(s), 9 queries , Gzip On, MemCache On.

Powered by SCMLife X3.4 Licensed

© 2001-2017 JoyShare.

快速回复 返回顶部 返回列表