使用QTP对Flight的登录界面进行测试
一、测试用例设计
现在使用QTP对案例程序进行测试,

设计测试用例的要求为:
- 用户名长度大于等于6个字符
- 必须为字母[o-z,O-Z]和数字[0-9]组成
- 不能为空,空格或者特殊字符
- 正确的密码为:MERCUR
|
序号: |
1 |
||||
|
控件名称: |
Agent Name/Password |
||||
|
功能描述: |
登陆 |
||||
|
编号 |
输入/动作 |
输入数据 |
期望的输出/相应 |
实际情况 |
|
|
1 |
使用合法用户名和密码登陆 |
用户名:”Wyl123” 密码: “MERCURY” |
登陆成功 |
||
|
2 |
使用错误的用户名或密码登陆 |
用户名:”Wyl123” 密码: “MERCUR1” |
显示用户名或密码错误提示信息 |
||
|
3 |
用户名为空登陆 |
用户名:不输入 密码: “MERCURY” |
显示请输入用户名提示信息 |
||
|
4 |
改变合法用户名的长度登陆 |
用户名:“wyl” 密码: “MERCURY” |
显示用户名或密码错误提示信息 |
||
|
5 |
使用超长的用户名登陆 |
用户名:“wyl1*100”(100个1) 密码: “MER” |
显示用户名或密码错误提示信息 |
||
|
6 |
使用超长的密码登陆 |
用户名:“wyl123”(100个1) 密码: “MER1*100”(100个1) |
显示用户名或密码错误提示信息 |
||
|
7 |
使用小写的合法密码登陆 |
用户名:”Wyl123” 密码: “mercury” |
显示用户名或密码错误提示信息 |
||
|
8 |
在合法用户名或密码前插入空格 |
用户名:“ wyl123” 密码: “MERCURY” |
显示用户名或密码错误提示信息 |
||
|
9 |
在合法用户名或密码中间插入空格 |
用户名:“wyl 123” 密码: “MERCURY” |
显示用户名或密码错误提示信息 |
||
|
10 |
在合法用户名或密码后插入空格 |
用户名:“wyl123 ” 密码: “MERCURY” |
显示用户名或密码错误提示信息 |
||
|
11 |
登陆界面是否支持快捷键,如Tab,Enter键 |
输入TAB,切换位置 Enter直接登陆 |
Tab键能按照顺序切换焦点,Enter键能焦点于登陆按钮上 |
||
|
12 |
密码为空进行登陆 |
用户名:“wyl123 ” 密码: 不输入 |
显示请输入密码,密码不能为空提示信息 |
||
|
13 |
用户名和密码均为空登陆 |
用户名:不输入 密码: 不输入 |
显示请输入用户名和密码提示信息 |
||
|
14 |
用户名中含有全角字符登陆 |
用户名:“sdfsf” 密码:“MERCURY” |
显示用户名或密码错误提示信息 |
||
|
15 |
密码中含有全角字符登陆 |
用户名:“wyl123” 密码:“MERCURY” |
显示用户名或密码错误提示信息 |
||
|
16 |
用户名中含有特殊字符 |
用户名:“wyl#@” 密码:“MERCURY” |
显示用户名或密码错误提示信息 |
||
|
17 |
用户名中含有中文 |
用户名:“wyl王同学” 密码:“MERCURY” |
显示用户名或密码错误提示信息 |
||
二、录制测试脚本
新建一个Test,

点击“Record”,进行脚本的录制

选择“Application specified below”,选择“+”配置要测试程序的路径


默认路径为:
C:\Program Files (x86)\HP\QuickTest Professional\samples\flight\app\flight4a.exe
C:\Program Files (x86)\HP\QuickTest Professional\samples\flight\app

点击“确定”则QTP自动启动案例程序,此时QTP只监视flight的一举一动。

根据以上的测试用例进行测试

