1、2018/11/3,1,新闻发布系统QTP的自动化测试方案设计与实现,姓名:沈世钟 班级:软件技术1班 学号:0906005117 指导老师:郑建清,2018/11/3,2,项目背景,目前在软件测试行业里,除了大家所熟悉的黑盒测试和白盒测试以外,还分为手工测试和自动化测试。自动化测试相对于手工测试有很多优点,它最主要的优点就是省时,省力,省财务开销。自动化测试工具中具有代表性的是QTP,QTP适用于软件测试中的smoke测试以及回归测试(regression test),QTP脚本具有相当高的可移植性和可重用性,“一本万利”,即一本QTP测试脚本经过简单修改后可以应用于多个测试软件以及测试环境
2、。本次综合职业项目强化训练,以QTP为自动化测试工具,以“美图秀秀”软件为被测软件,通过QTP的描述性编程方法,实现该软件从安装到卸载的功能测试和界面检查测试,以及安装完成后的软件功能性测试和UI测试。最终产生可读性好,易于跟踪的QTP自动化报告,用来分析软件的缺陷。通过使用QTP对“美图秀秀”软件进行测试的实例,展示出了QTP自动化测试在软件测试行业中方便,快捷的优越性。,2018/11/3,3,1软件测试简介,1 软件测试简介2 自动化测试简介,2018/11/3,4,2自动化测试简介,2.1 自动化测试的目的开发一个软件要在最短的时间内开发出需求分析中的软件产品,以最快的速度能先于其它竞
3、争对手占领软件市场,从而获取最大的利益,现在的软件开发已经将测试融入其中,所以测试的速度也是至关重要的。传统的软件测试是靠人的手动来进行测试,也是现在各个软件测试公司的主流方法,称之为Manual test。测试部门每天都要计算在某个项目上charge多少个人。这样的测试耗费时间,耗费人力,耗费成本。自动化测试的目的就是尽可能的减少在测试上的人力和财力的开销,以最便捷省时省事的方法,完成同样的任务。测试自动化是使软件测试人员跟上开发人员脚步的惟一方式。自动化测试相对于手工测试的优点优化测试速度:可非常快速的运行上万条记录。 提高准确性、稳定性:可以不为外界因素干扰,准确运行测试用例。确定性:能
4、真实快速搭建测试环境,测试数据,重现缺陷。 提高工作效率:一边运行自动化测试,一边准备测试报告。,2018/11/3,5,2.3自动化测试流程图,系统的可行性分析 n 经济可行性分析 软件开发费用低. n 技术可行性分析 计算机硬件和软件技术的飞速发展,为系统的建设提供了技术条件 . n 社会可行性分析 在当前信息技术飞速发展的大环境下,计算机技术和软件技术的更新是图书馆完全有可能也有能力采用这样先进的管理技术.,2018/11/3,6,3 QTP自动化测试,QTP,全称为Quick Test Professional, 是Mercury研发的一种自动化测试工具,现在属 于HP公司,是一款先进
5、的自动化测试解决方案, 用于创建功能和回归测试。它自动捕获、验证和 重放用户的交互行为。Quick Test Professional是为每一个重 要软件应用和环境提供功能和回归测试自动化的 最佳解决方案。,2018/11/3,7,3.2 QTP的工作模式,QTP分为两种工作模式:第一种为关键字视图模式(Keyword View),普通的录制和回放有关键字视图就足够了,关键字视图中有录制过程中每一个点击事件以及输入事件,测试人员可以在关键字视图下通过修改DataTable来设置检查点。第二种为专家视图(Expert View),它有两个作用:(1)专家视图中包含了整个录制过程中QTP所产生的每
6、一个事件相对应的脚本,QTP高级测试人员可以通过修改这些脚本代码来控制QTP回放时的所有事件;(2)高级QTP测试人员可以在无需录制的情况下,通过自己在专家视图中编写脚本代码,来实现录制能实现的功能,甚至可以实现通过录制无法实现的功能,这种方法称为描述性编程,使用描述性编程的优点有:减少QTP脚本的大小,便于在邮件和服务器上发送; 增加了脚本的可移植性,可扩展性,可维护性。QTP脚本使用VB语言编写,很少的代码量可完成很强大的功能,通过描述性编程,脚本开发人员可以随意控制QTP测试脚本,在自己需要的地方增加检查点,在脚本出问题的时候便于维护;由于没有对象,在脚本移植上变得方便容易,也使脚本的扩
7、展变得容易。对于QTP而言,其核心代码是Visual Basic Script,因此,如果用户熟悉vbScript,就可以自己添加和更新专家视图中的语句,并通过编程方式增强测试脚本。初学者都会知道QTP是用来录制回放的,当然,录制完就会有对象存在在对象库中,这个对象对已经录制的实体有一个唯一的标识。但是当你遇到以下情况时,就无法再应用对象和对象库了:(1)在某些页面上动态产生的对象;(2)当要求脚本必须比较小的时候。,2018/11/3,8,3.4 QTP自动化测试流程,3.4.1 准备测试用例,3.4.1 准备测试用例3.4.2 配置QTP运行环境3.4.3 录制或编写自动化测试脚本3.4.
8、4 检查修改脚本3.4.5 运行调试测试脚本3.3.6 运行维护脚本,2018/11/3,9,3.4.7 QTP自动化测试流程图,2018/11/3,10,4 “新闻发布”的自动化测试,4.1 测试规划 4.2 测试用例开发 4.2 测试用例开发 4.2.2开始菜单检查测试用例 4.2.3 进入后台测试用例 4.2.4管理现有新闻测试用例 4.2.7首页中的新闻搜索测试用例 4.28 评论测试用例 4.3 QTP脚本开发,2018/11/3,11,4.3 QTP脚本开发,2018/11/3,12,用户登陆代码界面,2018/11/3,13,新闻搜索检查界面,2018/11/3,14,用户浏览检
9、查界面,2018/11/3,15,首页的新闻搜索检查界面,2018/11/3,16,4.4 测试报告,2018/11/3,17,环境及需求,4.5 环境搭配OS: Windows xp/vista。语言: 简体中文。网络连接正确。 4.6 软件需求(1)美图秀秀。(2)QTP。(3)其它软件需求: office 2003或 office 2007。,2018/11/3,18,问题的解决,4.7 遇到的问题以及解决方案 4.7.1时间处理 4.7.2 对象无法识别 4.7.4 报告中无法显示Pass率 4.7.5 运行时界面效果 4.7.6 场景恢复 4.7.7 QTP单击右键完成“Save T
10、arget As”操作 4.7.8 QTP读取外部Excel数据 4.7.9 报告优化整理,2018/11/3,19,QTP自动产生的报告,2018/11/3,20,总结,通过这次综合职业项目强化训练,我对于QTP的描述性编程有了一个更深层次的认识。在学校的课程里没有学习过VB语言,现在对于VB语言只是已经有了一个基本的掌握,让我对编程语言有了更深一层的了解。这次综合职业项目强化训练从测试用例的设计与实现,到QTP脚本代码的开发,再到QTP报告的整理和更新,都是我一个人独立完成的,完成这次综合职业项目强化训练以后,不但让我在QTP的使用技术上有了提高,而且编程思想也同样提高了很多。这次综合职业
11、项目强化训练与我在公司的工作紧密相关,增加了我对工作的热情,也对我所从事的软件测试行业有了更加明确的认识。“美图秀秀”这个工具是我为这个QTP自动化测试专门找的一个被测软件,通过QTP的测试,我发现了这个已经被很多人应用的图片编辑软件仍然存在着缺陷主要软件缺陷有:(1)在安装结束后,有一个“运行 美图秀秀 2.2.0 (R)”的复选框,当这个复选框被 选中时,在点击“完成”按钮以后,软件应该可以自动被启动起来。实际情况是点击“完成”按钮后,该软件无法自动启动。(2)安装结束以后,软件素材库更新窗口应该自动弹出,让用户选择是否立即更新素材库。实际情况是这个软件素材库更新窗口并没有自动弹出。在完成综合职业项目强化训练,我发现越来越多的人在学习QTP,QTP在众多软件测试员心中的地位与日俱增,各种论坛,包括51testing,qtpfuns,csdn等等,都有大量的文章介绍QTP方法,越来越多的人的博客里出现了QTP,越来越多的人拥有一个qq群,这个群是关于QTP的。,2018/11/3,21,Thank You!,