UFT——操作模块

news2024/12/23 6:44:12

 示例一

  1. 创建一个可重复利用的登录测试
  2. 更改Action的名称。
  3. 使用本地数据表。
  4. 创建一个主调用测试。
  5. 建立测试迭代。
  6. 处理缺失的Action。

 分析:就是创建一个只有登录的测试起名为login,然后在创建一个主测试起名字比如main,在main中,调用登录测试副本,然后接着录制订票操作和退出操作,在订票Action中使用本地数据表进行参数化完成迭代。

各部分脚本如下:

Login——>

Dialog("Login").WinEdit("Agent Name:").Set "B20041300"
Dialog("Login").WinEdit("Password:").SetSecure "6448c99a09a3368434e0107243758f70dee40866"
Dialog("Login").WinButton("OK").Click

newOrder——>

Window("Flight Reservation").ActiveX("MaskEdBox").Type "121224"
Window("Flight Reservation").WinComboBox("Fly From:").Select DataTable("Fly_From", dtLocalSheet)
Window("Flight Reservation").WinComboBox("Fly To:").Select DataTable("Fly_To", dtLocalSheet) 
Window("Flight Reservation").WinButton("FLIGHT").Click 
Window("Flight Reservation").Dialog("Flights Table").WinButton("OK").Click 
Window("Flight Reservation").WinEdit("Name:").Set "虹猫" 
Window("Flight Reservation").WinButton("Insert Order").Click

Logout——>

Window("Flight Reservation").Close

 在newOrder数据表中设置参数,如下图:

下面说一下怎么调用操作副本,如下图

首先我们创建了一个只有Login的测试。然后在创建另一个主测试,在主Action中右键

 选择我们之前创建好的login测试

 然后你会看到下图

 接着就是把订票和退出action加入进去

首先进行运行设置

然后我们运行,它会在登录后结束,这时候 飞机已经出来了。

我们只需要点击录制,进行插入新操作,进行 补录订票和退出就行了。

最后模块如图所示:最后把上面的Action删除了就好


 示例二

  1. 创建一个测试,包括登录、订票、退出三个Action。
  2. 将登录Action的用户名参数化,采用全局表中数据。
  3. 将订票Action的Fly From/Fly To参数化,采用本地表中数据。
  4. 在文件|设置|运行中设置迭代次数为所有行运行,将订单Action的迭代次数设置为只一次迭代。分别采用以下三种数据组合,观察记录运行结果,并给出结论。

全局表global

本地表(订单)

表中数据行数

2

2

表中数据行数

2

3

表中数据行数

3

2

在文件|设置|运行中设置迭代次数为所有行运行,将订单Action的迭代次数设置为所有行运行;在全局表中设置2行数据,在订单Action的本地表中设置3行数据,观察运行结果。

 分析:这个和之前的UFT参数化中的测试没什么区别,唯一的区别就是数据表中的数据不一样。

首先我们创建一个包含三个action的测试

然后进行运行设置,在登录action中加入复制的代码:

SystemUtil.Run "你复制的飞机路径"

如下图我们需要在global数据表中进行设置用户名参数化,在订票中设置城市参数化

 数据分别按要求进行设置即可。

之后进行设置如何迭代,点击订票右键

结论:————

 代码示例如下

登录示例——>

SystemUtil.Run "E:\software\HP\Unified Functional Testing\samples\flight\app\flight4a.exe"

Dialog("Login").WinEdit("Agent Name:").Set DataTable("UserName", dtGlobalSheet)
Dialog("Login").WinEdit("Password:").SetSecure "6448d0406ebba95e062410699a1f23cf667fcdd9"
Dialog("Login").WinButton("OK").Click

 订票示例——>

Window("Flight Reservation").ActiveX("MaskEdBox").Type "121224" 
Window("Flight Reservation").WinComboBox("Fly From:").Select DataTable("Fly_From", dtLocalSheet)
Window("Flight Reservation").WinComboBox("Fly To:").Select DataTable("Fly_To", dtLocalSheet) 
Window("Flight Reservation").WinButton("FLIGHT").Click 
Window("Flight Reservation").Dialog("Flights Table").WinButton("OK").Click 
Window("Flight Reservation").WinEdit("Name:").Set "虹猫" 
Window("Flight Reservation").WinButton("Insert Order").Click 

Window("Flight Reservation").WinButton("Button").Click

退出示例——>

