CN102929632A - 控件动作执行方法 - Google Patents

控件动作执行方法 Download PDF

Info

Publication number
CN102929632A
CN102929632A CN2012104375816A CN201210437581A CN102929632A CN 102929632 A CN102929632 A CN 102929632A CN 2012104375816 A CN2012104375816 A CN 2012104375816A CN 201210437581 A CN201210437581 A CN 201210437581A CN 102929632 A CN102929632 A CN 102929632A
Authority
CN
China
Prior art keywords
action
event
control
response
function
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2012104375816A
Other languages
English (en)
Other versions
CN102929632B (zh
Inventor
王媛媛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ding Huangxiang
Original Assignee
Suzhou Yiyuan Hongda Intellectual Property Agency Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Yiyuan Hongda Intellectual Property Agency Co Ltd filed Critical Suzhou Yiyuan Hongda Intellectual Property Agency Co Ltd
Priority to CN201210437581.6A priority Critical patent/CN102929632B/zh
Publication of CN102929632A publication Critical patent/CN102929632A/zh
Application granted granted Critical
Publication of CN102929632B publication Critical patent/CN102929632B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • User Interface Of Digital Computer (AREA)

Abstract

本发明提供了一种控件动作执行方法,所述方法包括:在第一控件处接收第一动作,所述第一动作包括确定一对象;响应于所述第一动作,判断所述对象是否合法;在第二控件处接收第二动作,所述第二动作包括触发第一事件发生;响应于所述第二动作,触发所述第一事件发生;响应于所述第一事件,调用第一函数;响应于所述第一函数,在关联于所述第一事件的所述对象上执行第一操作。

Description

控件动作执行方法
技术领域
本发明主要涉及计算机技术,尤其涉及一种控件动作执行方法。
背景技术
对计算机软件应用程序的开发往往是复杂的并且对用户来说是神秘的。然而,在用户界面和应用程序开发框架中,逻辑和非用户界面行为被构建到用户界面组件内以扩展与用户界面组件相关联的控件属性。非用户界面行为可被构建到用户界面组件的成分中。合成控件可能相当巨大,且具有用户难以修改来适合不同需求的众多不同属性。属性的巨大数目使得控件的定制复杂化了,因为用户可能不会熟悉所有相关联的属性。对象模型变得膨胀,使得当在表单中包括控件时,用户将会被控件所提供的功能淹没。
同时,随着业务的变化,软件产品的种类越来越多,软件产品的升级越来越快,因此,在很多的软件开发组织中,测试部门承受着巨大的压力。一方面,要测试越来越多的软件产品,另一方面要应对越来越短的测试时间,此外,还要面对捉襟见肘的测试资源。通常情况下,软件开发组织会使用自动化测试工具,其中,基于图形化用户接口界面和Web方式的自动化测试是难度相对较大的领域,常用的自动化测试框架技术有据驱动引擎技术和测试计划驱动框架,另外,一些公司进行二次开发,开发出适合于被测系统的企业自动化功能测试框架。大多数的GUI自动化测试都是实现二大基本功能:控件捕获和事件模拟。这是自动化测试的底层驱动,各种应用框架都是基于这个驱动而搭建起来的。在测试当中,最常见的实现机制就是录制回放模式。录制是指将用户手动操作的过程采用脚本的形式记录下来,回放是指测试软件通过读取记录的脚本,重新对人工操作进行模拟的过程。虽然录制回放方式能够快速的生成测试,但是同时也存在着一些弊端。其中最主要的原因在于使用录制回放方式时往往需要耗费时间和资源来进行调试和脚本的维护。并且,这些工作的工作量会随着脚本数量的增加而增大到几乎不可能再对脚本进行有效维护的地步。另一方面,不同的测试工具可能会提供不同的脚本,这会导致学习成本的增加。
发明内容
本发明通过对控件上的动作执行调整,使得应用程序的开发和测试变得更加容易、更加柔性。在本发明中提供了一种控件动作执行方法,所述方法包括:在第一控件处接收第一动作,所述第一动作包括确定一对象;响应于所述第一动作,判断所述对象是否合法;在第二控件处接收第二动作,所述第二动作包括触发第一事件发生;响应于所述第二动作,触发所述第一事件发生;响应于所述第一事件,调用第一函数;响应于所述第一函数,在关联于所述第一事件的所述对象上执行第一操作。
根据本发明一实施例,其中,判断所述对象是否合法包括:触发第二事件发生;响应于所述第二事件,调用第二函数;响应于所述第二函数,执行第二操作以判断所述对象是否合法。
根据本发明另一实施例,其中,所述第一操作是算术运算、或逻辑运算、或算术运算与逻辑运算的集合
根据本发明另一实施例,其中还包括:在第三控件处接收第三动作,所述第三动作包括触发第三事件发生;响应于所述第三动作,触发所述第三事件发生;响应于所述第三事件,在关联于所述第三事件的图形用户接口上执行第三操作。
附图说明
图1示出根据本发明示例性实施例的控件动作执行方法的流程图。
具体实施方式
本公开的各个实施例将在下文中参考附图更详细地描述,附图构成了本公开的一部分,并通过说明示出了用于实现本发明的特定示例性实施例。然而,本发明可体现为众多不同的形式,且不应被解释为限于此处所述的实施例;相反,提供这些实施例使得本公开将是充分且完整的,且将向本领域的技术人员全面传达范围。本公开可被实现为方法或设备等。从而,本公开可采取完全硬件实施例、完全软件实施例、或组合软件和硬件方面的实施例的形式。以下详细描述从而不应以限制的含义解释。
本发明所应用的计算环境包括通用或服务器类型的计算机和显示设备。然而,计算环境可包括其它类型的计算设备。计算机环境可包括手持或膝上型设备、机顶盒、游戏操纵台、大型计算机等。此外,计算环境可使用分布式处理配置。在分布式计算环境中,计算资源可在环境中物理分离。示例性计算机包括一个或多个处理器或处理单元、系统存储器和总线。总线将各种系统组件连接在一起。例如,总线将处理器连接到系统存储器。总线可用各种总线结构或总线结构的组合来实现,包括存储器总线或存储器控制器、外围总线、加速图形端口和使用各种总线架构中任一种的处理器或局域总线。计算机还包括各种计算机可读介质,包括各自可以是可移动或不可移动的各种类型的易失性或非易失性介质。通常,上述计算机可读介质提供计算机可读指令、数据结构、程序模块和其它数据的非易失性存储以供计算机使用。例如,可读介质可存储操作系统、应用专用功能、其它程序模块和程序数据。计算机环境可包括各种输入设备。例如,计算机环境包括用于向计算机输入指令和信息的键盘和定点设备。计算机环境可包括其它输入设备,诸如麦克风、操纵杆、游戏垫、圆盘式卫星天线、串行端口、扫描仪、读卡设备、数码相机或摄像机等。输入/输出接口将输入设备耦合到处理单元。更一般地,输入设备可通过任何类型的接口和总线结构耦合到计算机,诸如并行端口、串行端口、游戏端口、通用串行总线端口等。计算机环境还包括显示设备。视频适配器将显示设备耦合到总线。除显示设备之外,计算机环境可包括诸如扬声器、打印机等的其它外围设备。计算机可在使用到诸如远程计算设备的一个或多个远程计算机的逻辑连接的网络化环境中操作。远程计算设备可包括任何类型的计算机设备,包括通用个人计算机、便携式计算机、服务器等。远程计算设备可包括以上相关于计算机描述的特征的全部或其某个子集。任何类型的网络可用于将计算机与远程计算设备耦合。计算机经由网络接口耦合到网络,该接口可使用宽带连接、调制解调器连接、DSL连接或其它连接策略。计算环境可提供用于连接计算机与远程计算设备的无线通信功能。
一般而言,程序模块包括执行特定的任务或实现特定的抽象数据类型的例程、程序、对象、函数、组件、数据结构和其他类型的结构。此外,本领域的技术人员将理解本发明可以使用其他计算机系统配置来实现,包括手持式设备、多处理器系统、基于微处理器或可编程消费电子产品、小型计算机、大型计算机等。本发明也可以在通过通信网络链接的远程处理设备执行任务的分布式计算环境中实现。在分布式计算环境中,程序模块可以位于本地和远程存储器存储设备中。其中,控件包括抽象控件、标准控件、自定义控件,控件动作封装模块进一步包括:抽象控件动作封装模块,用于对抽象控件的动作进行封装,具体地,提供对组件的封装,提供一个通用的从某个容器中获取一个组件以及对组件进行某些通用的点击操作,例如click、keyPress等;标准控件动作封装模块,用于对标准控件的动作进行封装,主要针对虚拟机中的一些标准的控件进行封装,例如JTree、JTable等控件;自定义控件动作封装模块,用于对自定义控件的动作进行封装。此外,在关键字执行实体获取控件时,通过给定的控件的相关信息确定控件以及控件在当前活动窗口的界面中的位置。其中,相关信息包括:控件序号、控件描述、控件定位信息。
事件触发层封装了一些常用的界面操作接口供句柄层调用,例如按钮的点击、菜单的选择以及文本框的输入等界面操作。当句柄层调用界面操作时首先需要对执行的动作进行解析并获取执行动作的参数,然后再构造事件去进行事件模拟,每个界面操作包含一个或者多个界面事件模拟。以文本框的输入为例,当句柄层调用文本框输入界面操作时,需要使文本框控件得到焦点同时触发文本框文本全部选中事件,最后依次触发每个字符的键盘输入事件,这样就完成了文本框的输入操作。借助于本发明的技术方案,提供了一种稳定的控件捕获和事件触发功能,并且以统一的接口,灵活的扩展机制,解决自定义控件问题,为一种基本自动化底层驱动,为各种自动化应用提供技术基础。本发明也可以应用于任何基于Java AWT/Swing界面应用程序的自动化测试。
图1示出根据本发明示例性实施例的控件动作执行方法的流程图。根据图1所述的方法流程图可知,所述方法包括:在第一控件处接收第一动作,如前所述其中,控件包括抽象控件、标准控件、自定义控件。当句柄层调用界面操作时首先需要对执行的动作进行解析并获取执行动作的参数,在本发明中所述执行动作的所有参数关联于一对象,而所述对象由所述第一动作所确定,即所述第一动作包括确定所述对象;在通过确定所述对象而得到所有参数之前响应于所述第一动作,判断所述对象是否合法,所述合法性判断可通过触发第二事件实现。接着,在第二控件处接收第二动作,控件包括抽象控件、标准控件、自定义控件。所述第二动作包括触发第一事件发生,即经由所述第二动作触发第一事件发生;响应于所述第二动作,触发所述第一事件发生;响应于所述第一事件,调用第一函数,容易理解触发第一事件后,在执行第一事件的时间内包括调用第一函数;响应于所述第一函数,在关联于所述第一事件的所述对象上执行第一操作,或者按照所述第一函数规则,基于关联于所述对象的相关参数执行第一操作。其中,所述第一操作是算术运算、或逻辑运算、或算术运算与逻辑运算的集合。
根据本发明一实施例,其中,判断所述对象是否合法包括:触发第二事件发生;响应于所述第二事件,调用第二函数;响应于所述第二函数,执行第二操作以判断所述对象是否合法,在一实施例中,按照第二函数规则,基于关联于所述对象的相关参数判断所述对象是否合法;优选地,通过对所述参数按照第二函数规则进行计算,计算出一验证码,然后将计算得到的验证码在合法验证码的集合中进行匹配,如果匹配成功则判断为合法,否则判断为不合法;另一优选实施例中,按照第二函数规则,解析关联于所述对象的用户ID参数,从而得到用户ID,然后将所述用户ID在合法用户ID集合中进行匹配,如果匹配成功则判断为合法,否则判断为不合法。其中,所述第二操作是算术运算、或逻辑运算、或算术运算与逻辑运算的集合。
根据本发明另一实施例,其中还包括:在第三控件处接收第三动作,控件包括抽象控件、标准控件、自定义控件。所述第三动作包括触发第三事件发生;响应于所述第三动作,触发所述第三事件发生;响应于所述第三事件,在关联于所述第三事件的图形用户接口上执行第三操作。其中,所述第三操作是显示操作、或呈现操作、或转移操作。
最后,在本文中通过首先标识许多特征能够解决的示例性问题来描述这些特征。这种说明方式并非承认他人已经以本文所指出的方式意识到和/或阐明这些问题。对相关领域中出现的问题的意识和阐明应被理解为本发明的一部分。具体而言,本文并非承认本公开的背景部分中描述的特征构成现有技术。此外,背景部分中有限问题集的描述并不是将本发明的应用限制于仅解决这些问题;它可应用于本文并未清除指出的问题和环境。此外,本公开的概述部分和摘要部分中阐述的主题不对权利要求书中阐述的主题产生限制。
更一般地,虽然以具体到结构特征和/或方法动作的语言来描述本发明,但是应该理解,所附权利要求书所定义的本发明没有必要受限于所述的具体特征或动作。相反,具体特征和动作可作为实现要求保护的本发明的示例性形式来公开。

Claims (5)

1.一种控件动作执行方法,所述方法包括:
在第一控件处接收第一动作,所述第一动作包括确定一对象;
响应于所述第一动作,判断所述对象是否合法;
在第二控件处接收第二动作,所述第二动作包括触发第一事件发生;
响应于所述第二动作,触发所述第一事件发生;
响应于所述第一事件,调用第一函数;
响应于所述第一函数,在关联于所述第一事件的所述对象上执行第一操作。
2.根据权利要求1所述的方法,其中,判断所述对象是否合法包括:触发第二事件发生;响应于所述第二事件,调用第二函数;响应于所述第二函数,执行第二操作以判断所述对象是否合法。
3.根据权利要求1所述的方法,其中所述第一操作是算术运算。
4.根据权利要求1所述的方法,其中所述第一操作是逻辑运算。
5.根据权利要求1所述的方法,其中所述第一操作是算术运算和逻辑运算的集合。
CN201210437581.6A 2012-11-06 2012-11-06 控件动作执行方法 Expired - Fee Related CN102929632B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210437581.6A CN102929632B (zh) 2012-11-06 2012-11-06 控件动作执行方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210437581.6A CN102929632B (zh) 2012-11-06 2012-11-06 控件动作执行方法

Publications (2)

Publication Number Publication Date
CN102929632A true CN102929632A (zh) 2013-02-13
CN102929632B CN102929632B (zh) 2017-02-15

Family

ID=47644444

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210437581.6A Expired - Fee Related CN102929632B (zh) 2012-11-06 2012-11-06 控件动作执行方法

Country Status (1)

Country Link
CN (1) CN102929632B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104572045A (zh) * 2013-10-16 2015-04-29 腾讯科技(深圳)有限公司 数据上传控件及方法
CN110688187A (zh) * 2019-09-27 2020-01-14 福建工程学院 一种应用程序定制功能界面中控件与功能函数的数据交互方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1755647A (zh) * 2004-09-29 2006-04-05 微软公司 测试自动化的堆栈分层
CN101263484A (zh) * 2005-09-12 2008-09-10 微软公司 声明性定义的控件动作
CN101364988A (zh) * 2008-09-26 2009-02-11 深圳市迅雷网络技术有限公司 一种确定网页安全性的方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1755647A (zh) * 2004-09-29 2006-04-05 微软公司 测试自动化的堆栈分层
CN101263484A (zh) * 2005-09-12 2008-09-10 微软公司 声明性定义的控件动作
CN101364988A (zh) * 2008-09-26 2009-02-11 深圳市迅雷网络技术有限公司 一种确定网页安全性的方法和装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104572045A (zh) * 2013-10-16 2015-04-29 腾讯科技(深圳)有限公司 数据上传控件及方法
CN104572045B (zh) * 2013-10-16 2019-01-29 腾讯科技(深圳)有限公司 数据上传控件及方法
CN110688187A (zh) * 2019-09-27 2020-01-14 福建工程学院 一种应用程序定制功能界面中控件与功能函数的数据交互方法

Also Published As

Publication number Publication date
CN102929632B (zh) 2017-02-15

Similar Documents

Publication Publication Date Title
US10705942B1 (en) Simulated testing of API
US9697108B2 (en) System, method, and apparatus for automatic recording and replaying of application executions
KR20210040884A (ko) 엣지 컴퓨팅 테스트 방법, 장치, 전자 장치 및 컴퓨터 판독 가능 매체
US8863113B1 (en) Method and system for unattended installation of guest operating system
US11422785B2 (en) Container orchestration framework
US20130283100A1 (en) Testing device
US9053241B2 (en) Scripting application with role identification
US11237948B2 (en) Rendering engine component abstraction system
CN103984626A (zh) 一种生成测试用例脚本的方法及装置
US10095328B2 (en) Virtual input device system
Rubinov et al. What are we missing when testing our android apps?
US10536339B2 (en) Systems and methods for system configuration for communication network devices
CN115658529A (zh) 用户页面的自动化测试方法以及相关设备
US20170041188A1 (en) Differential staging of devices in bulk enrollment
CN105453033A (zh) 程序测试服务
CN102929688A (zh) 一种模拟触摸屏的模拟器实现方法及该模拟器
CN102929632A (zh) 控件动作执行方法
CN112241373A (zh) 自动化测试方法、测试装置、处理器和测试系统
CN113434217B (zh) 漏洞扫描方法、装置、计算机设备及介质
CN108241488A (zh) 一种生成app界面的系统及方法
Göth Testing techniques for mobile device applications
JP7499429B1 (ja) アプリ遠隔操作システム、アプリ実行制御装置およびアプリ実行制御方法
CN113204494B (zh) 终端远程测试平台及方法、电子设备及可读介质
CN110825605B (zh) 一种模拟用户操作的方法、装置、设备及储存介质
US20240255920A1 (en) Selective Invocation of RPA Workflows Via API Calls

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
DD01 Delivery of document by public notice

Addressee: Suzhou Yiyuan Hongda Intellectual Property Agency Co.,Ltd.

Document name: Notification of Passing Preliminary Examination of the Application for Invention

SE01 Entry into force of request for substantive examination
DD01 Delivery of document by public notice

Addressee: Suzhou Yiyuan Hongda Intellectual Property Agency Co.,Ltd.

Document name: Notification of Publication and of Entering the Substantive Examination Stage of the Application for Invention

DD01 Delivery of document by public notice

Addressee: Suzhou Yiyuan Hongda Intellectual Property Agency Co.,Ltd.

Document name: the First Notification of an Office Action

C41 Transfer of patent application or patent right or utility model
CB03 Change of inventor or designer information

Inventor after: Ding Huangxiang

Inventor before: Wang Yuanyuan

COR Change of bibliographic data
TA01 Transfer of patent application right

Effective date of registration: 20170117

Address after: 325217 Ruian, Zhejiang Xian Xian Xian Xian Xian Village

Applicant after: Ding Huangxiang

Address before: Suzhou City, Jiangsu province 215100 Songjiang Road, Suzhou Industrial Park, No. 208 Building 8 Room 112

Applicant before: Suzhou Yiyuan Hongda Intellectual Property Agency Co.,Ltd.

C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170215

Termination date: 20171106