[你问我来答]:基于STAF的自动化测试平台的搭建?

发表于:2012-2-01 11:41

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:RFTSpecialist    来源:51Testing软件测试论坛

  首先非常感谢大家的支持,51testing给我们大家提供了一个交流的平台,我很愿意把我所知道的和大家进行交流和探讨。下面是大家提问问题的答案:仅代表个人观点,大家可以进行修正和补充。谢谢!

  常用的“自动化测试平台”有哪些?自动化测试平台与自动化测试框架有啥区别呀?

  首先要澄清的是,这两个概念都还没有一个好的定义。但这里大家既然提出了这个问题我就根据个人的见解来解释一下:自动化测试平台是根据自身公司或者部门的流程,将自动化的需求融入上述流程。即搭建一套severice 或者软件平台来专门服务于自动化测试。而自动化测试框架既是我们编写自动化测试脚本的中心思想。比较常见的RFT测试框架包括数据驱动,表驱动,关键字驱动等等。举个简单的例子来方便大家理解这两个概念,假如你所要测试的应用系统非常之大,很多组件放在许多不同的平台下windows XP, windows 2003,UNIX,AIX,Solaris等等在各自的平台下都有着不同的自动化测试脚本来服务于各自的组件,这些脚本使用不同的自动化测试工具如HP QTPIBM RFT,selenium等等来完成,自动化测试框架则重点focus在各平台下的脚本的设计,每种工具每种程序语言都有着各自的测试框架,这些框架要靠你对该语言的熟悉程度来设计和完成。而自动化测试平台则更重点focus在如何使得整个应用程序的自动化测试脚本工作在一起,更加方便的操作。

  不同的公司拥有着不同的自动化测试平台,在IBM内,很多不同的产品项目也拥有着不同的自动化测试平台,据我所知有些项目使用的是RFT与RQM,ClearQuest,Testmanager的组合,而有些使用的是STAF,RFT的组合。HP的工具也能组合成一套自动化测试平台,这要更具不同公司的需求和不同的测试对象的情况来进行设计和搭建。

  想问一下哪些地方可以用到自动化测试工具?自动化测试工具实用的有哪些?

  使用自动化测试工具的地方有很多,大概分两个部分一种是用于自动化测试,一种用于帮助实现一些自动化功能。对于前者而言主要是应用在测试阶段首先要确定你的测试对象适不适合使用自动化测试。这涉及到自动化测试的概念一类的东西。在一般情况下自动化测试会使用在敏捷测试的回归测试阶段,在这个阶段系统的基本功能已经完成,只是根据客户的要求添加或者修改一些功能,在传统的回归测试中,每个release都需要对原来未进行修改的功能的测试用例要手工跑一遍,这些功能没有改变但是为了确保系统新的改进没有影响到原来的功能,因此在每个release发布前对上个release旧的test case都要跑一遍。所以在一个长期的项目中要浪费很多时间和人力来执行这些已经完善的测试用例,在这种情况下自动化测试就变的非常必要而且能大大的节省成本。针对这种类型的产品或项目就可以使用自动化测试,将原来的手工测试用例变成自动化测试脚本,机器代替手工来做这些工作能够大大节省时间,人力物力等等。对于后者是适用对象是针对所有人,只要你懂自动化测试工具,而且你发现你当前的工作室一些重复性的工作都可以使用自动化测试工具将其自动化,例如每天整理类似报表的文员,每天做文件备份的IT人等等。

  自动化测试工具现在已经出现有很多种,业界用的比较多的包括HP QTP,LOAD RUNNER, IBM RFT, RPT,Selenium等等其他还有很多。他们各有其优缺点,不存在实不实用,要看适不适合你或者你的公司。

  基于自动化平台的测试工作如何展开?从事功能测试的员工刚组建成的自动化测试小组,如何快速有效的提示他们的能力?

  我个人建议刚开始的时候不要从搭建自动化测试平台做起,自动化测试平台就像咱们刚开始聊的一样是一个大的suite,最好是慢慢扩大。开始的时候你可以先找到合适的自动化测试工具对你的测试对象进行自动化,然后针对自动化程度来进一步完善直至最后搭建一个适合贵公司的测试平台。就像前面那个例子一样,刚开始的时候你可以针对你所要测的系统组件建立你自己的自动化测试框架脚本,然后进一步扩展到组合所有的自动化测试脚本,来管理他们,更好的服务于整个应用程序。

  不同的情况不同的对待。如果展开测试工作的是已经有搭建测试平台经验的人员,就可以先搭建好平台所有的组件,测试他们之间的连通性一旦连通性都是完善的就可以着手进行自动化测试工作。

  这要看你所谓的自动化测试小组各个成员的基础,如果是每个成员都有一定的编程基础,这个就比较容易,可以根据他们擅长的语言领域选择自动化测试工具,然后对他们进行自动化测试培训。如果小组里面能有一个能力比较好的自动化测试人员来进行架构的设计或者公司已经有一套成熟的自动化测试框架这样就更好了。如果小组里面只有部分人懂得编码,这样可以先对这部分人进行培训,然后试着搭建关键字驱动的测试框架,然后让不懂编码的测试人员加入进来按照规定设计手工用例,或者转化原来的手工用例到指定的模板下以方便进行自动化测试操作。发挥个人所长,选择合适小组的自动化工具和框架。

  请问黑盒测试需要掌握哪些知识!!!求解!!!!

  黑盒测试需要掌握哪些知识,这个是一个非常大的话题,这要取决于你的测试对象了。不同的测试对象,不同的公司对黑盒测试人员的要求也都不一样的。但是按照我一直认为的观点,测试就是吃百家饭的,要学习的东西有很多,换了不同的测试对象你要掌握的测试技术就不同了。如果你测的是通讯,无线,网络一类的产品你就需要懂得一些通信,网络的知识。如果你测的是银行一类的产品就需要你有一定的银行背景,同时对安全的概念很重要。如果测试数据库类型的产品可能你的SQL能力要很强,如果你需要跨平台测试需要你的linux或者其他你所要设计的系统比较熟悉等等。所以这个问题涉及的非常广,我可以给你一些我个人的建议。

  1、作为一个测试人员首先要有扎实的计算机基础知识,这些知识包括,计算机网络,操作系统,数据库等等。

  2、要多读一些测试的书籍了解黑盒测试的方法,例如边界值,等价类等等,要懂得如何设计好测试用例,测试计划等等。

  3、学习一些自动化测试的东西以及性能测试的东西。

  总之要多学习,善于学习不断的提高和丰富自己。

21/212>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号