qtp功能测试1
一、前言(课设目的及内容)
QTP是quicktest Professional的简称,是一种自动测试工具。使用QTP的目的是想用它来执行重复的手动测试,主要是用于回归测试和测试同一软件的新版本。因此你在测试前要考虑好如何对应用程序进行测试,例如要测试那些功能、操作步骤、输入数据和期望的输出数据等
1.1 测试目的
(1) 使学生能掌握网站功能测试的基本思路和方法,学会使用自动化测试工具QTP进行功能测试;
(2) 培养学生分析、解决问题的能力;
(3) 提高学生的创新思维能力与动手能力;
(4) 提高学生的科技论文写作能力。
1.2 测试内容
QTP进行功能测试的测试流程的五个步骤:
1.制定测试计划
自动测试的测试计划是根据被测项目的具体需求,以及所使用的测试工具而制定的,完全用于指导测试全工程。
2.创建测试脚本
当测试人员浏览站点或在应用程序上操作的时候,QTP的自动录制机制能够将测试人员的每一个操作步骤及被操作的对象记录下来,自动生成测试脚本语句。
3.增强测试脚本的功能
录制脚本只是为了实现创建或者设计脚本的第一步,基本的脚本录制完毕后,测试人员可以根据需要增加一些扩展功能,QTP允许测试人员通过在脚本中增加或更改测试步骤来修正或自定义测试流程。
4.运行测试
QTP从脚本的第一行开始执行语句,运行过程中会对设置的检查点进行验证,用实际数据代替参数值,并给出相应的输出结构信息。测试过程中测试人员还可以调试自己的脚本,直到脚本完全符合要求。
5.分析测试
运行结束后系统会自动生成一份详细完整的测试结果报告。
二、测试计划及测试需求
2.1 测试原理分析
QTP主要采用的是使用GUI模拟人的操作。它在模拟人的操作时会记录操作的对象及所做的操作和顺序,然后在回放时按记录顺序操作这些对象。而在这个模拟的过程中,最重要的莫过于界面对象(控件)的识别。
例如,在“用户名输入框”中输入“a用户”,伪代码如下:
WebEdit(“用户名输入框”).Set “a用户”,下面分析这个测试原理。
首先,QTP会通过“用户名输入框”这个名字到对象库的对象名中查找;
然后通过找到的对象名,找到对象名映射的属性包;
接着QTP就会通过这个属性包来匹配页面上的控件的属性,如果在页面上找到一个唯一与此属性包匹配的控件,那QTP就会认为此控件为要找的控件;
最后QTP根据“WebEdit”来确定控件的类型,并调用QTP对于此类控件内置的操作方法“Set”把“a用户”赋予了控件。
至于其他控件的识别和操作,基本原理和上面一样。
2.2测试流程图
根据测试原理的分析以及QTP测试的基本步骤可以设计如图2-1的测试流程图。
·2.3 测试计划设计
根据测试原理分析与测试思想设计,设计如图2-2所示的测试过程计划流程图。
2.4 测试需求分析
对于一个网站系统,其链接的正确性和各个功能模块的功能实现的准确性是其测试的关键性环节。同时在最短的时间内开发出需求分析中的网站系统的软件产品,以最快的速度能先于其他竞争对手占领软件市场,从而获取最大的利益,所以测试速度也是至关重要的。
传统的软件测试是靠人进行手工测试,也就是现在各个公司的主流方法,我们称之为Manual test。测试部门每天都要计算在某个项目上Charge多少个人。这样的测试耗费时间、人力、物力以及成本。自动化测试的目的就是尽可能的减少在测试上的人力和财力的开销,以最便捷省时省事的方法完成同样的任务。
因此以QTP自动化测试工具对网站的链接正确性检查和各个功能模块的功能实现的准确性测试能够在满足测试需求的前提下加快测试进度。
2.5 测试环境搭建
操作系统:Windows XP
语言:中文
浏览器:Internet Explorer 8
网络:宽带连接
网站:http://localhost:8080/sct2_war_exploded/login.jsp
软件:QuickTest Professional
其他软件需求:Microsoft Visio2007和Microsoft Word2003
三、测试用例的设计
3.1 登录与退出测试用例
(1). 登录测试用例设计如表3-1所示:
表3-1 登陆测试用例
前置条件 |
输入数据 |
预期结果 |
实际结果 |
输入用户名: |
Admin |
登陆成功 |
登陆成功 |
输入密码: |
123456 |
(2). 退出测试用例如表3-2所示:
表3-2 退出测试用例
前置条件 |
输入数据 |
预期结果 |
实际结果 |
已登录 |
点击退出链接 |
退出并进入登录界面 |
退出并进入登录界面 |
3.2 测试用例
(1). 添加的测试用例如表3-3所示:
表3-3 添加的测试用例
前置条件 |
输入数据 |
预期结果 |
实际结果 |
进入管理页面 |
点击添加 |
进入修改页面 |
进入修改页面 |
进入修改页面 |
输入信息 |
输出框出现输入的信息 |
输出框出现输入的信息 |
输入信息 |
点击提交按钮 |
提交成功,返回管理页面 |
提交成功,返回管理页面 |
(2). 评分的测试用例如表3-4所示:
表3-4 评分的测试用例
前置条件 |
输入数据 |
预期结果 |
实际结果 |
进入老师的主页 |
点击想要管理的课程 |
进入学生评分页面 |
进入学生评分页面 |
进入学生评分页面 |
输入数据 |
输出框出现输入的信息 |
输出框出现输入的信息 |
输入数据 |
点击提交按钮 |
提交成功,学生成绩录入 |
提交成功,学生成绩录入 |
四、测试过程
4.1开始录制脚本:
点击打开QTP,创建一个Blank Test;
我们这个实验是利用QTP来验证网页系统添加和评分功能,点击Record来录制一个脚本:
点击“确定”后进入主页:
然后管理员页面,如下图所示:
进入老师管理
点击提交
下面是评分系统
评分页面
而下图是其Expert View(Expert就是代码视图,一般编写脚本都在这个区域):
4.2 回放录制脚本:
录制完成后,点击按钮,由于没有加入检查点,故而结果都是Done,出现如下图:
4.3 加入检查点
下面加入检查点,可以在邮箱登陆页面的输入用户名出加入一个检查点,以检查输入的用户名是否正确:
然后设置检查点属性:
而下面的则是Expert View:
4.4 重新运行脚本
再次点击按钮,得到结果如下:
结果是Passed,表示通过了,功能验证测试完成。
五、测试结果分析
由于本次实验主要是利用QTP的检查点功能来测试系统的添加和评分功能,由于在之前的实验的时候已经用过一次qtp了所以整个实验过程还算顺利但在测试过程中还是出现了一个问题,就是实验谷歌浏览器进行测试是流程无法录制下来,具体为什么不是特别清楚。
六、课设小结及心得体会
QTP是一款非常强大自动化测试工具,它的用途非常广泛,各项功能如对象库,同步点,检查点等也非常好用。通过本次的课程设计,使我对软件测试这门课程有了一个更加深入的了解,经过自己的多次试验,对一些自动化测试工具有了初步的掌握,更加感受到这些工具的独特魅力,虽然谈不上精通,但自己正处在学习的路上,相信这次的实验对自己将来的学习和工作一定会有很大的帮助。
在进行本次实验时,我用的qtp版本是12名字已经改为了utp,而且网上关于qt功能测试的教程大多是旧版的,新版比较的少。但好在新版相较于旧版的改动并不是特别的大,实验也能顺利的进行下去,软件也和人一样一直在进步,我也应该努力去接收新的知识,学习是一生的事,特别是对于软件这一行业,知识每天都在更新,时代每天都在变化,为了不被抛弃我必须一直保持学习新东西的热情。