浅析自动化测试框架(一)自动化测试框架是什么?

发表于:2012-1-31 10:37

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

 作者:wxf_xsfy    来源:51Testing软件测试博客

  本文章是一个系列文章,主要的撰写目的是通过该系列文章,让大家对自动化测试框架的概念,类型以及创建有个大概的了解和认识,通过该系列文章,也许无法使人一下子可以构建起自己的框架,但至少希望可以帮助初学者可以在创建测试框架的旅程中踏下坚实的一步。当然由于本人的能力或视野的局限性,在文中有谬论之处,也请读者海涵。另外注意,本系列文章是针对功能测试自动化,而非单元测试性能测试。本系列文章的初步计划编写的目录为:

  1、自动化测试框架是什么

  2、几种自动化框架的介绍

  3、如何构建数据驱动框架

  4、如何构建关键字驱动框架

  5、如何构建混合型测试框架

  自动化测试是什么?大家都很清楚,就是用程序测试程序的过程。那么,自动化测试框架是干什么的呢?维基百科上是这么给出定义的,“测试自动化框架就是支撑自动化测试的一系列假设,概念和工具。”这个概念定义的比较抽象,事实上,我个人认为自动化测试框架的概念并不是唯一的,因为在不同情况下,自动化测试框架的核心组成部分并不一定是固定。

  比如大至整个自动化测试项目的文档,流程规定,约束,工具,小到一个简单的帮助函数都可能被称为自动化测试框架(只是很少有这种情况而已,^_^)。本系列文章依然着重于技术层次上的自动化测试框架,不会设计流程,管理层次上的。

  在我看来,自动化测试框架就像是个容器,一个包括了一系列构件的容器,每个构件包含一系列的约束,规则。我们把符合规则的文件放入各自的构件中,由框架解析文件,并根据预先制定的规则进行自动化测试,然后输出测试结果。如果这个大家还是不理解,没关系,我会在后面具体讲述如何创建框架时来诠释这个概念。

  那为什么一定要创建自动化测试框架呢?它能解决哪些问题?其实构造不同类型的框架,其目的还是存在一定差异性的,但总体说来,构造框架的目的有以下这么几个

  1、类似于开发的框架,构建框架有利于自动化测试的协同开发

  2、框架中编写的公共函数库,可以避免代码的重复编写

  3、框架的不同构件设计,有利于松耦合测试脚本中数据,对象,逻辑之间的依赖关系,利于自动化测试的维护

  4、构建框架有利于多工具的整合使用,有利于跨平台操作,可以初始化测试环境

  5、如果需要分布式执行,那么也可以通过构建框架来处理相关的事务。

  这里不理解也没关系,这些都会在后续的文章中提到。

  其实是否构建自动化测试框架,以及如何构建都是根据实际情况不同而具体分析,但一般情况下,构建自动化测试框架都是在已有的框架或工具上进行二次开发。毕竟现在开源资源这么丰富,实现没有必要再去重新写一个底层处理的工具。比如如果是进行web功能测试,可以有watir,watin,selenium等工具可供选择,进行C/S架构的客户端功能测试可以选择white等,当然如果条件允许,也可以选择商业工具,如QTP,Testcomplete,这些商业工具一般都提供扩展接口,对象接口可供使用。

  本文主要介绍了自动化测试框架的概念,目的,仅希望读者对框架有个初步的概念,在后续的文章中会进一步结合实际来阐述这些概念。

本文出自 wxf_xsfy 的51Testing软件测试博客:http://www.51testing.com/?61753

原创作品,转载时请务必以超链接形式标明本文原始出处、作者信息和本声明,否则将追究法律责任。

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

精彩评论

  • threeg
    2016-11-09 10:16:54

    没说到点子上,如果能给一个实例最好了,

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号