Window("Flight Reservation").Close

 示例3(*)

  1.  创建一个测试,包括登录、订票、退出三个Action。
  2. 在订单Action中调用新操作“修改订单”作为自操作。
  3. 将订票Action的Fly From/Fly To参数化,采用本地表中数据。
  4. 将“修改订单”Action设置一个输入参数。将订单Action的迭代次数设置为所有行运行。
  5. 在订单Action中利用GetRoproperty方法获取生成的订单号,将该订单号作为调用“修改订单”Action的输入参数。
  6. 运行并观察结果。

首先新建测试并改名Action

 进行运行设置

 开始录制。

 

 

 

 

 

 

 设置参数化

代码示例:

订票示例——>

Window("Flight Reservation").ActiveX("MaskEdBox").Type "121224"
Window("Flight Reservation").WinComboBox("Fly From:").Select DataTable("Fly_From", dtLocalSheet)
Window("Flight Reservation").WinComboBox("Fly To:").Select DataTable("Fly_To", dtLocalSheet)
Window("Flight Reservation").WinButton("FLIGHT").Click
Window("Flight Reservation").Dialog("Flights Table").WinButton("OK").Click
Window("Flight Reservation").Activate
Window("Flight Reservation").WinEdit("Name:").Set "虹猫"
Window("Flight Reservation").WinButton("Insert Order").Click
Window("Flight Reservation").ActiveX("Threed Panel Control").WaitProperty "text", "Insert Done...", 10000

num=Window("Flight Reservation").WinEdit("Order No:").GetROProperty("text")
 
RunAction "修改订单", allIteration,num

 修改订单示例——>

Window("Flight Reservation").WinMenu("Menu").Select "File;Open Order..."
Window("Flight Reservation").Dialog("Open Order").WinCheckBox("Order No.").Set "ON"

Window("Flight Reservation").Dialog("Open Order").WinEdit("Edit").Set Parameter("num")

Window("Flight Reservation").Dialog("Open Order").WinButton("OK").Click
Window("Flight Reservation").WinButton("Update Order").Click
Window("Flight Reservation").WinButton("Button").Click

 至此完毕。--------------------------------------------------------------------------------------------------------

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/477625.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

微信小程序定义模板

微信小程序提供模板(template)功能,把一些可以共用的,复用的代码在模板中定义为代码片段,然后在不同的地方调用,可以实现一次编写,多次引用的效果。 首先我们看一下官网是如何操作的 一般的情…

笔记:对多维torch进行任意维度的多“行”操作

如何取出多维torch指定维度的指定“行” 从二维torch开始新建torch取出某一行取出某一列一次性取出多行取出连续的多行取出不连续的多行 一次取出多列取出连续的多列取出不连续的多列 考虑三维torch取出三维torch的任意两行(means 在dim0上操作)取出连续…

( 字符串) 9. 回文数 ——【Leetcode每日一题】

❓9. 回文数 难度:简单 给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。 回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 例如…

Git的安装与使用+Git在IDEA中的使用

文章目录 一、Git概述1、版本控制器的方式2、Git的工作流程图 二、Git的安装与常用命令1、Git环境安装2、Git环境基本配置3、获取本地仓库4、基础操作指令 三、分支1、常用指令2、解决合并冲突 四、Git远程仓库1、创建远程仓库2、远程操作仓库3、冲突处理 四、IDEA中使用Git1、…

数据结构——二叉树

二叉树 1 二叉树的种类 1.1 满二叉树 节点数量为 2^k - 1 (k是树的深度,底层的叶子节点都是满的) 1.2 完全二叉树 完全二叉树是指除了下面一层外,其余层的节点都是满的; 且最下面一层的叶子节点是从左到右连续的。 下面这个…

pci总线协议学习笔记——PCI总线基本概念

