CN105339974B - 模拟传感器 - Google Patents

模拟传感器 Download PDF

Info

Publication number
CN105339974B
CN105339974B CN201380077854.3A CN201380077854A CN105339974B CN 105339974 B CN105339974 B CN 105339974B CN 201380077854 A CN201380077854 A CN 201380077854A CN 105339974 B CN105339974 B CN 105339974B
Authority
CN
China
Prior art keywords
instructions
application
sensed data
data
sensory input
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.)
Active
Application number
CN201380077854.3A
Other languages
English (en)
Other versions
CN105339974A (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.)
Weifosi Co., Ltd
Original Assignee
Antite Software 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 Antite Software Co Ltd filed Critical Antite Software Co Ltd
Publication of CN105339974A publication Critical patent/CN105339974A/zh
Application granted granted Critical
Publication of CN105339974B publication Critical patent/CN105339974B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B19/00Teaching not covered by other main groups of this subclass
    • G09B19/24Use of tools

Abstract

模拟传感器可包括钩住与感测数据相关联的应用程序以及使感测数据与自动化指令相关联。模拟传感器可包括向具有修改应用程序的能力的支持设备提供感测数据以及自动使支持设备通过执行自动化指令使用感测数据来模拟感测输入。

Description

模拟传感器
背景技术
业务过程可以是在组织的操作成功中的因素。可使用应用程序来实现业务过程。因此,组织可以对确保应用程序正确地操作(例如,如所预期的)感兴趣。因此,组织可继续进行评估和/或处理与应用程序相关联的问题。
附图说明
图1示出根据本公开的用于模拟传感器的环境的例子,各种例子可在该环境中实现。
图2示出根据本公开的记录用于模拟传感器的感测数据的流程图的例子。
图3A示出根据本公开的用于模拟传感器的系统的例子的图。
图3B示出根据本公开的用于模拟传感器的计算设备的例子的图。
图4示出根据本公开的用于模拟传感器的方法的例子的流程图。
具体实施方式
应用程序例如摄影应用程序、视频应用程序、位置识别应用程序等可支持业务过程和/或被包括在由业务过程生产的消费产品中。在对组织的提高其业务过程(例如支持业务过程的应用程序)的压力增加的情况下,组织可试图例如通过继续进行有效的应用程序测试来增加效率。应用程序测试可包括问题的识别和/或处理。
问题(例如应用程序问题)可以指当例如执行特定功能例如在特定应用程序内的例程和/或任务时遇到的困难。功能可由移动设备执行。移动设备指包括传感器的电子设备,例如移动电话、数字照相机、支付仪器等。传感器是能够捕获感测输入(例如光、位置、运动、蜂窝网络流量等)和/或输出感测数据的电子设备。感测数据指表示感测输入的信息(例如电子数据)。传感器的例子包括可被包括在移动设备中和/或向支持业务过程的应用程序提供感测数据的加速计、全球定位系统(GPS)、麦克风、通信天线(例如蜂窝网络天线、蓝牙天线等)、陀螺仪、成像传感器(例如照相机、视频记录器等)等。
移动设备可包括可利用从传感器(例如GPS传感器)传递的感测数据以执行功能(例如找出最近的ATM的位置)的应用程序。例如对利用感测数据的应用程序的问题可禁止应用程序如所预期的起作用(例如找出最近的ATM的位置)。相应地,确保应用程序的正确功能性可能是可取的。然而,由于当今的业务过程应用程序的多样化和复杂的性质,应用程序测试可以是有挑战性的、复杂的和/或昂贵的。
然而,模拟传感器可有助于应用程序测试。用于模拟传感器的一些以前的技术可依赖于在现场环境(例如用户环境)中执行的模拟和/或用户手动地操作移动设备和/或传感器。然而,这样的方法证明是复杂和/或昂贵的以及是低效的。此外,这样的方法可能不再现(或准确地再现)问题。例如,在现场环境中尝试应用程序测试可能不一致地复制在与(例如,最初识别到的)问题相关联的时间和/或地点由传感器(例如蜂窝网络天线)捕获的感测输入(例如蜂窝网络流量)和/或可能不为了给定应用程序测试的目的如所预期的捕获感测输入。当在云环境中操作移动设备时,这样的再现困难可能是复合的。例如,当在云环境中操作时,移动设备的传感器(例如蜂窝网络天线)可由于移动设备的限制和/或由便于云环境的那些置于移动设备上的操作约束而成为无效的。
相比之下,本公开的例子包括用于模拟传感器的方法、系统和计算机可读和可执行指令。模拟传感器指钩住与感测数据相关联的应用程序,使感测数据与自动化指令相关联,将自动化指令提供给具有修改应用程序的能力的支持设备,以及自动使支持设备通过执行自动化指令使用感测数据来模拟感测输入。
可在支持环境中执行这样的传感器模拟。如本文所述,支持环境指可使支持人员(例如应用程序开发者)能够例如基于在支持环境中模拟传感器来修改应用程序的环境。与和应用程序相关联的问题有关的存储的感测数据可由支持设备访问,和/或实时感测数据可被捕获并提供给支持设备。支持设备可以指具有修改应用程序并使用所存储的感测数据和/或实时感测数据来模拟传感器的能力以及其它能力的电子设备。对于待模拟的感测输入,可使支持设备(例如位于支持环境中的支持设备)通过执行自动化指令使用感测数据(例如所记录的感测数据)来模拟感测输入,如在本文所述的。
现场环境指包括能够捕获感测输入作为感测数据的传感器的环境。传感器可被包括在移动设备中和/或可作为独立传感器来操作。现场环境与支持环境分开且不同。如在本文所述的,分开和不同指环境在物理上是分开的和/或相对于另一网络具有单独的网络资源(例如产生网络流量的网络资源)。以这种方式,可使用从实际传感器(例如在位于现场环境中的移动设备中的)捕获的感测数据来测试(例如调试)应用程序,从而避免复杂化和费用(例如与在现场环境中也在支持环境中的每个移动设备和/或传感器相关联的费用),还有其它优点。然而,本公开并不被这样限制。也就是说,感测数据可存储在数据存储(datastore)中和/或在随后的时间被访问用于应用程序测试。
在各种例子中,可利用自动化指令(例如自动化脚本)来自动使支持设备模拟感测输入。也就是说,相比于可在由用户(例如通过图形用户界面)提供的输入之后发起的常规模拟,可在没有来自用户的输入(例如鼠标点击、音频输入、触觉输入等)的情况下实现这样的模拟。在不依赖于对这样的输入(例如用户提供输入)的可用性的情况下模拟传感器可促进一致的、有效的和/或效率高的应用程序测试。
问题可由支持应用程序的那些人(例如应用程序的开发者和/或IT管理员)和/或由在现场环境中使用应用程序的那些人确定。问题可基于服务级别协议(SLA)和/或被自动确定(例如通过业务服务模块(BSM)),以及确定问题的其它方式。在一些例子中,附加的优点可通过这样的方法、系统和计算机可读和可执行指令与性能监控解决方案例如BSM的集成来实现。BSM指能够执行包括问题确定、数据分析和/或数据的操纵的功能以及其它功能的指令和/或硬件。BSM可耦合到引擎,例如本文所述的引擎。这样的集成可便于问题的自动检测和/或感测数据的自动捕获(例如当确定问题时)。
在本公开的下面的详细描述中,参考构成本说明书一部分的附图,且其中作为例证示出本公开的例子可如何被实践。这些例子被足够详细地描述以使本领域的普通技术人员能够实践本公开的例子,且应理解,其它例子可被利用以及过程、电气和/或结构变化可被做出而不偏离本公开的范围。
如将认识到的,在本文的各种例子中示出的元件可被添加、交换和/或消除,以便提供对本公开的多个附加例子。此外,在附图中提供的元件的比例和相对规模意欲示出本公开的例子,且不应在限制性意义上被理解。如在本文使用的,“多个”元件和/或特征可以指这样的元件和/或特征中的一个或多个。此外,“例如”和相似的用语意欲意指“作为例子而不是作为限制”。
图1示出根据本公开的用于模拟传感器的环境的例子,各种例子可在该环境中实现。环境100被示为包括系统104、移动设备102-1、102-2、…、102-N、支持设备110-1、110-2、…、110-P、数据存储108和链路106,其中系统104用于模拟传感器。数据存储108可类似于关于图3A所讨论的那些数据存储。系统104可包括类似于关于图3B所讨论的计算设备。如本文所述的移动设备102-1、…、102-N可以是包括传感器的计算设备(例如电子设备)。
支持设备110-1、…、110-P代表访问感测数据(例如电子数据)的计算设备,该计算设备具有浏览器和/或其它应用程序以传递这样的感测数据、修改应用程序和/或通过执行自动化指令使用所记录的感测数据模拟感测输入。支持设备110-1、…、110-P可包括数字显示器,例如图形用户界面(GUI)112。类似地,在一些例子中,移动设备102-1、…、102-N可包括适合于电子数据的显示的数字显示器(未示出)。
用户界面可包括硬件部件和/或计算机可读指令部件。例如,硬件部件可包括输入部件(例如鼠标、触摸屏和键盘)和/或输出部件(例如显示器)。示例用户界面可包括GUI。GUI可例如数字地表示模拟的感测输入。也就是说,在一些例子中,可通过支持设备的用户界面来显示感测数据。这样的显示可便于在用户和计算机之间的交互(例如允许用户使用图像和/或文本与计算机交互)。例如,模拟的感测输入(例如被布置为照片的光)可被显示以促进模拟的感测输入的验证。验证可包括视觉验证(例如感测输入如用户所预期的被模拟)和/或自动验证,如本文所述的。
链路106(例如网络)代表经由远程通信链路、红外链路、射频链路和/或提供电子通信的其它连接器或系统的电缆、无线、光纤或远程连接。也就是说,链路106可例如包括到内联网、互联网或这两者的组合的链路,以及其它通信接口。链路106还可包括中间代理,例如中间代理服务器(未示出)、路由器、交换机、负载平衡器等。
如本文所述的用于模拟传感器的系统104可代表硬件和指令的不同组合以模拟传感器。用于模拟传感器的系统104可包括计算设备(未示出),例如,如关于图3B所讨论的计算设备355。
计算设备可包括用于钩住应用程序例如本文所述的那些应用程序的指令。钩住(hook)指监控应用程序、改变应用程序和/或否则得到对应用程序的控制的各种技术。例如,到/来自应用程序的功能调用、消息和/或网络流量可通过钩住被拦截和/或复制。钩住应用程序可包括物理修改(例如在应用程序执行之前注入包括用于钩到应用程序内的可执行指令的库)和/或应用程序的运行时间修改(用于在操作系统的运行时间期间和/或在应用程序的功能的执行期间在应用程序中钩住的注入可执行指令)。这样的指令(例如可执行指令的库)可被移除(例如在将应用程序引入现场环境中之前)以给用户提供具有原始指令的应用程序(例如没有用于钩住的指令/库)。
在一些例子中,在专有操作系统(OS)上操作的应用程序可被钩住。也就是说,钩住可以指OS的适当类型、指令的类型(例如JavaScript、C#等)和/或应用程序类型(例如文件类型)的钩住。例如,应用程序(例如摄影应用程序)可使用传感器来捕获感测输入(例如光)作为感测数据。可通过钩住应用程序来记录这样的感测数据。例如,与传感器相关联的应用程序的功能(例如功能调用)(例如调用传感器)可被钩住以记录传感器发送到应用程序/从应用程序接收的信息(例如所有信息)。记录指存储数据(例如感测数据)。所记录的数据可连同与其相关联的信息(例如元数据)一起被存储。这样的信息可包括感测数据产生的时间、与感测数据相关联的应用程序、调用待产生的感测数据的应用程序功能、和/或捕获该感测数据的传感器,以及促进模拟传感器的其它信息。这样的信息可存储在数据存储(例如,如关于图1讨论的数据存储108)中。这样的钩住可能对希望调试应用程序(例如在现场环境中的应用程序)的应用程序开发者特别有用。
在各种例子中,感测数据和/或与其相关联的信息(例如所记录的感测数据的地址)可与自动化指令相关联。自动化指令指自动(例如没有用户输入)执行给定的应用程序功能的指令。自动化指令的例子包括用户界面(UI)自动化指令和/或应用程序编程接口(API)自动化指令,以及其它适当类型的自动化指令。自动化指令可规定应用程序可如何与其它应用程序、传感器、数据存储等交互。例如,自动化指令可包括感测数据和/或与感测数据相关联的位置(例如数字存储的位置,其中特定的感测数据可被访问)。在一些例子中,与感测数据相关联的位置可被嵌在自动化指令中。
自动化指令可例如执行特定应用程序的各种功能。例如,特定的自动化指令可执行摄影应用程序的功能,使得每当摄影应用程序试图执行功能(例如发起功能调用)以通过传感器拍摄照片时,自动化指令可返回以前捕获的感测数据(例如存储在数据存储中)而不是由传感器发起感测数据的实时捕获。传感器的这样的模拟可促进应用程序的一致、高效和/或有效测试。此外,这样的模拟可能对利用传感器来测试特定的应用程序是可取的,该传感器用以向可能还不存在的(例如开发中的移动设备)和/或在与测试相关联的特定地点处(例如支持环境)不可用的移动设备提供感测数据。
图2示出根据本公开的记录用于模拟传感器的感测数据的流程图的例子。如图2所示,示例流程图215可包括测试工具216、传感器模拟器217和/或应用程序218(例如在测试中的应用程序)。测试工具216可执行多种测试功能,例如在219、220、222和/或223描述的那些测试功能以及其它测试功能。传感器模拟器217可执行例如在221描述的多个模拟功能以及其它模拟功能。测试工具216和传感器模拟器217可被包括在单个设备(例如支持设备)中和/或分布在多个设备中。此外,测试工具216可以完全或部分地集成在与传感器模拟器217相同的设备中,或可以是分离的但对该设备和传感器模拟器217可访问。
测试工具216可用于记录感测数据,如在219示出的。也就是说,应用程序可被钩住,如在本文所述的,使得应用程序的功能(例如功能调用)和/或与功能相关联的信息可被拦截和/或记录。
测试工具216可包括测试指令和/或接收测试指令(例如从数据存储)。测试指令指可执行来测试应用程序的指令,例如应用程序的测试功能。测试指令可由测试工具216执行以测试(例如自动测试)应用程序。例如,测试指令可使应用程序请求感测数据(例如从传感器)。这样的测试指令和/或与其相关联的信息(例如元数据)可被记录,如在220示出的。例如,包括测试指令能够测试的功能的应用程序可被钩住以记录测试指令。测试指令的执行可包括自动化指令的执行。也就是说,自动化指令可包括自动执行测试指令的指令。
如在221示出的,感测输入可由传感器捕获作为感测数据,和/或感测数据可被提供到测试工具216以被记录,如在222示出的。在一些例子中,可响应于测试指令而发起感测数据的记录。例如,在220记录的测试指令可发起感测数据的记录。如在223示出的,类似于220,测试工具216可记录测试指令。测试指令可以例如是不同的测试指令(例如与在220记录的测试指令比较是不同的)。
类似地,测试工具216和传感器模拟器217可用于使用模拟的感测输入来测试应用程序。在一些例子中,可响应于测试指令来模拟感测输入。例如,可执行测试指令以将请求(例如功能调用)发送到应用程序以测试应用程序的功能。当应用程序接收到请求时,应用程序可执行功能(例如将功能调用发送到传感器)。由应用程序发送(例如在预期接收者是传感器的情况下被发送)的功能调用可被拦截(例如通过钩住应用程序)。可模拟(例如使用表示感测输入的所记录的感测数据由传感器模拟器217模拟)感测输入。可返回这样的模拟的感测输入作为从应用程序发送的被拦截的功能调用的结果,而不是从传感器返回传感器数据。在一些例子中,可响应于测试指令和/或在测试指令之间模拟感测输入。响应于测试指令而使模拟的感测输入这样交织(interweave)可实现应用程序的一致、可靠和有效的测试(例如自动测试)。
图3A示出根据本公开的用于模拟传感器的系统340的例子的图。系统340可包括数字存储308(例如类似于如在图1中提到的数据存储108)、模拟系统342和/或多个引擎。模拟系统342可与数据存储308通信。模拟系统342可包括多个引擎(例如捕获引擎343、访问引擎344、关联引擎346、提供引擎348、模拟引擎350等)。模拟系统342可包括附加的或比所示的更少的引擎以执行本文所述的各种功能。
多个引擎可包括硬件和程序编制的组合以执行本文所述的多个功能(例如访问和/或记录感测数据等)。引擎中的每个可包括被指定或设计来执行模块(例如特定模块)的硬件或硬件和程序编制的组合。程序编制可包括存储在存储器资源(例如计算机可读介质)中的指令(例如软件、固件等)以及硬线(hard-wired)程序(例如逻辑)。
捕获引擎343可包括捕获感测输入作为感测数据的硬件和/或硬件和程序编制的组合。捕获可包括感测输入(例如光)到表示感测输入的感测数据(例如电子数据)的转换。捕获引擎可包括传感器,例如,如在本文所述的那些传感器。
访问引擎344可包括例如通过钩住与感测数据相关联的应用程序来记录感测数据的硬件和/或硬件和程序编制的组合。记录感测数据可包括将感测数据记录到储存器(例如数据存储)内。这样的记录可包括记录感测数据和/或与感测数据相关联的信息(例如元数据),例如感测数据产生的时间、以及促进模拟传感器的其它信息。在一些例子中,访问引擎344可通过钩住包括专有操作系统的应用程序来记录感测数据,如本文所述的。
在一些例子中,访问引擎344可例如通过钩住与感测数据(例如所记录的感测数据)相关联的应用程序来访问感测数据。访问感测数据可包括访问现有的感测数据(例如以前捕获并记录在数据存储108中的)和/或最新捕获(例如实时)感测数据的发现(例如通过传感器并随后存储在数据存储108中)。感测数据的捕获和/或访问(例如记录)可周期性地(例如在有规律地出现的时间和/或时间间隔)、在请求(例如由IT管理员发起)时或在事件(例如与性能标准例如由SLA规定的那些性能标准的偏差)的意外出现时出现。
关联引擎346可包括使感测数据(例如所记录的感测数据)与自动化指令(例如UI和/或API)相关联的硬件和/或硬件和程序编制的组合,自动化指令与应用程序相关联。例如,关联可包括将存储感测数据(例如所记录的感测数据)的数据存储的地址嵌入自动化指令中。在这样的例子中,自动化指令可在被执行时使感测数据被访问(例如从数据存储取回)。
提供引擎348可包括向具有修改应用程序的能力的支持设备提供自动化指令的硬件和/或硬件和程序编制的组合。例如,可执行指令(例如可执行指令的库)和/或硬件可被提供给支持设备。这样的指令可包括自动化指令和/或感测数据。感测数据可直接和/或间接地被提供。直接提供感测数据指将感测数据直接包括在自动化指令中。间接提供感测数据可以例如指提供感测数据的地址(例如包括位置)。例如,感测数据的地址可被嵌入自动化指令中。在一些例子中,提供引擎348可提供测试指令,例如关于图2讨论的那些测试指令。
模拟引擎350可包括自动使支持设备通过执行自动化指令使用所记录的感测数据来模拟感测输入的硬件和/或硬件和程序编制的组合。引起(例如自动引起)显示可包括执行存储在存储器中的指令以直接使支持设备显示例如模拟的感测输入和/或传递数据,预期其由另一设备处理以使支持设备显示模拟的感测输入。在一些例子中可响应于测试指令(例如测试指令的执行)例如如关于图2所讨论的测试指令来模拟感测输入。在一些例子中,模拟感测输入(例如引起模拟的感测输入的显示)可包括在没有用户输入的情况下模拟感测输入。
在一些例子中,模拟引擎350可包括实现模拟引擎350以例如通过使(例如自动使)支持设备显示模拟的感测输入来验证模拟的感测输入的可执行指令。这样的显示可容易使用户能够测试应用程序和/或验证模拟的感测输入。验证可包括验证模拟的感测输入的出现和/或验证与标准(例如性能标准)的符合。这样的标准的例子可包括期望响应时间(例如网页加载时间)和/或期望模拟质量(例如分辨率、完成模拟的时间等)等。这样的验证可基于SLA和/或自动(例如通过BSM)由用户(例如由用户通过GUI)执行。相应地,在一些例子中,模拟引擎350可包括向具有验证模拟的感测输入的能力的BSM(例如应用程序使用户账户被添加和/或开启Wi-Fi天线等))提供模拟的感测输入的指令。
图3B示出根据本公开的用于模拟传感器的计算设备的例子的图。计算设备355可利用软件、硬件、固件和/或逻辑来执行本文所述的多个功能。
计算设备355可以是硬件和指令的组合以共享信息。硬件例如可包括处理资源360和/或存储资源364(例如计算机可读介质(CRM)、数据库等)。如在本文使用的处理资源360可包括能够执行由存储器资源364存储的指令的多个处理器。处理资源360可集成在单个设备中或分布在多个设备当中。指令(例如计算机可读指令(CRI))可包括存储在存储器资源364上并由处理资源360可执行以实现期望功能(例如模拟感测输入等)的指令。
存储器资源364可与处理资源360通信。如在本文使用的存储器资源364可包括能够存储可由处理资源360执行的指令的多个存储器部件。这样的存储器资源364可以是非临时性CRM。存储器资源364可集成在单个设备中或分布在多个设备当中。此外,存储器资源364可全部或部分地集成在与处理资源360相同的设备中,或其可以是分离的但该设备和处理资源360可访问。因此注意,计算设备355可在支持设备和/或支持设备的集合上、在移动设备和/或移动设备的集合上、和/或在支持设备和移动设备的组合上实现。
存储器资源364可经由通信链路(例如路径)362与处理资源360通信。通信链路362可以对与处理资源360相关联的计算设备是本地的或远程的。本地通信链路362的例子可包括在计算设备内部的电子总线,其中存储器资源364是经由电子总线与处理资源360通信的易失性、非易失性、固定和/或可移动存储介质之一。
存储器资源364可包括多个模块,例如访问模块366、关联模块368、提供模块370和模拟模块372。多个模块366、368、370、372可包括CRI,该CRI当由处理资源360执行时可执行多个功能。多个模块366、368、370、372可以是其它模块的子模块。例如,访问模块366和关联模块368可以是子模块和/或被包含在同一计算设备内。在另一例子中,多个模块366、368、370、372可包括在分开和不同的位置处的单独模块(例如CRM等)。
多个模块366、368、370、372中的每个可包括当由处理资源360执行时可以起如本文所述的相应引擎的作用的指令。例如,模拟模块372可包括当由处理资源360执行时可以起模拟引擎350的作用的指令。例如,模拟模块372可包括CRI,该CRI当由处理资源360执行时可自动使支持设备通过执行自动化指令使用感测数据来模拟感测输入。
图4示出根据本公开的用于模拟传感器的方法的例子的流程图。如在块484示出的,在各种例子中,方法480可包括通过钩住与感测数据相关联的应用程序来记录感测数据。记录可包括执行存储在存储器中的指令以通过钩住与感测数据相关联的应用程序来记录感测数据。类似地,块486和488、490和492可包括执行存储在存储器中的指令以执行本文所述的方法的例子。
如在块486所示的,方法480可包括使感测数据与自动化指令相关联。关联指将使感测数据(例如相应于由应用程序的给定功能可得到的感测数据)与自动化指令相关联的信息包括在自动化指令中。在一些例子中,使感测数据与自动化指令相关联可包括将数据存储的地址嵌入自动化指令内。也就是说,地址可相应于包括所记录的感测数据的数字存储,在被执行时自动化指令可调用所记录的感测数据。在一些例子中,所记录的感测数据中的一些或全部可包括在自动化指令内。
如在块488所示的,在各种例子中,方法480可包括向具有修改应用程序的能力的支持设备提供感测数据。例如,感测数据可被提供给位于支持环境中的支持设备。支持设备可修改应用程序以处理(例如解决)问题。该方法可在一些例子中包括基于模拟的感测输入(例如用于识别问题的模拟的感测输入)来修改应用程序。这样的修改(例如调试)可包括修改与应用程序相关联的可执行代码和/或设置,例如数据存储和/或传感器选择(例如由应用程序利用的那些)、以及与应用程序相关联的其它设置。在一些例子中,所修改的代码和/或所修改的设置可例如代替以前的代码和/或以前的设置。例如,在一些例子中,指令可被提供给移动设备以响应于待与和用户设备相关联的设置相关的问题被识别(例如由支持人员)而修改与移动设备相关联的设置。所修改的代码和/或所修改的设置可在计算机可读介质中被存储为例如一组指令。然而,本公开并不被这样限制。也就是说,修改可包括修改直接或间接与适合于处理问题的应用程序相关联的部件,例如传感器。
如在块490所示的,在各种例子中,方法480可包括自动使支持设备通过执行自动化指令使用所记录的感测数据来模拟感测输入。在一些例子中,该方法可包括使支持设备响应于在与现场环境分开和不同的支持环境中的支持设备处接收到感测数据使用感测数据来模拟问题,如在本文所述的。
在一些例子中,该方法可包括验证模拟的感测输入。这样的验证可在一些例子中包括使支持设备显示模拟的感测输入。可例如基于所显示的模拟感测输入来验证特定的模拟的感测输入的质量(例如特定的分辨率)、存在(例如完全模拟)和/或数量(例如副本)。这样的验证可由用户(例如由用户通过GUI)执行、基于SLA和/或被自动执行(例如由BSM)。
每个自动化指令可包括相关验证指令。例如,基于感测输入添加用户的自动化指令可包括确保用户被添加的验证。这样的验证可包括在没有与应用程序的进一步交互的情况下(例如不执行除了被执行来引起模拟的感测输入的那些指令以外的指令)的验证。例如,用户的总数响应于添加用户的自动化指令而增加的视觉验证。类似地,可通过视觉地观察指示Wi-Fi的Wi-Fi图标是否已开启,通过自动化指令被激活(例如照亮),来验证开启Wi-Fi天线的自动化指令。
在一些例子中,验证可包括创建检查点(例如在完成整个感测输入之前的时间点)以验证模拟的感测输入的一部分的出现(例如,模拟的感测输入的该部分被预期)。例如,给定输入(例如相应于由摄影应用程序拍摄的给定照片的光量)的模拟、检查点可相应于给定输入的总量的完成的百分比和/或可相应于由应用程序利用的特定功能/动作(例如,按尺寸排列、图像增强等)的执行。
如在块492所示的,在各种例子中,方法480可包括使用模拟的感测输入来测试应用程序。这样的测试可包括执行测试指令和/或模拟感测输入(例如响应于测试指令),例如,如关于图2讨论的那些测试指令。
如在本文使用的,“逻辑”是执行本文所述的动作和/或功能等的可选的或附加的处理资源,其包括硬件(例如各种形式的晶体管逻辑、专用集成电路(ASIC)等),与存储在存储器中并由处理资源可执行的计算机可执行指令(例如软件、固件等)相反。
本文的附图遵循编号协定,其中最前面的数字或多个数字相应于附图号而其余数字标识在附图中的元件或部件。可通过使用类似数字来标识在不同附图之间的类似的元件或部件。例如,108可提及在图1中的元件“08”,且类似的元件在图3中可被提及为308。
说明书例子提供应用程序的描述和本公开的系统和方法的使用。因为很多例子可被做出而不偏离本公开的系统和方法的精神和范围,本说明书阐述了很多可能的示例配置和实施方式中的一些。

