基于RFT和STAF进行的无需人工干预的跨平台自动化回归测试

发表于:2011-7-18 13:12

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

 作者:古力    来源:51Testing软件测试网采编

分享:

  通过 STAF 的 EMAIL 服务,可以将测试结果以邮件形式通知测试人员

  图 4 描述了无需人工干预的自动回归测试的流程:

图 4. 无需人工干预的自动回归测试流程

  4. 多平台并发

  4.1 多平台(Windows、Vista、Linux)

  在回归测试的过程里,只有安装产品和执行测试脚本两部分与操作系统有关,而 RFT 和 STAF 都是跨平台的,所以很容易扩展到多平台。我们需要做的仅仅是在 RFT 和 STAX 脚本里,利用条件判断语句,对不同的操作系统做不同的处理。

  示例代码 6. RFT 脚本中的平台判断

if(RationalTestScript.getOperatingSystem().isWindows()){
callScript(new testcases_for_win());
}else{
callScript(new testcases_for_linux());
}

  RFT 脚本有很多种判断平台的方法,示例代码只是其中的一种。当测试用例本身针对不同的平台,有比较大的差别时,除了可以在脚本内部根据不同的平台,灵活运动用不同的函数以外,也可以直接将一个脚本,分成针对不同平台的多个脚本,在另外的脚本中,统一调用。

  示例代码 7. STAX 脚本中的平台判断

<if expr="Platform == 'Windows'">
   ...
<else>
   ......
</else>
</if>

  同理,STAX 脚本的部分,如果根据不同的平台有所不同,也需要在脚本中区别操作系统,而后分别对待。

  4.2 并发

  STAX 不但可以顺序执行任务,还可以并发任务。通过并发任务,可以更好的利用资源,节约时间,提高效率。

  示例代码 8. 并发任务

<! — Run install and test product function in parallel -->
<paralleliterate var="vmIP" in="vmInfoIp">
<sequence>
<script>vmInfoImage = vmInfo[vmIP]</script>
<call function="'installandtestProduct'">
vmIP,buildPath,installPath,installConfiguration
</call>
<script>callRC = STAXResult</script>
<if expr="callRC != 0">
<throw exception="'eTerminateFunction'">
'Failed to install and test product'
</throw>
</if>
</sequence>
</paralleliterate>

  利用 STAX 提供的元素 parallel 和 paralleliterate,可以很容易实现同一系列任务在多台目标机上的并发执行。例如示例代码中原本针对一个目标机执行的安装和测试函数,通过 paralleliterate 即可变成同时在目标机列表中的所有目标机上同时执行,极大的节约了总体执行的时间,提高了执行的效率。

  5. 结论

  更加系统和全面的自动化回归测试,无疑是回归测试未来发展的一个必然趋势。本文是作者根据自动化回归测试的实际经验积累和总结而成。伴随着自动化测试的自动化程度展开的同时,介绍了几种主流的自动化测试工具的使用经验。希望能对正在实现和准备实现自动化回归测试的同仁有所帮助。

  免责声明

  本文仅代表作者本人观点

55/5<12345
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号