CN107957890A - 动态加载和部署测试文件以防止测试执行的中断 - Google Patents

动态加载和部署测试文件以防止测试执行的中断 Download PDF

Info

Publication number
CN107957890A
CN107957890A CN201710964888.4A CN201710964888A CN107957890A CN 107957890 A CN107957890 A CN 107957890A CN 201710964888 A CN201710964888 A CN 201710964888A CN 107957890 A CN107957890 A CN 107957890A
Authority
CN
China
Prior art keywords
test
process instance
file
test file
server
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
CN201710964888.4A
Other languages
English (en)
Other versions
CN107957890B (zh
Inventor
J·布鲁斯-史密斯
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.)
Accenture Global Solutions Ltd
Original Assignee
Accenture Global Solutions 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 Accenture Global Solutions Ltd filed Critical Accenture Global Solutions Ltd
Publication of CN107957890A publication Critical patent/CN107957890A/zh
Application granted granted Critical
Publication of CN107957890B publication Critical patent/CN107957890B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N17/00Diagnosis, testing or measuring for television systems or their details
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N17/00Diagnosis, testing or measuring for television systems or their details
    • H04N17/004Diagnosis, testing or measuring for television systems or their details for digital television systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N17/00Diagnosis, testing or measuring for television systems or their details
    • H04N17/06Diagnosis, testing or measuring for television systems or their details for recorders
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0076Distributed coding, e.g. network coding, involving channel coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请的各实施例涉及动态加载和部署测试文件以防止测试执行的中断。系统可以接收用以执行由测试文件中的代码表示的测试的指令。系统可以将与执行测试相关联的第一过程实例初始化。系统可以将与加载测试文件以及执行测试相关联的第二过程实例初始化。第二过程实例可以与第一过程实例不同。系统可以使用第二过程实例加来载测试文件。系统可以使用第一过程实例、第二过程实例和测试文件来执行测试,而不将测试文件加载到第一过程实例中。系统可以在测试的执行期间更新测试文件,而不中断测试的执行。

Description

