敏捷测试的思考和新发展
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
变化 。
有 比较 多的争议 。我 看到一位 作者 写道 :组 里 敏 捷 测试 :测 试 人 员 和 头T DD说 了3 ,据我所 知 ,看完 两本 T 年 DD名
举一个例子 ,
测试 i在 著 ,并 坚持写 单元测试 的人 只有 我一 个 ( 组 我
T 们 从 传统 开 发 方 法 转 向敏 捷 方 法 , 由于 开 发 越来越 多 的人关 注A DD,即验收 测试驱 动开
人员 掌握 了测 试驱动开 发 ( DD,T s Dr e 发 ( c e tn eT s Dr e v lp n ) 。 T et i n v A cpa c et i nDe eo me t v De eo me t v lp n ),而测 试人员 部分 地实 现 了验 从2 0 年 开始 ,人们逐 渐实 践T D,而A DD 03 D T
_发布了sr c哪流程漠板M日 t iSn a, u 词S d m 0 uo c 1; ・支持 “ 测试优先”的开发 ,支:A DD;  ̄ T -T DD的插件T s r e. T et i nNE 。 Dv
在过去一年中,敏捷测试的自动化又发生
了哪些变 化 ?如何重构 自动化 测试脚 本 以提高
入A i ,2 1年显示 1个 结果 ,而2 l年 显示 多数项 目很 紧张 ,不 可能给程 序员 足够时 间去 g e 0O l 0 01
1 个结果 ,有一 个很大 的增长 ,说 明敏捷 测试 实施T D,程序 员对实现有 极大 兴趣 ,而对 测 7 D 越来 越引起 大家 的关注 。这 只是一 个表面 的现 试缺乏 兴趣 ,多数程 序员也不 愿意 或不会 主动 D o这样 ,T DD实践还存 在较大 困难 , 象 ,我们 还需要真 正 了解 发生 了哪些实质性 的 去做T D
验证 已有功能是否正常运行 ,需要 良好的系统 创 建 可 复用 的 自动 化 测 试脚 本 ,并 结 合 测试
性和 很高的覆 盖率 ,确保发 布产品 的质 量 ,而 领 域特定 语言 ( S )实 现 自动 化测试 。无论 DL 且 回归 测试是 不断重复 的 ,在极 有 限的时间 内 是Ro oF a wok b trme r ,还是 T s,它 们都 支持 wit
高潮 ,人们觉得 有更多 成熟的探 索方法 可 以使 用于 多种接 口的复杂软 件 ( 用户接 口、命 令 如 用 ,例如 :
行 、We evc 、编程 接 口等 ) 的测试 。适 bS rie
但 探 索 式测 试 缺 乏 良好 的 系统 性 、复 用 合敏捷测试 的框架还有T o g t rsMige+ h u hwok n l 性 ,而且 有些探索 执行最 终被证 明是没有 价值 C us rie+T s,它 能帮助测试人 员和开发人员 wi t
SaE s 2 1上有 一个 演讲_ t at 0 r 1
m etg 里有 开发人员 1名 )。 Tsn . i 5
为 了解 决 T DD实 施 不 力 ,在 过 去 一 年 ,
Ale eFrtYa,Wh t x?其 中提 到 ,我 t t i er rh s a'Ne t s
一卖点测试法 _地标测试法 -极限测试法
-深巷测试法 -强迫症测试法 _通宵测试法
- 破坏 测试法
续集成 、缺 陷管理系统 等整个 开发环境 集成 。 作 为敏捷 测试 的 自动化 框架 ,一 般会选 择轻量
型 、开放 类型的 框架 。说 到这种 类型 的框 架 ,
可 以参考Ro oF a wok (t :c d .o ge b t rme r ht / o eg o l. p/
以看成 : 新 功 能的 ( 动 )探 索式测 试 + 脚 本化 手
( 于测 试 用例 的 ) 自动 回归 测 试 基
样的组合框架 。 敏 捷测试 工具很 多 ,但对 敏捷 测试来说 ,
我们 更要 关注能够 适应A D 或B D T D D 的测试 工
具 , ̄ C cmb r S e 、NB h v C e ae/ I u u e、R p c I ea e/ B hv J h v 、E sB、J v 等 。也可 以结合先 前 Be a e ay Da e
产 出投入 比 ( OI R )?下面就 简单 讨论一 下敏
敏捷测试管理
基于 敏捷 测试的管 理 ,更 多体现 了基于 需
高投入 产出 比。
多 ,概 念 的界 限就 难 以确 定 ,B DD可 以看成
A DD的延伸 ,只是B T DD更 强调用 户 的视 角 、
T D 向A D D T D、B D转化 ? D
用户 的行为 ,为A DD注入 了 “ ie ,Whn T G vn e,
T e”这 样特定的需求描述语言 。20年 , D hn 09 B D 以前人们 谈到敏捷 方法 ,就 会谈到 T D D 或 创始人在伦敦发表 的 “ 敏捷规格、B D D 和极 限测
敏捷测试 的思考和新发展
文 , 少民 朱
DD方 法 呢 ? T DD是 一 个 纠 结 的 问 题 。 一 方 2 1 年为 程序 员 杂志 写了一篇 敏捷 T 00
测试 的方 法和实 践》 ,我 们可 以回过头来 ,看 面 ,T DD的确 是一个好 东西 ,先 写测试用 例 、
收测试 和 回归 测试 的 自动化 ,所 以我们活 下来 是 在2 0 年L seKok l写 了一本 书 《 0 7 as sea 测试驱
了 ,但 我们在 接下来 深入 实施 敏捷测试 时 ,还 动 :Jv 开 发人员 的T aa DD和A DD ̄ ,才开始 T
会面临新 的挑 战 ,甚 至要克服 更大 的困难 。当 引起 大 家 的更 多关 注 。从 那 时算 起 也有 四年 测 试人员 有 了一 年的经验 ,并拥有 了敏 捷方法 了 ,但在 国 内,则是最近 一两年 的事 。当然 ,
这 一点 比较容易 理解 ,每 个迭 代 ( srm中 如 cu 的 ,因为在其 2 1 版本 中,增 强 了对敏捷测试 00 的Sr t pi )都在增 加新的功能 ,而迭代周期 的时 的支持 ,包括 : n
间相对固定,随着时间的推移 ,已实现的功能
越 来越 多 ,这就要 求越 来越多 的回归测试 在 时 间相 对 固定 的周期 内完成 。如果 没有 自动 化测 试 ,这是不可能完成的任务。
系 ,可以用 图1 来描述。
接 着 ,BDD ( 为 驱 动 开 发 ,Be a ir 行 h vo
将 “ 益 (en 精 L a )方法 ”用于改进 敏捷测试 的 Dr e v l me t i nDe e p n)也开始 大行其道 ,那B v o DD
绩效 ,以及重 构 自动 化测试 的设计 或脚本 以提 是不是 “ 得 比较 好的T D 做 D ”呢?概 念越来 越
完成 越 来 越 多 的 测试 任 务 ,这需 要 自动化 执 S lnu 20 ee im .,这 也反映 了S lnu ee im在 敏捷 自动
行 、高 效率执行 回归测 试。 而这 一切 ,依赖于 化 测 试 中 的 重 要 地 位 。 当 然 ,敏 捷 测 试 也 可 以
相 对稳定 的测试用 例 。概 括起来 ,敏捷 测试 可 采用类似S l i 2O e nu . e m +We D ie + uho et[ b r r P stT s  ̄ v N
熟 悉 的 测 试 工 具 开 展 工 作 ,例 如 用 自 己熟 悉 的
敏 捷 测 试 的 自动 化
没 有 自动 化 ,就 没有持 续集成 ,也就没 有 Wa N来结合 S eFo 完 成B 模 式的 自动化 t i p c lw DD 敏 捷 。在敏捷 测试 中 自动化 测试就更 加迫切 , 测试 。采用 传统 的微软Vi a Su i 也是可 以 s l tdo u
cm// b t a wok) 。在 最 近 一 年 ,其 版 本 o pr of me r/ o r
一收藏 家测试法
・超模 测试法
_配角测试法
・取 消 测 试 法
一混票测试法
发布 比较频繁 ,也 日渐成熟 。Ro oF a wok b trme r
是基 于P to 开 发的 、可扩展 的框架 ,所 以适 yh n
看过 去 的一年 ,敏 捷测试 发生 了哪些变化 首 后 写代码 ,保证程 序员第 一次就 把代码 写对 ,
先 ,我做 了一 个实验 ,分别打 开2 1年和2 1 也彻底 解决 了代码 的可测试 性 问题 ,在代 码层 00 0 1
年的 “ T R A TC ne n e t . l c” ,输 次上 把缺 陷的预 防做 到淋漓 尽致 。另一方 面 , S A E S ofr c . Ga e e aa n
的。而我 们关注有 价值 的探 索式测 试 ,将它 们 敏 捷项 目管理和 协 同工作 、持 续集成 、测试 自
记录 下来 ,使 之成 为固定 的测试用例 ,用于 将 动 化 ,允 许使 用 B DD开 发模 式 和Gr o y o v 动态 来的 ( 后继 的迭代周 期 )回归测试 。回归测试 语 言来编 写测试脚 本 ,包 括手动 和 自动方 式来
这一过程 。
捷自 动化测试框架和敏捷测试工具等 内容 。
敏 捷测试对 测试 工具要 求简单 、实用 ,随
在敏 捷 测试 中 ,当 我 们 没 有 清 晰 的可 参
照 文档 、没有机会 创建测试 ,我们 自然会 采用 时可 用 ,而对敏 捷测 试来说 ,自动化 测试 框架
探索 式测试 。在Jme Wht k r的 探索式 更为 重要 ,它将负 责集成各 种测试工 具 ,包括 a s A. ia e t 软件 测试 出版之 后 ,探索 式测试 再次被推 向 单元 测试工具 和验 收测试工 具等 ,还 负责 与持
U D ( nt D T D U iT D),但是究竟有多少个公司 试交流”中,对B D 出了如下定义 : D 给
在 采用 T DD方法 来 写 代码 ? 而在 采 用T DD开
BD D 是 第 二 代 的 、 由 外 及 内 的 、 基
3 7
发方法 的公 司 中,又有多少程 序员 在全面使 用 于 拉 动 的 ( 1 ) 、 多 方 利 益 相 关 者 的 Pu 1
的价 值观 、原则和 实践之 后 ,我 们还不得 不考 我 们可 以将T DD和A DD结合起 来使用 ,形成 T 虑如 何不 断改进持 续的发布 、如何 有效地 管理
一
种混 合的 方法模 型 。T DD和A DD之 间的 关 T
技术 债务 、如 何对 客户的需 求有更 好的理解 , 这就 要求我 们掌握 更深的敏 捷测试 技术 ,例 如
有 比较 多的争议 。我 看到一位 作者 写道 :组 里 敏 捷 测试 :测 试 人 员 和 头T DD说 了3 ,据我所 知 ,看完 两本 T 年 DD名
举一个例子 ,
测试 i在 著 ,并 坚持写 单元测试 的人 只有 我一 个 ( 组 我
T 们 从 传统 开 发 方 法 转 向敏 捷 方 法 , 由于 开 发 越来越 多 的人关 注A DD,即验收 测试驱 动开
人员 掌握 了测 试驱动开 发 ( DD,T s Dr e 发 ( c e tn eT s Dr e v lp n ) 。 T et i n v A cpa c et i nDe eo me t v De eo me t v lp n ),而测 试人员 部分 地实 现 了验 从2 0 年 开始 ,人们逐 渐实 践T D,而A DD 03 D T
_发布了sr c哪流程漠板M日 t iSn a, u 词S d m 0 uo c 1; ・支持 “ 测试优先”的开发 ,支:A DD;  ̄ T -T DD的插件T s r e. T et i nNE 。 Dv
在过去一年中,敏捷测试的自动化又发生
了哪些变 化 ?如何重构 自动化 测试脚 本 以提高
入A i ,2 1年显示 1个 结果 ,而2 l年 显示 多数项 目很 紧张 ,不 可能给程 序员 足够时 间去 g e 0O l 0 01
1 个结果 ,有一 个很大 的增长 ,说 明敏捷 测试 实施T D,程序 员对实现有 极大 兴趣 ,而对 测 7 D 越来 越引起 大家 的关注 。这 只是一 个表面 的现 试缺乏 兴趣 ,多数程 序员也不 愿意 或不会 主动 D o这样 ,T DD实践还存 在较大 困难 , 象 ,我们 还需要真 正 了解 发生 了哪些实质性 的 去做T D
验证 已有功能是否正常运行 ,需要 良好的系统 创 建 可 复用 的 自动 化 测 试脚 本 ,并 结 合 测试
性和 很高的覆 盖率 ,确保发 布产品 的质 量 ,而 领 域特定 语言 ( S )实 现 自动 化测试 。无论 DL 且 回归 测试是 不断重复 的 ,在极 有 限的时间 内 是Ro oF a wok b trme r ,还是 T s,它 们都 支持 wit
高潮 ,人们觉得 有更多 成熟的探 索方法 可 以使 用于 多种接 口的复杂软 件 ( 用户接 口、命 令 如 用 ,例如 :
行 、We evc 、编程 接 口等 ) 的测试 。适 bS rie
但 探 索 式测 试 缺 乏 良好 的 系统 性 、复 用 合敏捷测试 的框架还有T o g t rsMige+ h u hwok n l 性 ,而且 有些探索 执行最 终被证 明是没有 价值 C us rie+T s,它 能帮助测试人 员和开发人员 wi t
SaE s 2 1上有 一个 演讲_ t at 0 r 1
m etg 里有 开发人员 1名 )。 Tsn . i 5
为 了解 决 T DD实 施 不 力 ,在 过 去 一 年 ,
Ale eFrtYa,Wh t x?其 中提 到 ,我 t t i er rh s a'Ne t s
一卖点测试法 _地标测试法 -极限测试法
-深巷测试法 -强迫症测试法 _通宵测试法
- 破坏 测试法
续集成 、缺 陷管理系统 等整个 开发环境 集成 。 作 为敏捷 测试 的 自动化 框架 ,一 般会选 择轻量
型 、开放 类型的 框架 。说 到这种 类型 的框 架 ,
可 以参考Ro oF a wok (t :c d .o ge b t rme r ht / o eg o l. p/
以看成 : 新 功 能的 ( 动 )探 索式测 试 + 脚 本化 手
( 于测 试 用例 的 ) 自动 回归 测 试 基
样的组合框架 。 敏 捷测试 工具很 多 ,但对 敏捷 测试来说 ,
我们 更要 关注能够 适应A D 或B D T D D 的测试 工
具 , ̄ C cmb r S e 、NB h v C e ae/ I u u e、R p c I ea e/ B hv J h v 、E sB、J v 等 。也可 以结合先 前 Be a e ay Da e
产 出投入 比 ( OI R )?下面就 简单 讨论一 下敏
敏捷测试管理
基于 敏捷 测试的管 理 ,更 多体现 了基于 需
高投入 产出 比。
多 ,概 念 的界 限就 难 以确 定 ,B DD可 以看成
A DD的延伸 ,只是B T DD更 强调用 户 的视 角 、
T D 向A D D T D、B D转化 ? D
用户 的行为 ,为A DD注入 了 “ ie ,Whn T G vn e,
T e”这 样特定的需求描述语言 。20年 , D hn 09 B D 以前人们 谈到敏捷 方法 ,就 会谈到 T D D 或 创始人在伦敦发表 的 “ 敏捷规格、B D D 和极 限测
敏捷测试 的思考和新发展
文 , 少民 朱
DD方 法 呢 ? T DD是 一 个 纠 结 的 问 题 。 一 方 2 1 年为 程序 员 杂志 写了一篇 敏捷 T 00
测试 的方 法和实 践》 ,我 们可 以回过头来 ,看 面 ,T DD的确 是一个好 东西 ,先 写测试用 例 、
收测试 和 回归 测试 的 自动化 ,所 以我们活 下来 是 在2 0 年L seKok l写 了一本 书 《 0 7 as sea 测试驱
了 ,但 我们在 接下来 深入 实施 敏捷测试 时 ,还 动 :Jv 开 发人员 的T aa DD和A DD ̄ ,才开始 T
会面临新 的挑 战 ,甚 至要克服 更大 的困难 。当 引起 大 家 的更 多关 注 。从 那 时算 起 也有 四年 测 试人员 有 了一 年的经验 ,并拥有 了敏 捷方法 了 ,但在 国 内,则是最近 一两年 的事 。当然 ,
这 一点 比较容易 理解 ,每 个迭 代 ( srm中 如 cu 的 ,因为在其 2 1 版本 中,增 强 了对敏捷测试 00 的Sr t pi )都在增 加新的功能 ,而迭代周期 的时 的支持 ,包括 : n
间相对固定,随着时间的推移 ,已实现的功能
越 来越 多 ,这就要 求越 来越多 的回归测试 在 时 间相 对 固定 的周期 内完成 。如果 没有 自动 化测 试 ,这是不可能完成的任务。
系 ,可以用 图1 来描述。
接 着 ,BDD ( 为 驱 动 开 发 ,Be a ir 行 h vo
将 “ 益 (en 精 L a )方法 ”用于改进 敏捷测试 的 Dr e v l me t i nDe e p n)也开始 大行其道 ,那B v o DD
绩效 ,以及重 构 自动 化测试 的设计 或脚本 以提 是不是 “ 得 比较 好的T D 做 D ”呢?概 念越来 越
完成 越 来 越 多 的 测试 任 务 ,这需 要 自动化 执 S lnu 20 ee im .,这 也反映 了S lnu ee im在 敏捷 自动
行 、高 效率执行 回归测 试。 而这 一切 ,依赖于 化 测 试 中 的 重 要 地 位 。 当 然 ,敏 捷 测 试 也 可 以
相 对稳定 的测试用 例 。概 括起来 ,敏捷 测试 可 采用类似S l i 2O e nu . e m +We D ie + uho et[ b r r P stT s  ̄ v N
熟 悉 的 测 试 工 具 开 展 工 作 ,例 如 用 自 己熟 悉 的
敏 捷 测 试 的 自动 化
没 有 自动 化 ,就 没有持 续集成 ,也就没 有 Wa N来结合 S eFo 完 成B 模 式的 自动化 t i p c lw DD 敏 捷 。在敏捷 测试 中 自动化 测试就更 加迫切 , 测试 。采用 传统 的微软Vi a Su i 也是可 以 s l tdo u
cm// b t a wok) 。在 最 近 一 年 ,其 版 本 o pr of me r/ o r
一收藏 家测试法
・超模 测试法
_配角测试法
・取 消 测 试 法
一混票测试法
发布 比较频繁 ,也 日渐成熟 。Ro oF a wok b trme r
是基 于P to 开 发的 、可扩展 的框架 ,所 以适 yh n
看过 去 的一年 ,敏 捷测试 发生 了哪些变化 首 后 写代码 ,保证程 序员第 一次就 把代码 写对 ,
先 ,我做 了一 个实验 ,分别打 开2 1年和2 1 也彻底 解决 了代码 的可测试 性 问题 ,在代 码层 00 0 1
年的 “ T R A TC ne n e t . l c” ,输 次上 把缺 陷的预 防做 到淋漓 尽致 。另一方 面 , S A E S ofr c . Ga e e aa n
的。而我 们关注有 价值 的探 索式测 试 ,将它 们 敏 捷项 目管理和 协 同工作 、持 续集成 、测试 自
记录 下来 ,使 之成 为固定 的测试用例 ,用于 将 动 化 ,允 许使 用 B DD开 发模 式 和Gr o y o v 动态 来的 ( 后继 的迭代周 期 )回归测试 。回归测试 语 言来编 写测试脚 本 ,包 括手动 和 自动方 式来
这一过程 。
捷自 动化测试框架和敏捷测试工具等 内容 。
敏 捷测试对 测试 工具要 求简单 、实用 ,随
在敏 捷 测试 中 ,当 我 们 没 有 清 晰 的可 参
照 文档 、没有机会 创建测试 ,我们 自然会 采用 时可 用 ,而对敏 捷测 试来说 ,自动化 测试 框架
探索 式测试 。在Jme Wht k r的 探索式 更为 重要 ,它将负 责集成各 种测试工 具 ,包括 a s A. ia e t 软件 测试 出版之 后 ,探索 式测试 再次被推 向 单元 测试工具 和验 收测试工 具等 ,还 负责 与持
U D ( nt D T D U iT D),但是究竟有多少个公司 试交流”中,对B D 出了如下定义 : D 给
在 采用 T DD方法 来 写 代码 ? 而在 采 用T DD开
BD D 是 第 二 代 的 、 由 外 及 内 的 、 基
3 7
发方法 的公 司 中,又有多少程 序员 在全面使 用 于 拉 动 的 ( 1 ) 、 多 方 利 益 相 关 者 的 Pu 1
的价 值观 、原则和 实践之 后 ,我 们还不得 不考 我 们可 以将T DD和A DD结合起 来使用 ,形成 T 虑如 何不 断改进持 续的发布 、如何 有效地 管理
一
种混 合的 方法模 型 。T DD和A DD之 间的 关 T
技术 债务 、如 何对 客户的需 求有更 好的理解 , 这就 要求我 们掌握 更深的敏 捷测试 技术 ,例 如