课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
随着互联网的不断发展,越来越多的互联网企业都开始使用自动化测试的方法来对软件进行上线之前的问题检测等测试活动。今天,我们就一起来了解一下关于自动化测试的简单基础知识以及测试框架的种类优缺点分析。
什么是自动化测试框架?
假定你有一个活,需要构建许多自动化测试用例来测试这个应用程序。当你对这个应用程序完成自动化测试后,你对自己创建脚本应该有什么期望吗?你难道不想要-
1.脚本应该按照预期的来执行而且没有发生任何问题
2.脚本和流程应该会被很容易的理解
3.脚本是容易维护的
所有以上观点需要一个合适的自动化测试框架才能被实现
一个自动化测试框架是一个规范或者是约束,你需要让测试脚本遵从一些规则来完成上面提到的3点内容,这些规则或者纲要如下,比如
1.指定一些目录结构用来存储对应的测试用例,函数库,对象库和数据表格
2.决定数据表格格式,比如数据表个应该怎么组织,脚本是怎么访问这些数据表格的
3.遵循正确的代码标准,并且要在代码里有备注,以便别人能看懂你的代码
4.尽可能把一些能复用的代码封装成为函数,以便在发生变化的时候只需要修改很少的一部分
在创建测试脚本的时候始终遵循你设置的准则,这样可以创建一个包含所有你曾经有针对性的功能的自动化测试框架
QTP里的线性框架
线性框架是你一步一步在测试流程里写测试脚本。在这样的框架类型中,你不需要创建任何函数,所有的测试步骤都是从上到下线性的顺序来写。假如你有一个测试用例,它是按照Login->Create->Order->Logout的流程来走
线性框架的优势:
1.不需要自动化的专业知识,你只需要录制和回放的方法就能用来创建脚本
2.快速和容易的方式来创建测试脚本
3.由于脚本是按照从上到下的顺序来写的,所以框架流程理解起来比较容易
线性框架的缺点:
1.重用代码的唯一方式是不断的复制和粘贴,从而导致大量冗余的代码
2.由于脚本里数据都是hardcode,同一个测试用例不能被不同的测试数据所驱动
3.由于代码在许多地方都是重复的,所以一旦有地方发生变化就需要修改很多地方
关于QTP的模块框架
模块框架就是把所有的测试用例先要分析下找出可以复用的流程的一个方法。然后把所有可以复用的流程放进函数里封装起来存储在外部文件中,当需要的时候可以在脚本里调用这些函数。
模块框架的优点:
由于复用的函数只需要创建一次,测试脚本就只需要调用所需要的函数,而不需要重新再写一遍函数里的内容,那么创建起来就快一点
由于代码的复用,创建测试用例所花的功夫也会缩短
如果复用的函数里发生任何改变,只需要改变一个地方就会影响到调用它的所有测试用例,因此维护起来也会很容易
模块框架的缺点:
由于脚本里的数据还是hardcode,所以还是不能实现不同的测试数据运行同一个脚本
需要花费额外的时间来分析测试用例识别出那些是可以复用的
创建和维护函数库需要好的编程知识
QTP的数据驱动框架
在数据驱动框架里,测试脚本里的数据不在是hard-code。相反,数据是被存储在一些外部文件里。测试脚本需要先连接到外部数据源,然后从数据源里解析这些数据。大部分时间,我们一般都会使用Excel表格用来存储数据。其它的经常使用的外部数据源是:文本文件,XML文件,数据库以及一个外部文件以上的组合。
数据驱动框架的优点:
由于数据与测试脚本是分离的,可以实现同一个脚本用不同的数据可以运行多次
测试数据的更改不会影响到测试脚本,反之亦然
数据驱动框架的缺点:
连接到数据源并读取里面的数据是需要额外的努力和相关专业的知识
需要用额外的时间来选择使用那种外部数据源,并且要决定外部数据源里的数据应该怎么被存储或是组织
QTP的关键字驱动框架
在关键字驱动框架里,你可以创建一些关键字以及相关联的一些方法和函数。然后你创建一个函数库,它里面包含一个读取关键字的逻辑,然后调用相关的动作。
关键字驱动框架的优点:
关键字和函数库变成完全通用的,因此对于不同的应用可以很容易的被重用
所有复杂的逻辑都添加到函数库里了。一旦库文件被准备好,在Excel表格里写测试脚本将变得很容易
关键字框架的缺点:
需要花很多时间在初始化创建函数库上,关键字驱动框架的优势只有在它被长时间使用的时候才能被充分体现出来
创建复杂的关键字函数库需要很强的编程技术
对于新人想快速理解框架是有点困难
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。