动态加载和部署测试文件以防止测试执行的中断
技术领域
本申请的各实施例涉及动态加载和部署测试文件以防止测试执行的中断。
背景技术
设备测试可以包括执行程序或应用,意图是查找与被测设备相关联的故障(例如,错误或其他缺陷)。例如,设备测试可以涉及执行程序代码来评估被测设备中的一个或多个感兴趣的性质。一般来说,这些性质可以指示被测设备满足特定设计或开发要求、正确地响应不同的输入、在可接受的时间内执行功能的程度是足够可用的,可以在它的预期的(一个或多个)环境中被安装和运行等。
发明内容
根据一些可能的实现方式,系统可以包括一个或多个处理器以接收用以执行由测试文件中的代码表示的测试的指令。一个或多个处理器可以将与执行测试相关联的第一过程实例初始化。一个或多个处理器可以将与加载测试文件和执行测试相关联的第二过程实例初始化。第二过程实例可以与第一过程实例不同。一个或多个处理器可以使用第二过程实例来加载测试文件。一个或多个处理器可以使用第一过程实例、第二过程实例和测试文件来执行测试,而不将测试文件加载到第一过程实例中。一个或多个处理器可以在测试的执行期间更新测试文件,而不中断测试的执行。
根据一些可能的实现方式,一种方法可以包括由设备接收用以执行由测试文件中的代码表示的测试的指令。该方法可以包括由设备将与第一存储器空间相关联的第一过程实例初始化以用于执行测试。该方法可以包括由设备将与第二存储器空间相关联的第二处理实例初始化以用于加载测试文件。第二过程实例可以与第一过程实例不同。第二存储器空间可以与第一存储器空间不同。该方法可以包括由设备将测试文件加载到第二存储器空间中,而不将测试文件加载到第一存储器空间中。该方法可以包括由设备使用第一过程实例、第二过程实例和被加载到第二存储器空间中的测试文件来执行测试。该方法可以包括由设备在测试的执行期间更新测试文件,而不中断测试的执行。
根据一些可能的实现方式,非暂态计算机可读介质可以存储一个或多个指令,该一个或多个指令当由一个或多个处理器执行时,使得一个或多个处理器接收用以执行包括在测试文件中的测试的指令。该一个或多个指令可以使得一个或多个处理器将与执行测试相关联的第一过程实例和第二过程实例初始化。第二过程实例可以与第一过程实例不同。该一个或多个指令可以使得一个或多个处理器使用第二过程实例来加载测试文件,而不将测试文件加载到第一过程实例中。该一个或多个指令可以使得一个或多个处理器使用第一过程实例、第二过程实例和测试文件来执行测试,而不将测试文件加载到第一过程实例中。
附图说明
图1A和图1B是本文描述的示例实现方式的概述的示图;
图2是其中可以实现本文描述的系统和/或方法的示例环境的示图;
图3是图2的一个或多个设备的示例部件的示图;以及
图4是用于动态加载和部署测试文件以防止测试执行的中断的示例过程的流程图。
具体实施方式
以下示例实现方式的详细描述参考附图。不同附图中的相同参考标记可以标识相同或相似的元件。
测试系统可以用来测试被测设备(device under test,DUT),诸如机顶盒或其他类型的设备。在一些情况下,可以通过执行被存储在诸如动态链接库(dynamic-linklibrary,DLL)文件的测试文件中的代码来执行测试。通过修改被存储在测试文件中的代码,可以更新测试(例如,纠正错误、纠正故障、纠正假阳性、纠正假阴性、提高测试准确性等)。然而,如果在执行与该测试文件相关联的测试时更新测试文件,则更新可能迫使测试的执行停止,或者可能需要在测试文件可以被更新之前停止该测试。在一些情况下,更新测试文件可能需要访问特定的文件夹,并且该文件夹中的信息可能只有在停止所有测试的执行之后才可修改。
如果测试文件包括需要花费大量时间来执行的多个测试或漫长的测试,则测试执行的停止可能是特别可能且有问题的,由此增加在一个或多个测试被执行时测试文件被更新的可能性。此外,测试系统可以测试多个DUT(例如,并行),从而进一步增加当更新测试文件时针对至少一个DUT测试将被停止的机会。还有,更新用于测试系统的多个DUT的测试文件可能是耗时和资源密集的,并且可能需要大量分离的登录或访问来单独地更新与每个DUT相关联的测试服务器(本文中被称为辅测试服务器)。
本文描述的实现方式允许更新测试文件而不停止或中断与该测试文件相关联的测试的执行。以这种方式,可以通过减少所执行的测试的数量并且通过减少需要被重新执行的测试的数量来节省计算资源(例如,处理器资源、存储器资源等)。此外,本文所描述的实现方式通过减少跨多个测试服务器和/或DUT的测试文件的全局更新所需的登录或访问的数量来节省计算资源。
图1A和图1B是本文所描述的示例实现方式100的概述示图。如图1A中所示,通过参考标记110,主测试服务器(例如,与一个或多个辅测试服务器通信的)可以接收用以执行测试的指示。例如,用户可以与客户端设备交互以提供用以请求测试的执行的输入。在图1A中,这一输入被示出为对对象文件(例如,包括诸如JavaScript对象标记(JSON)数据的结构化数据的屏幕定义对象(SDO)文件)的用户选择,该输入可以从客户端设备被发送给主测试服务器。对象文件可以标识要被执行的测试,并且测试可以与测试文件(例如,动态链接库(DLL)文件)相关联。主测试服务器可以与被测设备相关联地指令辅测试服务器来执行测试。
如由参考标记120所示,基于接收到指令,辅测试服务器可以将第一过程实例(例如,计算流程或正在被执行的计算机程序的实例初始化)。第一过程实例可以与执行测试相关联。例如,第一过程实例可以是SDO执行引擎的实例,该第一过程实例执行用于与被测设备通信和/或用于与第二过程实例通信以执行测试的代码,以执行测试。
如由参考标记130所示,辅测试服务器可以将第二过程实例初始化。第二过程实例可以与加载在对象文件中标识的测试文件相关联,该测试文件包括用于执行测试的代码。例如,第二过程实例可以是轻量级过程(例如,AppDomain过程)或完整过程的实例。如由参考标记140所示,第二过程实例可以加载测试文件(例如,DLL)。辅测试服务器可以使用第一过程实例、第二过程实例和测试文件来执行测试,而不将测试文件加载到第一过程实例中。例如,辅测试服务器可以将被存储在存储器位置中的代码(例如,二进制代码或其他代码)从第二过程实例提供给第一过程实例,而不是直接将测试文件提供给第一过程实例。由于这种分离,测试文件在测试的执行期间将不会被锁定,并且测试文件可以被更新,而不停止测试的执行。以这种方式,可以减少一些测试或重新测试,从而节省计算资源。
如图1B中并且由参考标记150所示,测试文件可以被更新。例如,用户可以与客户端设备交互以更新、添加或去除被包括在测试文件中的代码。客户端设备可以将更新后的测试文件发送给web服务器,web服务器转而可以将更新后的测试文件发送给配置服务器。如由参考标记160所示,配置服务器可以将更新后的测试文件存储在数据库中。如由参考标记170所示,配置服务器可以发送指示测试文件已被更新的消息。在一些实现方式中,配置服务器可以将这一消息广播到与配置服务器通信的所有主测试服务器。
如由参考标记180所示,主测试服务器可以监听和接收消息,并且可以获得更新后的测试文件(例如,从数据库)。如由参考标记190所示,主测试服务器可以将更新后的测试文件提供给被连接到主测试服务器的一个或多个辅测试服务器(例如,经由专用网络)。(一个或多个)辅测试服务器可以存储更新后的测试文件,而不中断与被更新的测试文件相关联的测试的执行,如上面结合图1A所描述的。以这种方式,可以减少一些测试或重新测试,从而节省计算资源。此外,可以通过减少测试文件的跨多个辅测试服务器的全局更新所需的一些登录或访问来进一步节省计算资源。
如上所述,图1A和图1B仅被提供为示例。其他示例是可能的,并且可以与关于图1和图2所描述的不同。
图2是可以在其中实现本文所描述的系统和/或方法的示例环境200的示图。如图2中所示,环境200可以包括客户端设备210、配置服务器220、web服务器230、一个或多个测试系统240-1至240-N(N≥1)(以下被统称为“测试系统240”,并且被单独地称为“测试系统240”),一组主测试服务器250、一组辅测试服务器260以及一组被测设备(DUT)270。环境200的设备可以经由有线连接、无线连接或有线和无线连接的组合来相互连接。
客户端设备210包括能够接收、生成、存储、处理和/或提供与设备测试相关联的信息的一个或多个设备。例如,客户端设备210可以包括通信和/或计算设备,诸如移动电话(例如,智能电话、无线电电话等)、膝上型计算机、平板计算机、手持计算机、游戏设备、可穿戴通信设备(例如,智能手表、一副智能眼镜等)或类似类型的设备。客户端设备210可以接收关于设备测试的用户输入(例如,对测试文件的更新或用以执行测试的指令),并且可以将这样的输入提供给环境200的一个或多个其他设备(例如,web服务器230、配置服务器220、测试系统240等)。
配置服务器220包括能够接收、生成、存储、处理和/或提供与设备测试相关联的信息的一个或多个设备。例如,配置服务器220可以包括服务器或类似类型的设备。配置服务器220可以接收(例如,从客户端设备210和/或web服务器230)关于设备测试的信息(例如,对测试文件的更新或用以执行测试的指令),并且可以将这样的信息提供给一个或多个测试系统240(例如,到主测试服务器250)。附加地或备选地,配置服务器220可以存储(例如,在本地或远程地)指示测试文件与标识测试文件的测试文件标识符之间的关系的数据结构。
web服务器230包括能够接收、生成、存储、处理和/或提供与设备测试相关联的信息的一个或多个设备。例如,web服务器230可以包括服务器或类似类型的设备。在一些实现方式中,web服务器230可以从客户端设备210接收关于设备测试的信息,并且配置服务器220可以从web服务器230访问这样的信息(例如,使用统一的资源标识符(URI),诸如统一的资源定位符(URL))。以这种方式,可以保护配置服务器220免受客户端设备210的直接访问,这提高了配置服务器220的安全性。
测试系统240包括通信以执行设备测试的一个或多个设备和/或部件。在一些实现方式中,并且如所示,测试系统240可以包括主测试服务器250、一组辅测试服务器260和一组DUT 270。作为示例,单个测试系统240可以包括单个主测试服务器250,该主测试服务器250经由专用网络与一组辅测试服务器260(例如,一个辅测试服务器260,两个辅测试服务器260,三个辅测试服务器260,四个辅测试服务器260等)通信。在一些实现方式中,主测试服务器250可以用作一个或多个辅测试服务器260和测试系统240外部的设备之间的中介,以保护辅测试服务器260免受与测试系统240外部的设备的直接通信。换句话说,辅测试服务器260可以经由仅对主测试服务器250可访问的专用网络通信,这提高了辅测试服务器260的安全性。
在测试系统240内,单个辅测试服务器260可以与一个或多个DUT 270通信(例如,经由高清晰度多媒体接口(HDMI)或另一媒体接口),以有助于DUT 270的测试。在一些实现方式中,单个辅测试服务器260可以与单个DUT 270通信以用于设备测试。配置服务器220可以与一个或多个测试系统240(例如,经由(一个或多个)主测试服务器250)通信以有助于设备测试。
主测试服务器250包括与执行设备测试相关联的一个或多个设备。例如,主测试服务器250可以包括服务器或类似类型的设备。主测试服务器250可以从配置服务器220接收关于设备测试的信息,并且可以将这样的信息提供给被包括在具有主测试服务器250的测试系统240中的一个或多个辅测试服务器260。
辅测试服务器260包括与执行设备测试相关联的一个或多个设备。例如,辅测试服务器260可以包括服务器或类似类型的设备。辅测试服务器260可以从主测试服务器250接收关于设备测试的信息,并且可以使用这样的信息来对一个或多个DUT 270执行一个或多个测试。在一些实现方式中,辅测试服务器260可以提供对环境200的一个或多个设备执行(一个或多个)测试的一个或多个结果(例如,经由主测试服务器250)。在一些实现方式中,不同的辅测试服务器260可以被彼此远离地定位。
DUT 270包括一个或多个被测设备。例如,DUT 270可以包括机顶盒、游戏设备、媒体设备(例如,能够接收和/或传送音频和/或视频信号、音频和/或视频数据等),数字视频录像机(DVR)或类似类型的设备。附加地或备选地,DUT 270可以包括能够被测试另一类型的设备。在一些实现方式中,辅测试服务器260可以执行测试(例如,代码)以向DUT 270提供输入和/或从DUT 270请求输出,并且作为执行测试的一部分,DUT 270可以将信息输出给辅测试服务器260。
图2中所示的设备和网络的数量和布置被提供为示例。实际上,可以存在除图2中所示的那些部件以外的附加的设备、更少的设备、不同的设备或者被不同布置的设备。此外,图2中所示的两个或更多个设备可以在单个设备内被实现,或者图2中所示的单个设备可以被实现为多个分布式设备。附加地或备选地,环境200的一组设备(例如,一个或多个设备)可以执行被描述为由环境200的另一组设备执行的一个或多个功能。
图3是设备300的示例部件的示图。设备300可以对应于客户端设备210、配置服务器220、web服务器230、测试系统240、主测试服务器250、辅测试服务器260和/或DUT 270。在一些实现方式中,客户端设备210、配置服务器220、web服务器230、测试系统240、主测试服务器250、辅测试服务器260和/或DUT 270可以包括一个或多个设备300和/或设备300的一个或多个部件。如图3中所示,设备300可以包括总线310、处理器320、存储器330、存储部件340、输入部件350、输出部件360和通信接口370。
总线310包括允许设备300的部件之间的通信的部件。处理器320在硬件、固件或硬件和软件的组合中被实现。处理器320可以包括中央处理单元(CPU)、图形处理单元(GPU)、加速处理单元(APU)、微处理器、微控制器、现场可编程门阵列(FPGA)、专用集成电路(ASIC)或解释和/或执行指令的另一类型的处理部件。在一些实现方式中,处理器320包括能够被编程以执行功能的一个或多个处理器。存储器330包括随机存取存储器(RAM)、只读存储器(ROM)和/或另一类型的动态或静态存储设备(例如,闪速存储器、磁存储器和/或光学存储器),该存储器330存储信息和/或指令以供处理器320使用。
存储部件340存储与设备300的操作和使用相关的信息和/或软件。例如,存储部件340可以包括硬盘(例如,磁盘、光盘、磁光盘和/或固态盘),压缩盘(CD)、数字通用盘(DVD)、软盘、盒,磁带和/或其他类型的非暂态计算机可读介质,以及对应的驱动。
输入部件350包括允许设备300诸如经由用户输入(例如,触摸屏显示器、键盘、小键盘、鼠标、按钮、开关和/或麦克风)来接收信息的部件。附加地或备选地,输入部件350可以包括用于感测信息的传感器(例如,全球定位系统(GPS)部件、加速计、陀螺仪和/或致动器)。输出部件360包括从设备300(例如,显示器、扬声器和/或一个或多个发光二极管(LED))提供输出信息的部件。
通信接口370包括使设备300能够诸如经由有线连接、无线连接或有线和无线连接的组合来与其他设备通信的收发器状部件(例如,收发器和/或分离的接收器和发送器)。通信接口370可以允许设备300从另一设备接收信息和/或将信息提供给另一设备。例如,通信接口370可以包括以太网接口、光学接口、同轴接口、红外接口、射频(RF)接口、通用串行总线(USB)接口、Wi-Fi接口、蜂窝网络接口等。
设备300可以执行本文所描述的一个或多个过程。响应于处理器320执行由诸如存储器330和/或存储部件340的非暂态计算机可读介质存储的软件指令,设备300可以执行这些过程。计算机可读介质在本文被限定为非暂态存储器设备。存储器设备包括单个物理存储设备内的存储器空间或跨多个物理存储设备分布的存储器空间。
软件指令可以经由通信接口370从另一计算机可读介质或从另一设备而被读入存储器330和/或存储部件340。当被执行时,被存储在存储器330和/或存储部件340中的软件指令可以使处理器320执行本文所描述的一个或多个过程。附加地或备选地,硬连线电路可以用于代替软件指令或与软件指令组合以执行本文所描述的一个或多个过程。因此,本文所描述的实现方式不限于硬件电路和软件的任何特定组合。
图3中所示的部件的数量和布置被提供为示例。在实践中,设备300可以包括除了图3中所示的部件之外的附加部件、更少的部件,不同的部件或被不同布置的部件。附加地或备选地,设备300的一组部件(例如,一个或多个部件)可以执行被描述为由设备300的另一组部件执行的一个或多个功能。
图4是用于动态加载和部署测试文件以防止测试执行中断的示例过程400的流程图。在一些实现方式中,图4的一个或多个过程框可以由测试系统240执行。在一些实现方式中,图4的一个或多个过程框可以由另一设备或与测试系统240分离的或包括测试系统240的一组设备执行,这些设备诸如客户端设备210、配置服务器220、web服务器230、主测试服务器250、辅测试服务器260和/或DUT 270。
如图4中所示,过程400可以包括接收用以执行与测试文件相关联的测试的指令(框410)。例如,测试系统240可以从客户端设备210和/或配置服务器220接收用以执行与测试文件相关联的测试的指令。在一些实现方式中,主测试服务器250可以基于经由客户端设备210提供的用户输入来接收指令,并且可以将指令提供给一个或多个辅测试服务器260(例如,在具有主测试服务器250的专用网络上)。在一些实现方式中,指令可以包括对象文件(例如,屏幕定义对象(SDO)文件,包括文本的文件,包括诸如JSON数据的结构化数据的文件等),并且测试文件可以被标识在对象文件中。例如,可以使用标识测试文件和/或测试文件的版本(例如,使用版本号)的测试文件标识符(例如,字符串、文件名等)来标识测试文件。测试文件(例如,DLL文件)可以包括要执行的代码以执行测试。
作为一个示例,用户可以与客户端设备210交互以生成和/或修改指定要被运行的一个或多个测试的SDO文件(例如,JSON数据块)。在一些情况下,SDO文件可以包括由用户设计的自定义测试。客户端设备210可以将SDO文件发送给主测试服务器250(例如,使用诸如Python API,.NET API等的应用编程接口(API))。主测试服务器250可以接收SDO文件,并且可以将SDO文件发送给与主测试服务器250通信的一个或多个辅测试服务器260。
在一些实现方式中,主测试服务器250可以(例如,从配置服务器220和/或相关联的数据库)获得被标识在SDO文件中的测试文件,并且可以将测试文件提供给辅测试服务器260。在一些实现方式中,每个辅测试服务器260可以存储测试文件的副本。例如,特定的辅测试服务器260可以将测试文件存储在特定位置(例如,与设备测试相关联的特定文件夹或目录)中以供特定的辅测试服务器260在设备测试(例如,DUT 270的测试,通过比较图像、颜色、文本、声音、帧等来分析视频数据、音频数据和/或图像数据)期间使用。
如图4中进一步所示,过程400可以包括将与执行测试相关联的第一过程实例初始化(框420),将与加载测试文件相关联的第二过程实例初始化(框430),以及使用第二过程实例来加载测试文件(框440)。例如,基于接收用以执行测试的指令,测试系统240(例如,辅测试服务器260)可以将第一过程实例(例如,计算过程或正在执行的计算机程序的实例)初始化。第一过程实例可以与执行测试相关联,并且可以包括用于执行测试的第一代码(例如,函数)。例如,第一过程实例可以读取对象文件(例如,SDO文件),并且可以基于读取对象文件来执行一个或多个功能。当被执行时,第一代码可以使第一过程实例与从测试文件加载第二代码的第二过程实例通信。当被一起执行时,第一代码和第二代码可以使得测试被执行。
除了将第一过程实例初始化之外,测试系统240(例如,辅测试服务器260)可以基于接收用以执行测试的指令来将第二过程实例初始化。第二过程实例可以从辅测试服务器260的特定位置(例如,特定的文件夹或目录)加载被标识在目标文件中的测试文件。例如,辅测试服务器260可以将测试文件加载到第二过程实例的存储器空间中,而不将测试文件加载到第一过程实例的存储器空间中。第一过程实例和第二过程实例可以是具有分离的执行线程的分离的过程。
如图4中进一步所示,过程400可以包括使用第一过程实例、第二过程实例和测试文件来执行测试,而不将测试文件加载到第一过程实例中(框450)。例如,如上所述,测试文件可以被加载到第二过程实例而不是第一过程实例中。以这种方式,可以更新测试文件而不中断测试的执行。作为示例,辅测试服务器260可以防止测试文件被直接加载到第一过程实例的第一存储器空间中。相反,辅测试服务器260可以将测试文件加载到第二过程实例的第二存储器空间中。
第一过程实例和第二过程实例可以通信以执行测试。例如,第一过程实例可以调用被加载到第二过程实例中的测试文件的一个或多个功能以执行测试。第二过程实例可以基于来自第一过程实例的请求和/或调用来将被存储在与测试文件相关联的存储器块中的数据和/或代码提供给第一过程实例(例如,而不是直接将测试文件提供给第一过程实例)。由于测试文件与第一过程实例的分离,测试文件不会被锁定免于编辑。另外,当第二过程实例正在使用测试文件时(例如,在测试文件被加载之后),可以在辅测试服务器260的文件系统上更新与测试文件相关联的二进制代码。以这种方式,测试系统240可以防止中断测试的执行。
如图4中进一步所示,过程400可以包括确定是否已经接收到用于更新测试文件的消息(框460)。例如,测试系统240可以接收指示一个或多个测试文件已被更新的消息。例如,用户可以与客户端设备210交互以更新测试文件(例如,通过修改DLL文件,通过创建替换DLL文件等)。在一些实现方式中,客户端设备210可以将更新后的测试文件发送给配置服务器220。在一些实现方式中,客户端设备210可以将更新后的测试文件发送给web服务器230。配置服务器220可以监测web服务器230以用于更新和请求更新,或者web服务器230可以将更新推送给配置服务器220。
配置服务器220可以(例如,使用数据结构来在本地或远程地)存储更新后的测试文件。附加地或备选地,配置服务器220可以存储指示测试文件标识符与测试文件之间的关系的信息。当主测试服务器250使用测试文件标识符来请求测试文件时,配置服务器220可以使用这一信息来标识并向主测试服务器250提供测试文件。
配置服务器220可以传输指示测试文件已被更新的消息。例如,配置服务器220可以经由一组主测试服务器250被连接到的网络来广播该消息。(一个或多个)主测试服务器250可以收听和/或可以订阅以从配置服务器220接收这样的消息。在一些情况下,消息可以指示测试文件已被更新,而不标识已经被更新的特定测试文件。在一些情况下,消息可以(例如,使用测试文件标识符)标识已被更新的特定测试文件。在任一情况下,主测试服务器250可以接收消息,并且可以获得一个或多个更新后的测试文件,如下所述。
如图4中进一步所示,过程400可以包括基于接收消息来获得和存储更新后的测试文件,而不中断测试的执行(框470)。例如,测试系统240可以获得更新后的测试文件。在一些实现方式中,主测试服务器250可以(例如,从消息)获得测试文件标识符,可以将测试文件标识符发送给配置服务器220。配置服务器220可以使用测试文件标识符来查找测试文件,并且可以将测试文件发送给主测试服务器250。
在一些实现方式中,消息可以标识特定测试,并且主测试服务器250可以针对特定测试来请求更新后的测试文件。以这种方式,与请求所有测试文件相比,测试系统240可以节省计算资源和网络资源。
在一些实现方式中,主测试服务器250可以请求所有测试文件,并且测试系统240(例如,主测试服务器250和/或辅测试服务器260)可以将接收的测试文件与由辅测试服务器260在本地存储的测试文件比较。在这种情况下,测试系统240可以更新不同的测试文件(例如,已被更新的测试文件)。以这种方式,测试系统240增加了存储用于所有测试的更新后的测试文件的可能性。
在一些实现方式中,主测试服务器250可以请求在特定时间(例如,与重新引导、关机、故障、周期性更新、最后更新等相关联的时间)之后已经更新的测试文件。以这种方式,测试系统240可以获得用于更有可能过期的测试文件的更新。
一旦获得了更新后的测试文件,主测试服务器250就可以将更新后的测试文件发送给由(例如,连接到其、与其通信等的)主测试服务器250管理的一个或多个辅测试服务器260。辅测试服务器260可以存储更新后的测试文件(例如,在与设备测试相关联的特定位置中)。在一些实施方式中,辅测试服务器260可以用更新后的测试文件来替换先前的测试文件(例如,当前正被执行的或先前被执行的)。以这种方式,可以通过减少通过用户单独更新辅测试服务器260来对辅测试服务器260的一些登录或访问来节省计算资源。此外,对由(一个或多个)辅测试服务器260存储的测试文件的这种更新可以发生在任何时候,而不会中断正在执行的测试的执行,如本文其他地方所描述的。
如图4中进一步所示,过程400可以包括在执行测试之后卸载测试文件和第二过程实例(框480)。例如,当测试执行完成时,辅测试服务器260可以卸载测试文件。附加地或备选地,辅测试服务器260可以卸载(例如,停止、退出等)第二过程实例。附加地或备选地,辅测试服务器260可以卸载第一过程实例。在一些实现方式中,辅测试服务器260可以将测试的结果发送给另一设备(例如,经由主测试服务器250的客户端设备210)。以这种方式,辅测试服务器260可以通过卸载未被使用的过程来节省计算资源(例如,存储器资源、处理器资源等)。
尽管图4示出了过程400的示例性框,但是在一些实现方式中,过程400可以包括除图4总所示的框之外的附加框、更少的框、不同的框或被不同布置的框。附加地或备选地,过程400的框中的两个或多个框可以被并行地执行。
本文所描述的实现方式允许更新测试文件,而不会停止或中断与该测试文件相关联的测试的执行。以这种方式,可以通过减少一些所执行的测试以及通过减少一些需要被重新执行的测试来节省计算资源(例如,处理器资源、存储器资源等)。此外,本文描述的实现方式通过减少跨测试服务器和/或DUT上的测试文件的全局更新所需的一些登录或访问来节省计算资源。
根据本申请的一个实施例,公开了一种系统,包括:一个或多个处理器,用以:接收用以执行由测试文件中的代码表示的测试的指令;将第一过程实例初始化,所述第一过程实例与执行所述测试相关联;将第二过程实例初始化,所述第二过程实例与加载所述测试文件和执行所述测试相关联,所述第二过程实例与所述第一过程实例不同;使用所述第二过程实例来加载所述测试文件;使用所述第一过程实例、所述第二过程实例和所述测试文件来执行所述测试,而不将所述测试文件加载到所述第一过程实例中;以及在所述测试的执行期间更新所述测试文件,而不中断所述测试的执行。
在所述系统中,当更新所述测试文件时,其中所述一个或多个处理器用以:接收更新后的测试文件,所述更新后的测试文件是对所述测试文件的更新;以及存储所述更新后的测试文件,而不中断所述测试的执行。
在所述系统中,其中所述一个或多个处理器还用以:接收指示一个或多个测试文件已被更新的消息;基于接收所述消息来请求所述一个或多个测试文件;并且其中当接收所述更新后的测试文件时,所述一个或多个处理器用以:基于请求所述一个或多个测试文件来接收所述更新后的测试文件。
在所述系统中,当存储所述更新后的测试文件时,其中所述一个或多个处理器还用以:利用所述更新后的测试文件来替换所述测试文件,而不中断所述测试的执行。
在所述系统中,当执行所述测试时,其中所述一个或多个处理器还用以:将被存储在与所述第二过程实例相关联的存储器块中的消息提供给所述第一过程实例;以及基于将被存储在与所述第二过程实例相关联的所述存储器块中的所述消息提供给所述第一过程实例,来执行所述测试。
在所述系统中,其中被提供给所述第一过程实例的所述信息包括用于执行所述测试的代码。
在所述系统中,其中所述一个或多个处理器被包括在第一测试服务器中,所述第一测试服务器测试第一被测设备;并且其中所述系统还包括:第二测试服务器,所述第二测试服务器测试第二被测设备;以及主测试服务器,所述主测试服务器将用以执行所述测试的所述指令提供给所述第一测试服务器和所述第二测试服务器。
在所述系统中,其中所述第一测试服务器远离所述第二测试服务器而被定位。
根据本申请的另一实施例,公开了一种方法,包括:由设备接收用以执行由测试文件中的代码表示的测试的指令的装置;由所述设备将与第一存储器空间相关联的第一过程实例初始化以用于执行所述测试;由所述设备将与第二存储器空间相关联的第二过程实例初始化以用于加载所述测试文件,所述第二过程实例与所述第一过程实例不同;所述第二存储器空间与所述第一存储器空间不同;由所述设备将所述测试文件加载到所述第二存储器空间中,而不将所述测试文件加载到所述第一存储器空间中;由所述设备使用所述第一过程实例、所述第二过程实例和被加载到所述第二存储器空间中的所述测试文件来执行所述测试;以及由所述设备在所述测试的执行期间更新所述测试文件,而不中断所述测试的执行。
在所述方法中,其中更新所述测试文件包括:接收更新后的测试文件,所述更新后的测试文件是对所述测试文件的更新;以及在所述测试的执行期间,在所述测试文件被加载到其中的位置中,利用所述更新后的测试文件来替换所述测试文件,并且不中断所述测试的执行。
在所述方法中,其中执行所述测试包括:将被存储在所述第二存储器空间中的代码提供给所述第一过程实例;以及基于将被存储在所述第二存储器空间中的所述代码提供给所述第一过程实例来执行所述测试。
在所述方法中,其中所述指令包括标识所述测试文件的对象文件;并且其中所述方法还包括:将所述对象文件提供给所述第一过程实例。
在所述方法中,还包括:将第一代码加载到所述第一存储器空间中;将第二代码从所述测试文件加载到所述第二存储器空间中;并且其中执行所述测试包括:执行所述第一代码;基于执行所述第一代码来将针对所述第二代码的请求从所述第一过程实例提供给所述第二过程实例;以及基于所述请求来将所述第二代码从所述第二过程实例提供给所述第一过程实例。
在所述方法中,其中所述第一过程实例与所述第二过程实例通信以执行所述测试。
在所述方法中,其中所述第二过程实例将信息从所述测试文件提供给所述第一过程实例以执行所述测试。
根据本申请的又一实施例,公开了一种存储指令的非暂态计算机可读介质,所述指令包括:一个或多个指令,所述一个或多个指令当由一个或多个处理器执行时,使得所述一个或多个处理器:接收用以执行被包括在测试文件中的测试的指令;将与执行所述测试相关联的第一过程实例和第二过程实例初始化,所述第二过程实例与所述第一过程实例不同;使用所述第二过程实例来加载所述测试文件,而不将所述测试文件加载到所述第一过程实例中;以及使用所述第一过程实例、所述第二过程实例和所述测试文件来执行所述测试,而不将所述测试文件加载到所述第一过程实例中。
在所述非暂态计算机可读介质中,其中所述一个或多个指令当由所述一个或多个处理器执行时,还使得所述一个或多个处理器:接收更新后的测试文件以替换存储器中的所述测试文件;以及利用所述存储器中的所述更新后的测试文件来替换所述测试文件,而不中断所述测试的执行。
在所述非暂态计算机可读介质中,其中使得所述一个或多个处理器执行所述测试的所述一个或多个指令使得所述一个或多个处理器:将被存储在与所述第二过程实例相关联的存储器块中的信息提供给所述第一过程实例;以及基于将被存储在与所述第二过程实例相关联的所述存储器块中的所述信息提供给所述第一过程实例来执行所述测试。
在所述非暂态计算机可读介质中,其中所述测试包括视频数据的测试。
在所述非暂态计算机可读介质中,其中所述测试包括机顶盒的测试
前述公开内容提供了说明和描述,但并不旨在穷举或将实现方式限制为所公开的确切形式。根据上述公开内容的修改和变化是可能的,或者可以从实现方式的实践被获得。
如本文所使用的,术语部件旨在被广泛地解释为硬件、固件和/或硬件和软件的组合。
显而易见的是,本文所描述的系统和/或方法可以被实现在不同形式的硬件固件或硬件和软件的组合中。用以实现这些系统和/或方法的实际专用控制硬件或软件代码并不限制实现方式。因此,本文描述了系统和/或方法的操作和行为,而不参考具体的软件代码-据了解,软件和硬件可以被设计以基于本文的描述来实现系统和/或方法。
即使在权利要求中记载和/或在说明书中公开了特定的特征组合,这些组合并不旨在限制可能的实施方式的公开内容。事实上,这些特征中的许多特征可以按照权利要求书中没有具体记载和/或说明书中没有具体公开的方式被组合。尽管以下列出的每个从属权利要求可以直接地从属于仅一个权利要求,但是可能的实现方式的公开内容与权力要求集合中的每个其他权利要求组合地包括每个从属权利要求。
除非明确描述,否则本文所使用的单元、动作或指令不应被解释为关键或必需的。还有,如本文所使用的,冠词“一”和“一个”旨在包括一个或多个项,并且与“一个或多个”可互换使用。此外,如本文所使用的,术语“集合”旨在包括一个或多个项(例如相关项、无关项,相关和无关项目的组合等),并且与“一个或多个”可互换使用。在旨在于仅一个项时,使用术语“一个”或者类似语言。还有,如本文所使用的,术语“具有”、“有”,“带有”等旨在是开放式术语。另外,短语“基于”旨在表示“至少部分地基于”,除非另有明确说明。

