51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 4194|回复: 1
打印 上一主题 下一主题

[原创] 关键词驱动 to be or not to be?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-7-28 10:36:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
关于关键词驱动,希望听听大家的开发。

首先我抛砖引玉,表明我的观点:我不赞成 关键词驱动 的测试。

套用一句话是:Make everything as simple as possible, but not simpler. -- Albert Einstein

我曾经开发过一个测试框架,试图提供一种能力把测试逻辑用xml的tag表达出来。我做了大量的工作来把测试中的action用tag封装起来,在给team member使用后发现,它并不那么受欢迎。原因是
    1)熟悉tag是一个负担,特别是tag多了以后,
    2)tag的表达能力有限,有些情况不能满足需要。如果要满足需要,甚至需要引入条件判断的tag。后来我想,如果要使用一个<if> tag,为什么不直接使用编程语言呢?

更有甚者,我曾经看到过一个测试框架,它把最简单的用户动作封装为xml tag。开发框架的初衷是 XML描述testcase 提供灵活性。但结果是,往往一个简单的testcase,就导致长长的xml文件。维护xml文件成了问题。

我认为最佳选择是 脚本语言的framework + script. 一门高效易学的脚本语言 + 设计精良的Framework 来写测试脚本是在灵活性和易用性之间的最佳平衡点。脚本语言里面的python, ruby都是上上之选。好的framework提供的API能让script的开发象写关键词一样简单。关键是,同时它还提供了程序设计语言无限的灵活性。

最后还有一点,自动化测试框架用户是谁?是QA Engineer,是专业人士。即使是只做manual testing的 QA Engineer都乐意学习一门脚本语言,因为这对他们自己的提高也有好处。

所以,数据驱动是一个非常棒的测试方法。但要在数据里加上 关键字或者流程控制。。。过犹不及也,且不说实现它需要额外的投入,学习这些越来越多的关键字会让QA失去对他最后的耐性。

[ 本帖最后由 lifr 于 2007-7-28 10:38 编辑 ]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2007-8-20 14:18:49 | 只看该作者
无意看到本文,很感兴趣就来看看。
本人有和LZ不同的意见,我觉得KEYWORD还是有他的优点的,比如数据驱动是对函数级的操作,而数据驱动则是对单个动作的操作,可见灵活性增加了,复用性提高了,开发测试的时间减少了(在关键字驱动的后期)等,当然它也有缺点,比如前期的开发工作量大,技术难度高等。但我想它的优点不管怎样还是胜过缺点的,在国内大部分企业无法实施关键字驱动,不是技术问题,而是环境的问题,国内测试行业没有一个非常规范的标准,实施起来烦琐,有可能将导致成本的提高而非降低。
以上是本人的漏见,如有不足,还请高手指正!
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-25 16:18 , Processed in 0.085298 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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