QTP与QC的完美结合实现自动化测试框架-业务组件测试 - 51Testing软件测试网-...

来源:百度文库 编辑:神马文学网 时间:2024/04/27 17:01:53
注:“-”为无相应参数。
在QTP中创建组件脚本有2中模式:Bussiness Component和Scripted Component。区别:Bussiness Component只能见关键字视图,QC中亦可见关键字视图;Scripted Component可以看见专家视图,在QC中脚本代码不可见。一般创建后者,本次也是采用后者,方便编辑脚本,控制脚本结构。
注意:参数一定要合理设置并对代码中的输入项做参数化与参数关联,否则测试数据传不到脚本,导致脚本运行失败。参数可以在QTP中创建,也可以在QC中创建,效果等同。
脚本开发完保存至QC,如图:


至此脚本开发完毕。也实现了脚本和业务层、数据层的脱离,现在单个组件脚本实现业务流程中的某一个功能且脚本中不会涉及具体的测试数据,从而为实现三层结构打下基础。接下来的工作就是在QC中组织需要测试的业务流程以及需要的测试数据。
这里有一个需要注意的地方,就是在QTP创建脚本如果选择Bussiness Component类型,在“设计步骤”选项卡可以看到QTP中的关键字视图,相关人员可以像在QTP操作一样,但是看不到代码。这也是为何上边为何创建脚本组件的原因。
2.5业务流程的组织
业务流程的组织主要是在“测试计划”模块中实现。这的主要工作是由业务测试人员完成。规划好目录结构以后,根据需要测试的业务流程拖拽需要的组件即可。这一步和在“测试计划”中拖拽测试用例很相似,区别就是这个是组合业务流程,而且可以自动执行。组织好后的效果如图:


需要注意的是,创建用例是请选择“BUSINESS-PROCESS”测试类型,否则组件脚本拖拽不过来。拖拽脚本是在“测试脚本”选项卡中进行,如上图。限于篇幅,在此创建目录和拖拽等动作不再详述,请参见QC的用户手册。另外,根据实际的系统,可以把组件分组,以组的形式控制流程。例如,选择如图的2到4的组件,然后选择工具栏叉号旁边的图标,即可把组件分成一组。这样可以更好的控制流程。
至此,所有的业务流程均以实现。可以在QC中选择运行(绿色箭头),进行相关的调试。
这里实现的是三层结构中的业务层。这里进行的业务流程组织和脚本没有任何关系,相关人员不用关心脚本如何实现,只要保证所有的流程均已覆盖即可。
接下来就是要实现数据层的工作了,从而实现三层的测试架构。
2.6测试数据的组织
测试数据的组织也是在“测试计划”模块中实现。选择某一个流程,在“测试脚本”选项卡中右击要设计数据的组件,在弹出窗口中选择“迭代”,弹出组件迭代设置窗口,如图:

在此可以根据测试需求设置组件要迭代的次数,以及每次迭代的参数值。如上图,设置了3次迭代每次迭代输入的订单信息均不相同。同时可以设置输入参数选择上一个组件的输出参数(在复选框中打勾,按提示操作即可),如下图。是流程4中的“打开订单”组件,orderNo参数使用的是“选择航班并插入”组件的输出参数。注意,此流程的“选择航班并插入”设置了三次迭代,所以“打开订单”也要对应三次迭代,否则会提示错误。

在组织数据时,可以在单个组件中设置每次迭代的数据,由于组件的重用次数很多,所以这样做还是有些麻烦。解决方法就是在外部组织好数据后,批量导入。QC默认是txt文本文件,格式可以把现有参数导出,参照它给的格式设计自己数据即可。
至此,数据层的设计也已完毕。同时也实现了测试数据和具体的业务流程相分离。
其实,这里的数据和业务层的分离并不是很彻底,不能根据自己的想法去设计,所以还有很大的改进空间,还需要进一步研究。
通过以上几个步骤,开发工作基本结束。以后就是需要相关的维护即可。当然,最后还是要执行测试。
QTP与QC的完美结合实现自动化测试框架-业务组件测试 - 51Testing软件测试网-... QTP - evergreen_wang - 51Testing软件测试网 - Power... QTP中设置共享对象库 - xiaonan的个人空间 - 51Testing软件测试网 5... 51Testing软件测试网:谈软件测试的心得 QTP中的DataTable操作 - 云层专版 - 51Testing软件测试网 51Te... web测试的一些经验分享 - [软件测试新手上路] - 51Testing软件测试论坛 软件测试 | 软件缺陷跟踪 | 软件配置工具 | 测试用例设计 | Web测试 | 自动化测试工具 - Powered by Discuz! 什么是可用性测试? - 51Testing软件测试网-中国软件测试人的精神家园 51Testing软件测试网:基于嵌入式WEB的网络视频监控系统的设计与实现 QTP自动化测试过程解析 51Testing软件测试网:系统性能测试方案 51Testing软件测试网:测试需求点不是很难做 51Testing软件测试网:测试缺陷分析务实篇 51Testing软件测试网:系统性能测试方案 TestDirector介绍 - April测试家园 - 51Testing软件测试网 -... LoadRunner进程和线程设置 - 51Testing软件测试网-中国软件测试人的精神... Loadrunner关联 - Becky的测试收纳箱 - 51Testing软件测试网 -... 美职业顾问公布15个谷歌面试题 - 51Testing软件测试网-中国软件测试人的精神家园 软件工程与软件测试自动化教程 51Testing软件测试网:TestDirector用户手册(续1) 51Testing软件测试网:测试报告编写指南 51Testing软件测试网:测试报告编写指南 51Testing软件测试论坛 - [软件测试新手上路] - 测试入门书籍大评论---软件测试,软件质量工程师的家园 LoadRunner介绍 - April测试家园 - 51Testing软件测试网 - P... 什么是SQL注入法攻击 - 叶帆小筑 - 51Testing软件测试网 51Testing...