Claims (20)

1.一种系统,包括:
用于接收用以执行由测试文件中的代码表示的测试的指令的装置;
用于将第一过程实例初始化的装置,所述第一过程实例与执行所述测试相关联;
用于将第二过程实例初始化的装置,所述第二过程实例与加载所述测试文件和执行所述测试相关联,
所述第二过程实例与所述第一过程实例不同;
用于使用所述第二过程实例来加载所述测试文件的装置;
用于使用所述第一过程实例、所述第二过程实例和所述测试文件来执行所述测试、而不将所述测试文件加载到所述第一过程实例中的装置;以及
用于在所述测试的执行期间更新所述测试文件、而不中断所述测试的执行的装置。
2.根据权利要求1所述的系统,其中用于更新所述测试文件的所述装置包括:
用于接收更新后的测试文件的装置,所述更新后的测试文件是对所述测试文件的更新;以及
用于存储所述更新后的测试文件、而不中断所述测试的执行的装置。
3.根据权利要求2所述的系统,还包括:
用于接收指示一个或多个测试文件已被更新的消息的装置;
用于基于接收所述消息来请求所述一个或多个测试文件的装置;并且
其中用于接收所述更新后的测试文件的所述装置包括:
用于基于请求所述一个或多个测试文件来接收所述更新后的测试文件的装置。
4.根据权利要求2所述的系统,其中用于存储所述更新后的测试文件的所述装置包括:
用于利用所述更新后的测试文件来替换所述测试文件、而不中断所述测试的执行的装置。
5.根据权利要求1所述的系统,其中用于执行所述测试的所述装置包括:
用于将被存储在与所述第二过程实例相关联的存储器块中的消息提供给所述第一过程实例的装置;以及
用于基于将被存储在与所述第二过程实例相关联的所述存储器块中的所述消息提供给所述第一过程实例、来执行所述测试的装置。
6.根据权利要求5所述的系统,其中被提供给所述第一过程实例的所述信息包括用于执行所述测试的代码。
7.根据权利要求1所述的系统,其中所述系统包括:
第一测试服务器,所述第一测试服务器测试第一被测设备;
第二测试服务器,所述第二测试服务器测试第二被测设备;以及
主测试服务器,所述主测试服务器将用以执行所述测试的所述指令提供给所述第一测试服务器和所述第二测试服务器。
8.根据权利要求7所述的系统,其中所述第一测试服务器远离所述第二测试服务器而被定位。
9.一种方法,包括:
由设备接收用以执行由测试文件中的代码表示的测试的指令的装置;
由所述设备将与第一存储器空间相关联的第一过程实例初始化以用于执行所述测试;
由所述设备将与第二存储器空间相关联的第二过程实例初始化以用于加载所述测试文件,
所述第二过程实例与所述第一过程实例不同;
所述第二存储器空间与所述第一存储器空间不同;
由所述设备将所述测试文件加载到所述第二存储器空间中,而不将所述测试文件加载到所述第一存储器空间中;
由所述设备使用所述第一过程实例、所述第二过程实例和被加载到所述第二存储器空间中的所述测试文件来执行所述测试;以及
由所述设备在所述测试的执行期间更新所述测试文件,而不中断所述测试的执行。
10.根据权利要求9所述的方法,其中更新所述测试文件包括:
接收更新后的测试文件,所述更新后的测试文件是对所述测试文件的更新;以及
在所述测试的执行期间,在所述测试文件被加载到其中的位置中,利用所述更新后的测试文件来替换所述测试文件,并且不中断所述测试的执行。
11.根据权利要求9所述的方法,其中执行所述测试包括:
将被存储在所述第二存储器空间中的代码提供给所述第一过程实例;以及
基于将被存储在所述第二存储器空间中的所述代码提供给所述第一过程实例来执行所述测试。
12.根据权利要求9所述的方法,其中所述指令包括标识所述测试文件的对象文件;并且
其中所述方法还包括:
将所述对象文件提供给所述第一过程实例。
13.根据权利要求9所述的方法,还包括:
将第一代码加载到所述第一存储器空间中;
将第二代码从所述测试文件加载到所述第二存储器空间中;并且其中执行所述测试包括:
执行所述第一代码;
基于执行所述第一代码来将针对所述第二代码的请求从所述第一过程实例提供给所述第二过程实例;以及
基于所述请求来将所述第二代码从所述第二过程实例提供给所述第一过程实例。
14.根据权利要求9所述的方法,其中所述第一过程实例与所述第二过程实例通信以执行所述测试。
15.根据权利要求9所述的方法,其中所述第二过程实例将信息从所述测试文件提供给所述第一过程实例以执行所述测试。
16.一种存储指令的非暂态计算机可读介质,所述指令包括:
一个或多个指令,所述一个或多个指令当由一个或多个处理器执行时,使得所述一个或多个处理器:
接收用以执行被包括在测试文件中的测试的指令;
将与执行所述测试相关联的第一过程实例和第二过程实例初始化,
所述第二过程实例与所述第一过程实例不同;
使用所述第二过程实例来加载所述测试文件,而不将所述测试文件加载到所述第一过程实例中;以及
使用所述第一过程实例、所述第二过程实例和所述测试文件来执行所述测试,而不将所述测试文件加载到所述第一过程实例中。
17.根据权利要求16所述的非暂态计算机可读介质,其中所述一个或多个指令当由所述一个或多个处理器执行时,还使得所述一个或多个处理器:
接收更新后的测试文件以替换存储器中的所述测试文件;以及
利用所述存储器中的所述更新后的测试文件来替换所述测试文件,而不中断所述测试的执行。
18.根据权利要求16所述的非暂态计算机可读介质,其中使得所述一个或多个处理器执行所述测试的所述一个或多个指令使得所述一个或多个处理器:
将被存储在与所述第二过程实例相关联的存储器块中的信息提供给所述第一过程实例;以及
基于将被存储在与所述第二过程实例相关联的所述存储器块中的所述信息提供给所述第一过程实例来执行所述测试。
19.根据权利要求16所述的非暂态计算机可读介质,其中所述测试包括视频数据的测试。
20.根据权利要求16所述的非暂态计算机可读介质,其中所述测试包括机顶盒的测试。
CN201710964888.4A 2016-10-17 2017-10-17 动态加载和部署测试文件以防止测试执行的中断 Active CN107957890B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/295,742 2016-10-17
US15/295,742 US10230945B2 (en) 2016-10-17 2016-10-17 Dynamic loading and deployment of test files to prevent interruption of test execution