Claims (15)

1.一种存储一组指令的非临时性计算机可读介质,所述指令由处理资源可执行以:
通过钩住与感测数据相关联的应用程序来访问所述感测数据;
使所述感测数据与自动化指令相关联;
向具有修改所述应用程序的能力的支持设备提供所述自动化指令;
自动使所述支持设备对所述应用程序执行修改;以及
自动使所述支持设备通过执行所述自动化指令使用所述感测数据来模拟所修改的应用程序的感测输入,以使所修改的应用程序基于模拟的感测输入执行功能。
2.如权利要求1所述的介质,其中所述指令包括由所述处理资源可执行以使用模拟的感测输入来测试所修改的应用程序的指令。
3.如权利要求1所述的介质,其中访问所述感测数据的指令包括由所述处理资源可执行以访问通过钩住在专有操作系统上执行的应用程序而记录的感测数据的指令。
4.如权利要求1所述的介质,其中所述指令包括由所述处理资源可执行以验证模拟的感测输入的指令。
5.如权利要求4所述的介质,其中验证的指令包括由所述处理资源可执行以向具有自动验证所述模拟的感测输入的能力的业务服务模块提供所述感测数据的指令。
6.如权利要求1所述的介质,其中模拟感测输入的指令包括由所述处理资源可执行以在没有用户输入的情况下模拟所述感测输入的指令。
7.一种包括与非临时性计算机可读介质通信的处理资源的系统,所述非临时性计算机可读介质具有由所述处理资源可执行的指令以实现:
捕获引擎,用于捕获感测输入作为感测数据;
访问引擎,用于通过钩住与所述感测数据相关联的应用程序来记录所述感测数据;
关联引擎,用于使所述感测数据与自动化指令相关联,所述自动化指令与所述应用程序相关联;
提供引擎,用于向具有修改所述应用程序的能力的支持设备提供所述自动化指令;
执行引擎,用于自动使所述支持设备对所述应用程序执行修改;以及
模拟引擎,用于自动使所述支持设备通过执行所述自动化指令使用所记录的感测数据来模拟所修改的应用程序的感测输入,以使所修改的应用程序基于模拟的感测输入执行功能。
8.如权利要求7所述的系统,其中实现所述模拟引擎以模拟所述感测输入的指令包括由所述处理资源可执行来实现所述模拟引擎以响应于测试所修改的应用程序的测试指令的执行而模拟所述感测输入的指令。
9.如权利要求7所述的系统,其中实现所述访问引擎以记录所述感测数据的指令包括由所述处理资源可执行以将所述感测数据记录在数据存储中的指令和由所述处理资源可执行来实现所述访问引擎以从数据存储访问所述感测数据的指令。
10.如权利要求7所述的系统,其中所述指令包括由所述处理资源可执行来实现所述提供引擎以向所述支持设备提供所记录的感测数据的指令。
11.如权利要求7所述的系统,其中实现所述捕获引擎以捕获所述感测输入的指令包括由所述处理资源可执行来实现所述捕获引擎以从位于现场环境中的传感器捕获所述感测输入的指令,所述现场环境与包括所述支持设备的支持环境分开且不同。
12.一种用于模拟传感器的方法,包括:
通过钩住与感测数据相关联的应用程序来记录所述感测数据;
使所述感测数据与自动化指令相关联;
向位于支持环境中的具有修改所述应用程序的能力的支持设备提供所述感测数据;
自动使所述支持设备对所述应用程序执行修改;
自动使所述支持设备通过执行所述自动化指令使用所记录的感测数据来模拟感测输入;以及
使用模拟的感测输入测试所修改的应用程序。
13.如权利要求12所述的方法,其中使所述感测数据与自动化指令相关联包括在所述自动化指令中嵌入用于存储所记录的感测数据的数据存储的地址。
14.如权利要求12所述的方法,其中所述方法包括基于所述模拟的感测输入来修改所述应用程序。
15.如权利要求12所述的方法,其中所述方法包括通过使所述支持设备显示所述模拟的感测输入的电子表示来验证所述模拟的感测输入。
CN201380077854.3A 2013-06-28 2013-06-28 模拟传感器 Active CN105339974B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2013/048567 WO2014209362A1 (en) 2013-06-28 2013-06-28 Simulating sensors