三、测试脚本
Dialog("Login").WinEdit("Agent Name:").Set "wyl123"
Dialog("Login").WinEdit("Password:").Type "M"
Dialog("Login").WinEdit("Password:").SetSecure "53d4bb9a29dff7a9311e6eb1f77c175bed883a1a39b0"
Dialog("Login").WinButton("OK").Click
Dialog("Flight Reservations").WinButton("确定").Click
Dialog("Login").WinEdit("Agent Name:").SetSelection 0,6
Dialog("Login").WinEdit("Agent Name:").Set ""
Dialog("Login").WinEdit("Password:").Type "M"
Dialog("Login").WinEdit("Password:").Type "ervcury"
Dialog("Login").WinEdit("Password:").SetSecure "53d4bba85680db792cc5f22452624b4a65a57187"
Dialog("Login").WinButton("OK").Click
Dialog("Flight Reservations").WinButton("确定").Click
Dialog("Login").WinEdit("Password:").SetSelection 0,7
Dialog("Login").WinEdit("Password:").SetSecure "53d4bbae561a"
Dialog("Login").WinButton("OK").Click
Dialog("Flight Reservations").WinButton("确定").Click
Dialog("Login").Activate
Dialog("Login").WinEdit("Agent Name:").Set " wy123"
Dialog("Login").WinEdit("Agent Name:").Set " wy123"
Dialog("Login").WinEdit("Agent Name:").Set " wy1 23"
Dialog("Login").WinEdit("Password:").SetSecure "53d4bc69999487bbb56c5631f830a6420e0dadf8"
Dialog("Login").WinButton("OK").Click
Window("Flight Reservation").ActiveX("MaskEdBox").Click 44,4
Window("Flight Reservation").Activate
Window("Flight Reservation").Close
Dialog("Login").WinEdit("Agent Name:").Type "WY"
Dialog("Login").WinEdit("Agent Name:").Type micCtrlDwn + "v" + micCtrlUp
Dialog("Login").WinEdit("Password:").Type micCtrlDwn + "v" + micCtrlUp
Dialog("Login").WinButton("OK").Click
Window("Flight Reservation").Close
Dialog("Login").WinEdit("Agent Name:").Set "wyl123"
Dialog("Login").WinEdit("Password:").Type micCtrlDwn + "v" + micCtrlUp
Dialog("Login").WinButton("OK").Click
Dialog("Flight Reservations").WinButton("确定").Click
Dialog("Login").WinEdit("Agent Name:").SetSelection 0,6
Dialog("Login").WinEdit("Agent Name:").Type micCtrlDwn + "v" + micCtrlUp
Dialog("Login").WinEdit("Password:").Type micCtrlDwn + "v" + micCtrlUp
Dialog("Login").WinButton("OK").Click
Window("Flight Reservation").Close
Dialog("Login").WinEdit("Agent Name:").Type micCtrlDwn + "v" + micCtrlUp
Dialog("Login").WinEdit("Password:").Type micCtrlDwn + "v" + micCtrlUp
Dialog("Login").WinButton("OK").Click
Window("Flight Reservation").Close
Dialog("Login").WinEdit("Agent Name:").Type "l1111111111111111111111111111"
Dialog("Login").WinEdit("Agent Name:").Type "11111111111111111111111111111"
Dialog("Login").WinEdit("Agent Name:").Type "11111111111111111111111111111"
Dialog("Login").WinEdit("Agent Name:").Type "11111111111111111111111111111"
Dialog("Login").WinEdit("Agent Name:").Set "1111111111"
Dialog("Login").WinEdit("Password:").SetSecure "53d4bbd18ce7278d5b0961d4391b05f23c84e274"
Dialog("Login").WinButton("OK").Click
Window("Flight Reservation").Close
四、测试结果:
|
序号: |
1 |
||||
|
控件名称: |
Agent Name/Password |
||||
|
功能描述: |
登陆 |
||||
|
编号 |
输入/动作 |
输入数据 |
期望的输出/相应 |
实际情况 |
|
|
1 |
使用合法用户名和密码登陆 |
用户名:”Wyl123” 密码: “MERCURY” |
登陆成功 |
登陆成功 |
|
|
2 |
使用错误的用户名或密码登陆 |
用户名:”Wyl123” 密码: “MERCUR1” |
显示用户名或密码错误提示信息 |
密码错误,请重试 |
|
|
3 |
用户名为空登陆 |
用户名:不输入 密码: “MERCURY” |
显示请输入用户名提示信息 |
请输入用户名 |
|
|
4 |
改变合法用户名的长度登陆 |
用户名:“wyl” 密码: “MERCURY” |
显示用户名或密码错误提示信息 |
用户名不能少于4个字符 |
|
|
5 |
使用超长的用户名登陆 |
用户名:“wyl1*100”(100个1) 密码: “MER” |
显示用户名或密码错误提示信息 |
正常登陆 |
|
|
6 |
使用超长的密码登陆 |
用户名:“wyl123”(100个1) 密码: “MER1*100”(100个1) |
显示用户名或密码错误提示信息 |
密码错误,请重试 |
|
|
7 |
使用小写的合法密码登陆 |
用户名:”Wyl123” 密码: “mercury” |
显示用户名或密码错误提示信息 |
正常登陆 |
|
|
8 |
在合法用户名或密码前插入空格 |
用户名:“ wyl123” 密码: “MERCURY” |
显示用户名或密码错误提示信息 |
正常登陆 |
|
|
9 |
在合法用户名或密码中间插入空格 |
用户名:“wyl 123” 密码: “MERCURY” |
显示用户名或密码错误提示信息 |
正常登陆 |
|
|
10 |
在合法用户名或密码后插入空格 |
用户名:“wyl123 ” 密码: “MERCURY” |
显示用户名或密码错误提示信息 |
正常登陆 |
|
|
11 |
登陆界面是否支持快捷键,如Tab,Enter键 |
输入TAB,切换位置 Enter直接登陆 |
Tab键能按照顺序切换焦点,Enter键能焦点于登陆按钮上 |
支持 |
|
|
12 |
密码为空进行登陆 |
用户名:“wyl123 ” 密码: 不输入 |
显示请输入密码,密码不能为空提示信息 |
请输入密码 |
|
|
13 |
用户名和密码均为空登陆 |
用户名:不输入 密码: 不输入 |
显示请输入用户名和密码提示信息 |
请输入用户名 |
|
|
14 |
用户名中含有全角字符登陆 |
用户名:“sdfsf” 密码:“MERCURY” |
显示用户名或密码错误提示信息 |
正常登陆 |
|
|
15 |
密码中含有全角字符登陆 |
用户名:“wyl123” 密码:“MERCURY” |
显示用户名或密码错误提示信息 |
密码错误,请重试 |
|
|
16 |
用户名中含有特殊字符 |
用户名:“wyl#@” 密码:“MERCURY” |
显示用户名或密码错误提示信息 |
正常登陆 |
|
|
17 |
用户名中含有中文 |
用户名:“wyl王同学” 密码:“MERCURY” |
显示用户名或密码错误提示信息 |
正常登陆 |
|
使用QTP对Flight的登录界面进行测试的更多相关文章
- AJAX实现登录界面
使用php跳转界面和AJAX都可实现登录界面的跳转的登录失败对的提醒.但是,php跳转的方式 需要额外加载其他界面,用户体验差.AJAX可实现当前页面只刷新需要的数据,不对当前网页进行 重新加载或者是 ...
- android内部培训视频_第五节(1)_OA实战之登录界面
第五节(1):OA实战之登录界面 一.登录界面布局 1.背景图片 2.文本框 3.checkbox 4.按钮 暂未实现点击切换图片效果 <RelativeLayout xmlns:androi ...
- C#-WebForm-Session、Cookie-登录验证(未登录跳至登录界面)、隐藏地址栏传值
Post 传值(看不见的传值) Get 传值(看得见的传值) Session - 全局变量组 存放位置:服务端 作用:只要里面有内容,那么这个网站中所有的C#端都能访问到这个变量 -- object类 ...
- 初识Jsp,JavaBean,Servlet以及一个简单mvc模式的登录界面
1:JSP JSP的基本语法:指令标识page,include,taglib;page指令标识常用的属性包含Language用来定义要使用的脚本语言:contentType定义JSP字符的编码和页面响 ...
- 很漂亮的用户登录界面HTML模板
效果预览:http://keleyi.com/keleyi/phtml/divcss/21.htm HoverTree开源项目实现了分层后,准备实现管理员后台登录,这里先把登录界面的HTML模板整理好 ...
- Cookie案例:简单登录界面中的应用
ServletDemo1.java package ztq.servlet.study; import java.io.IOException; import java.io.PrintWriter; ...
- android 案例二 登录界面
效果图: 运行图: 总结: 编写这个简单的用户登录界面,主要用到了以下的知识: java基础中的IO流的操作 用以读取.显示用户的信息 Android布局 线性布局和相对布局 数据的存储选在包 ...
- Android之QQ登录界面
首先过程中碰到的几个问题: 1.对 EditText 进行自定义背景 2.运行时自动 EditText 自动获得焦点 3.在获得焦点时即清空 hint ,而不是输入后清空 4.清空按钮的出现时机(在得 ...
- C#学习笔记-Windows窗体基本功能(Login登录界面)
本菜鸟由于实习工作的原因,不得不快速接触C#语言,刚刚好又要做毕业设计,所以就通过自学的方式一举两得地完成这两件事情. 故此文字记录或代码中的各种文件名之类均是以毕业设计为模版记录的,看着不方便之处请 ...
随机推荐
- 【转】Android M新控件之FloatingActionButton,TextInputLayout,Snackbar,TabLayout的使用
Android M新控件之FloatingActionButton,TextInputLayout,Snackbar,TabLayout的使用 分类: Android UI2015-06-15 16: ...
- SQLPlus Error handle
SQLPlus directive "WHENEVER SQLERROR EXIT 1" will return a specified code when any SQL err ...
- mobiscroll.js 使用
使用较为详情的参考网址:http://www.lanrenmaku.com/jMobile/2014_1231_1357.html
- OPENSSL 学习整理-介绍
Openssl目录名以及功能描述 目录名 功能描述 Crypto 存放OpenSSL 所有加密算法源码文件和相关标注如X.509 源码文件,是OpenSSL中最重要的目录,包含了OpenSSL 密码算 ...
- Thread 线程
线程 Join 一线程里面调用另一线程join方法时,表示将本线程阻塞直至另一线程终止时再执行 using System.Linq; using System.Text; using System.T ...
- css3实现动画效果
一.动画效果的常用属性 实现动画效果需要借助css3的下列属性:transform,transion,animation(具体可以参见教材) 二.动画效果实例 1)文字闪烁的动画效果 /*文字的闪烁效 ...
- autorelease基本概念
// // main.m // 01-autorelease基本概念 // // Created by apple on 14-3-18. // Copyright (c) 2014年 app ...
- 安装和删除 Alcatraz 插件
在终端下输入如下命令来安装Alcatraz: curl -fsSL https://raw.github.com/supermarin/Alcatraz/master/Scripts/install. ...
- bind: address already in use
2016/04/18 09:46:06 server.go:36: listen at 0.0.0.0:9530 2016/04/18 09:46:06 server.go:39: listen er ...
- 查找文件并执行的shell命令
来由 经常我们需要找到某类文件, 并对进行处理. 例如找到.svn文件夹, 然后删除掉. 如果不使用shell,你可以选择手动删除, 前提是没有几个此类文件, 但是svn信息文件很多, 不能采用手动删 ...