Publications (2)

Publication Number Publication Date
CN107957890A true CN107957890A (zh) 2018-04-24
CN107957890B CN107957890B (zh) 2020-11-24

Family

ID=60080680

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710964888.4A Active CN107957890B (zh) 2016-10-17 2017-10-17 动态加载和部署测试文件以防止测试执行的中断

Country Status (4)

Country Link
US (1) US10230945B2 (zh)
EP (1) EP3309684A1 (zh)
CN (1) CN107957890B (zh)
AU (1) AU2017235993B2 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110678850B (zh) * 2017-11-10 2023-10-10 谷歌有限责任公司 自动化装置测试分类系统和技术
US11797427B2 (en) * 2019-05-22 2023-10-24 Oracle International Corporation Automatic generation of unit tests while running an application
CN114490307A (zh) * 2020-11-12 2022-05-13 腾讯科技(深圳)有限公司 一种单元测试方法、装置及存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6343300B1 (en) * 1997-12-25 2002-01-29 Nec Corporation File updating method capable of updating an operation file without interrupting online processing
US20040107415A1 (en) * 2002-12-03 2004-06-03 Konstantin Melamed Web-interactive software testing management method and computer system including an integrated test case authoring tool
US20070234300A1 (en) * 2003-09-18 2007-10-04 Leake David W Method and Apparatus for Performing State-Table Driven Regression Testing
CN103164336A (zh) * 2013-02-22 2013-06-19 广东欧珀移动通信有限公司 一种移动终端上应用程序的自动化测试方法及装置
US20140109058A1 (en) * 2012-10-12 2014-04-17 Vmware,Inc. Test language interpreter
CN103970650A (zh) * 2014-04-09 2014-08-06 广州杰赛科技股份有限公司 分布式测试方法和装置
US20150331779A1 (en) * 2014-05-13 2015-11-19 Unisys Corporation Framework to accommodate test plan changes without affecting or interrupting test execution
CN105718371A (zh) * 2016-01-21 2016-06-29 深圳市同创国芯电子有限公司 一种回归测试方法、装置及系统

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5412756A (en) * 1992-12-22 1995-05-02 Mitsubishi Denki Kabushiki Kaisha Artificial intelligence software shell for plant operation simulation
US6775824B1 (en) 2000-01-12 2004-08-10 Empirix Inc. Method and system for software object testing
US7222147B1 (en) * 2000-05-20 2007-05-22 Ciena Corporation Processing network management data in accordance with metadata files
US6671699B1 (en) * 2000-05-20 2003-12-30 Equipe Communications Corporation Shared database usage in network devices
US7130870B1 (en) * 2000-05-20 2006-10-31 Ciena Corporation Method for upgrading embedded configuration databases
US7093004B2 (en) * 2002-02-04 2006-08-15 Datasynapse, Inc. Using execution statistics to select tasks for redundant assignment in a distributed computing platform
US20040015762A1 (en) 2002-07-22 2004-01-22 Finisar Corporation Scalable system testing tools
US6889159B2 (en) 2002-07-22 2005-05-03 Finisar Corporation Scalable multithreaded system testing tool
US7526410B2 (en) * 2003-07-03 2009-04-28 Microsoft Corporation Remote computer graphics performance testing
US7721265B1 (en) 2003-11-10 2010-05-18 Cisco Technology, Inc. Source code debugging method and apparatus for use in script testing environment
US20090300423A1 (en) 2008-05-28 2009-12-03 James Michael Ferris Systems and methods for software test management in cloud-based network
GB2470417B (en) 2009-05-22 2011-08-03 S3 Res & Dev Ltd A test system for a set-top box
GB2475689A (en) 2009-11-25 2011-06-01 S3 Res & Dev Ltd Configurable event time measurement for automated set-top box testing
GB2483499A (en) 2010-09-10 2012-03-14 S3 Res & Dev Ltd Diagnostics and Analysis of a Set Top Box
GB2485833A (en) 2010-11-26 2012-05-30 S3 Res & Dev Ltd Improved OCR Using Configurable Filtering for Analysing Set Top Boxes

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6343300B1 (en) * 1997-12-25 2002-01-29 Nec Corporation File updating method capable of updating an operation file without interrupting online processing
US20040107415A1 (en) * 2002-12-03 2004-06-03 Konstantin Melamed Web-interactive software testing management method and computer system including an integrated test case authoring tool
US20070234300A1 (en) * 2003-09-18 2007-10-04 Leake David W Method and Apparatus for Performing State-Table Driven Regression Testing
US20140109058A1 (en) * 2012-10-12 2014-04-17 Vmware,Inc. Test language interpreter
CN103164336A (zh) * 2013-02-22 2013-06-19 广东欧珀移动通信有限公司 一种移动终端上应用程序的自动化测试方法及装置
CN103970650A (zh) * 2014-04-09 2014-08-06 广州杰赛科技股份有限公司 分布式测试方法和装置
US20150331779A1 (en) * 2014-05-13 2015-11-19 Unisys Corporation Framework to accommodate test plan changes without affecting or interrupting test execution
CN105718371A (zh) * 2016-01-21 2016-06-29 深圳市同创国芯电子有限公司 一种回归测试方法、装置及系统