Publications (2)

Publication Number Publication Date
CN105339974A CN105339974A (zh) 2016-02-17
CN105339974B true CN105339974B (zh) 2019-12-31

Family

ID=52142485

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380077854.3A Active CN105339974B (zh) 2013-06-28 2013-06-28 模拟传感器

Country Status (4)

Country Link
US (1) US10169216B2 (zh)
EP (1) EP3014562A4 (zh)
CN (1) CN105339974B (zh)
WO (1) WO2014209362A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11328623B2 (en) * 2017-07-31 2022-05-10 General Electric Company System and method for using wearable technology in manufacturing and maintenance
CN108363609B (zh) * 2018-02-07 2021-11-30 腾讯科技(深圳)有限公司 模拟传感器的方法、装置和存储介质
CN109308261A (zh) * 2018-09-11 2019-02-05 百度在线网络技术(北京)有限公司 应用程序调试方法、装置、系统、设备和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7237223B2 (en) * 2003-04-11 2007-06-26 The Boeing Company Apparatus and method for real-time caution and warning and system health management
CN102591771A (zh) * 2010-11-18 2012-07-18 国际商业机器公司 关于对访问请求的意外响应验证计算机程序的方法和装置
CN103108320A (zh) * 2011-11-15 2013-05-15 网秦无限(北京)科技有限公司 一种监控移动设备的应用程序的方法和系统

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3436840A (en) * 1966-08-31 1969-04-08 Bendix Corp Fog simulator and method for accomplishing airborne simulation of a fog
US5784615A (en) * 1994-12-13 1998-07-21 Microsoft Corporation Computer system messaging architecture
US5826265A (en) * 1996-12-06 1998-10-20 International Business Machines Corporation Data management system having shared libraries
US6751583B1 (en) * 1999-10-29 2004-06-15 Vast Systems Technology Corporation Hardware and software co-simulation including simulating a target processor using binary translation
US6606566B1 (en) * 1999-11-01 2003-08-12 Steven A. Sunshine Computer code for portable sensing
US7546602B2 (en) * 2001-07-10 2009-06-09 Microsoft Corporation Application program interface for network software platform
US7334028B2 (en) * 2003-05-21 2008-02-19 Hewlett-Packard Development Company, L.P. Tiered multi-source software support using automated diagnostic-data transfers
US8690325B1 (en) * 2005-07-12 2014-04-08 Sandy Helene Straus Sensory input devices, sensory output devices, and automatic systems, methods, and apparatuses for at least one of mass measurement, evaluation, or communication
US8291387B2 (en) * 2005-11-22 2012-10-16 International Business Machines Corporation Method and system for testing a software application interfacing with multiple external software applications in a simulated test environment
US20080244062A1 (en) * 2007-03-26 2008-10-02 Microsoft Corporation Scenario based performance testing
US8073805B2 (en) 2007-09-26 2011-12-06 Nike, Inc. Sensory testing data analysis by categories
EP2350787A4 (en) * 2008-10-20 2012-05-16 3M Innovative Properties Co TOUCH SYSTEMS AND METHODS WITH TAILOR-MADE SENSORS AND GENERAL CONTROLS
US8719776B2 (en) 2009-12-30 2014-05-06 Foneclay, Inc. System for creation and distribution of software applications usable on multiple mobile device platforms
US8291408B1 (en) 2010-03-10 2012-10-16 Google Inc. Visual programming environment for mobile device applications
US20120173490A1 (en) * 2010-12-30 2012-07-05 Verisign, Inc. Method and system for implementing business logic
KR20120097006A (ko) 2011-02-24 2012-09-03 삼성전자주식회사 센서 데이터 운용 시스템 및 방법
US9535817B2 (en) * 2011-06-10 2017-01-03 Microsoft Technology Licensing, Llc Application development environment for portable electronic devices
US9239989B2 (en) * 2012-03-28 2016-01-19 General Electric Company Computer-implemented system with adaptive cognitive features and method of using the same
US20140068569A1 (en) * 2012-08-31 2014-03-06 Microsoft Corporation User directed profiling
FI124560B (en) * 2012-09-14 2014-10-15 Codenomicon Oy Monitoring of the operation of the communication protocol procedure
US10545775B2 (en) * 2013-06-28 2020-01-28 Micro Focus Llc Hook framework
US9358685B2 (en) * 2014-02-03 2016-06-07 Brain Corporation Apparatus and methods for control of robot actions based on corrective user inputs
US9860077B2 (en) * 2014-09-17 2018-01-02 Brain Corporation Home animation apparatus and methods

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7237223B2 (en) * 2003-04-11 2007-06-26 The Boeing Company Apparatus and method for real-time caution and warning and system health management
CN102591771A (zh) * 2010-11-18 2012-07-18 国际商业机器公司 关于对访问请求的意外响应验证计算机程序的方法和装置
CN103108320A (zh) * 2011-11-15 2013-05-15 网秦无限(北京)科技有限公司 一种监控移动设备的应用程序的方法和系统

Also Published As

Publication number Publication date
CN105339974A (zh) 2016-02-17
US10169216B2 (en) 2019-01-01
EP3014562A1 (en) 2016-05-04
EP3014562A4 (en) 2016-11-30
US20160132424A1 (en) 2016-05-12
WO2014209362A1 (en) 2014-12-31

Similar Documents

Publication Publication Date Title
CN109302522B (zh) 测试方法、装置以及计算机系统和介质
US10853232B2 (en) Adaptive system for mobile device testing
US9697108B2 (en) System, method, and apparatus for automatic recording and replaying of application executions
Amalfitano et al. Testing android mobile applications: Challenges, strategies, and approaches
CN108959068B (zh) 软件界面测试方法、设备及存储介质
US9342237B2 (en) Automated testing of gesture-based applications
CN105164644B (zh) 钩子框架
US20230004481A1 (en) Automated application testing system
US9720799B1 (en) Validating applications using object level hierarchy analysis
Lin et al. On the accuracy, efficiency, and reusability of automated test oracles for android devices
US20130074051A1 (en) Tracking and analysis of usage of a software product
US20170147480A1 (en) Test script generation
CN106649107B (zh) 安卓系统稳定性的自动化测试方法及装置
CN104050076A (zh) 移动终端上的应用软件测试方法、装置及系统
CN105338110A (zh) 远程调试方法和平台、服务器
US11237948B2 (en) Rendering engine component abstraction system
CN107659455B (zh) 一种iOS端Mock数据的方法、存储介质、设备及系统
Ki et al. Mimic: UI compatibility testing system for Android apps
US20200050534A1 (en) System error detection
CN109558313B (zh) 构建异常测试场景的方法及装置
Holl et al. Mobile application quality assurance
KR20190113050A (ko) 모바일 어플리케이션 환경설정을 시험하기 위한 시험 항목 자동 생성 방법 및 시스템
Tuovenen et al. MAuto: Automatic mobile game testing tool using image-matching based approach
CN109739704A (zh) 一种接口测试方法、服务端及计算机可读存储介质
CN105339974B (zh) 模拟传感器

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20180612

Address after: American California

Applicant after: Antite Software Co., Ltd.

Address before: American Texas

Applicant before: Hewlett-Packard Development Company, Limited Liability Partnership

GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: Utah, USA

Patentee after: Weifosi Co., Ltd

Address before: California, USA

Patentee before: Antiy Software Co.,Ltd.