1、pci总线概述 (1)PCI,外设组件互连标准(Peripheral Component Interconnection),是一种由英特尔(Intel)公司1991年推出的用于定义局部总线的标准; (2)最早提出的PCI总线工作在33MHz频率之下,传输带宽达到133MB/s(33M…

【LeetCode】236. 二叉树的最近公共祖先

1.问题 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个节点 p、q,最近公共祖先表示为一个节点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是…

1992-2022年31省GDP、第一产业增加值、第二产业增加值 第三产业增加值

1992-2022年31省GDP、第一产业增加值、第二产业增加值 第三产业增加值 1、时间:1992-2022年 2、范围:包括31省 3、指标:省GDP、省第一产业增加值、省第二产业增加值、省第三产业增加值 4、缺失情况说明:无缺失 5、来源&#…

【python知识】__init__.py的来龙去脉

一、说明 我们常见__init__.py文件,但说不清楚它的用途,在本文,我将首先把它的来龙去脉说清楚,然后告诉大家,如何编制python工程,培养全局的编程格局。 二、包-模块-函数结构 在Python工程里,当…

playwright连接已有浏览器操作

文章目录 playwright连接已有浏览器操作前置准备打开本地已有缓存的Chrome(理解)指定端口打开浏览器连接指定端口已启动浏览器(推荐) playwright连接已有浏览器操作 前置准备 pip install playwright # 安装playwright的python…

红黑树数据结构

现在JAVASE中HashMap中底层源码是由数组链表红黑树进行设计的,然后很多地方也是用到红黑树,这里单独对红黑树数据结构进行简单的介绍。 目录 红黑树概念 红黑树的性质 自平衡规则 代码 红黑树概念 红黑树,是一种二叉搜索树,…

linux常用命令大全(保姆及入门)

linux常用命令大全 一、文件处理命令1、目录处理命令:ls2、目录处理命令2.1 mkdir2.2 pwd2.3 rmdir2.4 cp2.5 mv2.6 rm 3.文件处理命令3.1 touch3.2 cat3.3 tac3.4 more3.5 less3.6 head3.7 tail 4.链接命令4.1 ln 二、权限管理命令2.1 chmod2.2 chown2.3 chgrp 2.4…

VRPTW:新雀优化算法NOA求解带时间窗的车辆路径问题

一、新雀优化算法NOA求解带时间窗的车辆路径问题 1.1VRPTW模型如下: 带时间窗的车辆路径问题(Vehicle Routing Problem with Time Windows, VRPTW) 1.2新雀优化算法NOA求解VRPTW close all clear clc SearchAgents_no30; % 种群大小 Function_nameF1; Max_ite…

准备“开黑”,电脑却“告退”?游戏闪退的解决方法

游戏玩家近期可能会发现,不少大作陆陆续续登录PC市场,比如《死亡岛 2》、《无畏契约》等。但也有不少游戏用户会发现,电脑玩游戏时容易出现闪退的情况。特别是在进行高负荷运算的时候,有一些游戏更为容易出现这种情况,…

[架构之路-176]-《软考-系统分析师》-17-嵌入式系统分析与设计 -1- 实时性(任务切换时间、中断延迟时间、中断响应时间)、可靠性、功耗、体积、成本

目录 前言: 1 7 . 1 嵌 入 式 系 统 概 述 1 . 嵌入式系统的特点 (1) 系统专用性强。 (2) 系统实时性强。 (3) 软硬件依赖性强 (4) 处理器专用。 ( 5 ) 多种技术紧密结合。 (6) 系统透明性。 (7) 系统资源受限。 2 . 嵌入式系统的组成 1 7 . 3 嵌入式实…

拷贝构造函数和赋值重载函数详解

1.拷贝构造函数 1.1拷贝构造函数的概念 拷贝构造函数:只有单个形参,该形参是对本类类型对象的引用(一般常用const修饰),在用已存在的类类型对象创建新对象时由编译器自动调用。拷贝构造函数也是特殊的成员函数,其特征如下&#…

Golang每日一练(leetDay0051)

目录 151. 颠倒字符串中的单词 Reverse Words In A String 🌟🌟 152. 乘积最大子数组 Maximum Product Sub-Array 🌟🌟 🌟 每日一练刷题专栏 🌟 Golang每日一练 专栏 Python每日一练 专栏 C/C每日一…

【分布式】CAP原则和BASE理论

CAP原则概述 CConsistency一致性AAvailability可用性PPartition tolerance分区容错性 1998年,加州大学的计算机科学家Eric Brewer提出,分布式系统有三个指标 一致性(C):在分布式系统中的所有数据备份,在同…

TiDB实战篇-基于索引的SQL优化

简介 TiDB实战篇-基于索引的SQL优化。 Online DDL 允许直接在线执行ddl操作,不会锁表,但是执行多个ddl的时候会要排队。 原理 控制创建索引的速度 查看影响 标红的是加了多少行索引。 添加索引的线上的影响(读写频繁) 只读场…

Linux程序设计之IP地址转换

1.通常,人们习惯于使用可读性好的字符串来表示IP的地址,但是,在实际的使用过程中,需要使用的IP地址应该为无符号的整数(在计算机中存储时是对应的二进制,只有二进制计算机才能识别,即0、1)。已经封装好的函…