Also Published As

Publication number Publication date
CN107957890B (zh) 2020-11-24
US10230945B2 (en) 2019-03-12
AU2017235993A1 (en) 2018-05-10
AU2017235993B2 (en) 2019-01-17
EP3309684A1 (en) 2018-04-18
US20180109781A1 (en) 2018-04-19

Similar Documents

Publication Publication Date Title
US9442832B2 (en) User workflow replication for execution error analysis
US10356213B2 (en) Automatic interdependency resolution for micro-service deployments
EP3220270B1 (en) System and method to configure distributed measuring devices and treat measurement data
US20170324791A1 (en) Method and apparatus for quick content channel discovery, streaming, and switching
EP3903185B1 (en) Mechanism for automatically incorporating software code changes into proper channels
US11226830B2 (en) System for building, managing, deploying and executing reusable analytical solution modules for industry applications
CN109656806A (zh) 一种接口数据的回放测试方法及装置
US20180322037A1 (en) Impersonation in test automation
US11188313B1 (en) Feature flag pipeline
CN103765936B (zh) 用于隐私策略管理的方法和装置
CN107957890A (zh) 动态加载和部署测试文件以防止测试执行的中断
US20180322032A1 (en) App software audience impersonation for software testing
US11317258B2 (en) Methods, systems, and non-transitory computer readable record media for grasping nearby friend based on short-range wireless communication
US20170344458A1 (en) System and method for determining relevance of application software maintenance
CN112433730A (zh) 代码检测规则的生成方法、装置和电子设备
US20210096831A1 (en) Automated software generation through mutation and artificial selection
CN112650521B (zh) 软件开发工具包sdk热修复方法、装置与电子设备
Krainyk et al. Internet-of-Things Device Set Configuration for Connection to Wireless Local Area Network.
KR102072288B1 (ko) GANs을 이용한 보안 로그 데이터의 이상 탐지 방법 및 이를 수행하는 장치들
US10169216B2 (en) Simulating sensors
CN112882921B (zh) 故障模拟方法和装置
US12020015B2 (en) Partitioned deployment of updates to cloud service based on centerally updated configuration store
US20230221941A1 (en) Partitioned deployment of updates to cloud service based on centerally updated configuration store
US20240020199A1 (en) Automatically Halting Cloud Service Deployments Based on Telemetry and Alert Data
US20200293823A1 (en) Method and system of auto build of image analytics program

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant