测试框架

测试框架

什么是测试框架

测试框架是一组自动化测试的规范、测试脚本的基础代码,以及测试思想、惯例的集合。可用于减少冗余代码、提高代码生产率、提高代码重用性和可维护性。测试框架出现的最终目的是花少量的资源来完成尽可能多的测试任务,所以测试框架的建立以及框架的重用性方面是最值得测试人员深入探究的地方。

测试框架的好处

提高开发速度,提升测试代码的执行效率;提高软件代码质量,同时引入重构概念,让代码更干净和富有弹性;提升系统的可信赖度,作为回归测试的一种实现方法支持修复后“再测试”,确保代码的正确性。

测试框架的属性

(1)测试框架是测试开发过程中提取特定领域测试方法共性部分形成的体系结构;

(2)不同测试技术领域有不同的测试框架类型;

(3)测试框架不是一个现成可用的系统,是一个半成品,需要测试工程师基于它结合自己的测试对象知识转化成自己的测试用例;

(4)测试框架不是测试用例集,而是通用的,具有一般性的系统主体部分。

测试框架分类

Java测试框架、.Net测试框架、自动化测试框架、单元测试框架、集成测试框架。常用的包括自动化测试框架和单元测试框架。根据所用开发平台不同,也可使用不同的测试框架展开测试。

自动化测试框架主要分为
1.模块化框架(test script modularity)。

测试脚本模块化框架需要创建能够代表测试下应用程序(application-under-test)的模块,零件(Section)和函数的小的,独立的脚本。然后用一种分级的方式将这些小脚本组成更大的测试,实现一个特定的测试用例。这种框架最容易精通且掌握的。就在一个部件前面构建一个抽象层以掩藏应用程序其他的部件方面,它是一个很著名的编程策略。它把应用程序从在部件的修改中隔离开来并规定了在应用程序设计中的模块性。为了提高自动化测试套件(test suite)的可维护性和可测量性,测试脚本模块化框架应用了抽象或封装的原则。
2.函数库结构框架(test library architecture)。

测试库构架框架和测试脚本模块化框架非常相似,有着同样的优势,但是它把测试下的应用程序分成过程和函数,而不是脚本。这种框架要求创建代表测试下应用程序模块,零件和函数的库文件(SQABasic libraries, APIs, DLLs等等)。然后这些库文件被测试用例脚本直接调用。
3.关键字驱动测试框架(keyword-driven/table-driven testing)。

关键字驱动和表格驱动测试是一种独立于应用程序的自动化框架,它们是可以互相替换的术语。这种框架要求开发于用来运行的自动化工具,驱动测试下应用程序和数据的测试脚本代码相独立的数据表和关键字。关键字驱动测试看上去非常象手工测试。在关键字测试里,应用程序的功能特性被写在表格和每个测试的详细指引里了。
4.数据驱动测试框架(data-driven testing)。

数据驱动测试是测试从数据文件(数据池,ODBC源,cvs文件,Excel文件,DAO对象等)中读取输入和输出数值并载入到捕获的或手工编码的脚本中变量里的一种框架。在这种框架里,输入数值和输出验证数值都使用变量。在测试脚本中编写贯穿程序的导航,数据文件的读取,记录测试状态和信息的日志的代码。

测试用例包含在数据文件里而不是在脚本里的方面上,这种框架和表格驱动测试有些相似;脚本只是一种“驱动器”(driver)或传送数据的机制。尽管导航的数据不包含在表结构中,但和表格驱动测试还是不同的。在数据驱动测试里,只有测试数据包含在数据文件中。

5.混合型框架(hybrid test automation)。

最常见的已实现的框架是上述技术的组合,抽取它们的优点,剔除其弱点。这种混合的测试自动化框架是发展时间较长且应用项目最多的框架。

 

posted @ 2015-03-28 15:15  杨杨&  阅读(1638)  评论(0编辑  收藏  举报