CN106708715A - 自动化测试方法及装置 - Google Patents
自动化测试方法及装置 Download PDFInfo
- Publication number
- CN106708715A CN106708715A CN201510409182.2A CN201510409182A CN106708715A CN 106708715 A CN106708715 A CN 106708715A CN 201510409182 A CN201510409182 A CN 201510409182A CN 106708715 A CN106708715 A CN 106708715A
- Authority
- CN
- China
- Prior art keywords
- test
- node module
- test assignment
- idle
- test case
- 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.)
- Pending
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本申请实施例涉及一种自动化测试方法及装置,主控模块从测试任务列表中读取未被执行过的至少一个测试任务;对未被执行过的至少一个测试任务中的每个测试任务,从节点模块集合中选取对应的空闲节点模块;向空闲节点模块发送对应的测试任务,以使空闲节点模块根据测试任务,获取对应的测试用例集合,并使空闲节点模块执行测试用例集合中的测试用例,并记录测试用例的执行结果信息。由此,可以支持多个测试任务并发执行,从而提高了自动化测试方法的效率。
Description
技术领域
本申请涉及测试技术领域,尤其涉及一种自动化测试方法及装置。
背景技术
随着自动化测试技术的普及,对终端设备的用户界面(UI,UserInterface)进行测试逐渐由手工测试转为UI自动化测试。UI自动化测试,即由机器模拟用户针对UI的操作,从而进行自动化测试,主要包含网页(Web)UI自动化测试和本地应用程序UI自动化测试。
现有技术进行Web UI自动化测试时,程序员预先编写测试脚本,然后在服务端或者通信代理端插入测试脚本,从而实现Web运行时执行测试脚本,以获得测试结果,然而在上述测试方法中,一次只能执行一个测试任务,如,一次只能对一种运行环境(如,IOS 6.0)下的Web进行测试,当需要对多种运行环境下的Web进行测试时,则需要根据串行的方式依次进行,这会影响自动化测试方法的效率。
发明内容
本申请实施例提供了一种自动化测试方法及装置,可以支持多个测试任务并发执行,由此提高了自动化测试方法的效率。
第一方面,提供了一种自动化测试方法,该方法包括:
主控模块从测试任务列表中读取未被执行过的至少一个测试任务;
对所述未被执行过的至少一个测试任务中的每个测试任务,从节点模块集合中选取对应的空闲节点模块;
向所述空闲节点模块发送对应的测试任务,以使所述空闲节点模块根据所述测试任务,获取对应的测试用例集合,并使所述空闲节点模块执行所述测试用例集合中的测试用例,记录所述测试用例的执行结果信息。
第二方面,提供了一种自动化测试方法,该方法包括:
空闲节点模块集合中的至少一个空闲节点模块接收主控模块发送的对应的测试任务,其中,所述测试任务是由所述主控模块从测试任务列表中读取的未被执行过的至少一个测试任务中的测试任务;
所述空闲节点模块根据所述测试任务,获取对应的测试用例集合;
所述空闲节点模块执行所述测试用例集合中的测试用例,并记录所述测试用例的执行结果信息。
第三方面,提供了一种自动化测试装置,该装置包括:读取单元、选取单元和发送单元;
所述读取单元,用于从测试任务列表中读取未被执行过的至少一个测试任务;
所述选取单元,用于对所述读取单元读取的所述未被执行过的至少一个测试任务中的每个测试任务,从节点模块集合中选取对应的空闲节点模块;
所述发送单元,用于向所述选取单元选取的所述空闲节点模块发送对应的测试任务,以使所述空闲节点模块根据所述测试任务,获取对应的测试用例集合,并使所述空闲节点模块执行所述测试用例集合中的测试用例,记录所述测试用例的执行结果信息。
第四方面,提供了一种自动化测试装置,该装置包括:接收单元、获取单元和执行单元;
所述接收单元,用于接收主控模块发送的对应的测试任务,其中,所述测试任务是由所述主控模块从测试任务列表中读取的未被执行过的至少一个测试任务中的测试任务;
所述获取单元,用于根据所述接收单元接收的所述测试任务,获取对应的测试用例集合;
所述执行单元,用于执行所述获取单元获取的所述测试用例集合中的测试用例,并记录所述测试用例的执行结果信息。
本申请提供的自动化测试方法及装置,主控模块从测试任务列表中读取未被执行过的至少一个测试任务;对所述未被执行过的至少一个测试任务中的每个测试任务,所述主控模块从节点模块集合中选取对应的空闲节点模块;所述主控模块向所述空闲节点模块发送对应的测试任务,以使所述空闲节点模块根据所述测试任务,获取对应的测试用例集合,并使所述空闲节点模块执行所述测试用例集合中的测试用例,并记录所述测试用例的执行结果信息。由此,可以支持多个测试任务并发执行,从而提高了自动化测试方法的效率。
附图说明
图1为本申请一种实施例提供的自动化测试方法流程图;
图2为本申请的测试系统的示意图;
图3为图2中的主控模块的示意图;
图4为图2中的一个节点模块的示意图;
图5为图4中的驱动单元的示意图;
图6为本申请的测试任务列表的示意图之一;
图7为本申请的测试任务列表的示意图之二;
图8为本申请的测试任务列表的示意图之三;
图9为本申请另一种实施例提供的自动化测试方法流程图;
图10为本申请再一种实施例提供的自动化测试装置示意图;
图11为本申请又一种实施例提供的自动化测试装置示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为便于对本申请实施例的理解,下面将结合附图以具体实施例做进一步的解释说明,实施例并不构成对本申请实施例的限定。
本申请实施例提供的自动化测试方法及装置,适用于对终端设备的WebUI进行自动化测试的场景,尤其适用于对不同运行环境下的移动终端的WebUI进行并发自动化测试的场景,此处,不同的运行环境可以是指运行Web UI的移动终端的多种类型操作系统的不同版本,如IOS(6,7.2,8+)或者Andriod(2.3,3,4.2,4.4.4,5+)。当然,在实际应用中,上述不同运行环境也可以是指Web UI的不同版本(存在表现差异或者容器差异)等。
此外,本说明书中的Web可以为如下三种类型中的任一种:
1)基于本地(操作系统)运行的应用程序(Appl icat ion,App),也称原生(Nat ive)App;
2)基于高端机的浏览器运行的Web App;
3)混合式(Hybrid)App。
其中,第三种类型的Web为目前通用的Web类型,如,淘宝客户端或者支付宝钱包客户端等均采用第三种类型的Web。
图1为本申请一种实施例提供的自动化测试方法流程图。所述方法的执行主体可以为具有处理能力的设备:服务器或者系统或者装置,例如,可以是测试系统中的主控模块(Mas ter),参见图2所示的测试系统的示意图,该测试系统包括主控模块21和一个或者多个节点模块(Slave)22,一个或者多个节点模块22组成节点模块集合,主控模块21与一个或者多个节点模块22之间可以通过长链接的方式通信,如,在任一节点模块执行测试任务结束后,实时向主控模块21返回测试任务的执行结果信息;也可以是主控模块21周期性向一个或者多个节点模块22发送执行结果询问请求(如,超文本传输协议(HyperText Transfer Protocol,HTTP)请求),一个或者多个节点模块22在接收到执行结果询问请求之后,向主控模块21返回测试任务的执行结果信息。
优选地,上述节点模块集合中的节点模块的个数不小于测试任务的个数。
参见图3所示的图2中的主控模块的示意图,图3中,主控模块21包含第二UI211,主控模块21通过第二UI211接收用户输入的操作指令;和/或,主控模块21通过第二UI211向用户展示执行结果信息。举例来说,管理员可以基于该第二UI211创建、修改或者删除测试任务。此外,管理员还可以通过该第二UI211查看已创建的测试任务的执行结果信息。在一种具体实现方式中,主控模块21通过测试任务列表维护上述创建的测试任务,其中,维护是指增加、删除以及修改测试任务。
图3中,主控模块21还具有调度与派发测试任务的功能,即当读取到已创建的未被执行的测试任务时,从节点模块集合中选取空闲节点模块22,然后将上述测试任务派发给空闲节点模块22进行处理;在空闲节点模块22执行该测试任务之后,也即在空闲节点模块22执行与测试任务对应的测试用例之后,空闲节点模块22主动向主控模块21返回测试任务的执行结果信息(如在上述长连接的方式下),或者,空闲节点模块22在接收到主控模块21发送的执行结果询问请求之后,向主控模块21返回测试任务的执行结果信息。
图3中,主控模块21可以周期性从本地读取已创建的未被执行的至少一个测试任务;也可以是在接收到代码仓库发送的提示消息之后,从本地读取已创建的未被执行的至少一个测试任务,此处,提示消息用于提示主控模块21有新的代码被上传。上述代码仓库用于对开发过程中的代码进行管理,其中,代码可以包括开发代码和测试代码,其中,开发代码也称为被测代码,是程序员编写的用于实现一个或者多个功能的计算机语言;测试代码也可以称为测试用例集合,该测试用例集合中可以包括一个或者多个测试用例,其用于模拟真实场景下对开发代码的调用,通过将调用结果与预先设置好的期望值的比较,可以判定测试结果是通过还是失败。
上述代码仓库包括客户端和服务端,程序员在本地完成代码(包括开发代码以及测试代码)的编写之后,可以通过在客户端中输入服务端的地址、用户名以及密码登录到服务端,然后将编写好的代码提交到服务端。当然,程序员在通过上述方式登录到服务端后,还可以根据测试用例集合的地址信息,从代码仓库中下载测试用例集合。
综上,通过主控模块21可以将要执行的测试任务保存起来,然后定时循环执行或者依照其它优先级策略执行上述保存的测试任务,由此,本申请的测试系统可以支持持续集成测试。
参见图4所示的图2中的一个节点模块的示意图,图4中,节点模块22包含服务单元(Slave Sever)221和驱动单元(Slave Driver)222,服务单元221可以对主控模块发送的空闲询问请求进行处理,其中,该空闲询问请求是在主控模块21从本地读取已创建的未被执行的测试任务时发送的。服务单元221对主控模块21发送的空闲询问请求的处理过程具体为:如果当前节点模块22正在执行测试任务,则向主控模块21返回用于表示忙的信息,而如果当前节点模块22没有正在执行的测试任务,则向主控模块21返回用于表示空闲的信息。需要说明的是,如果当前节点模块22空闲,且接收到主控模块21发送的测试任务时,则服务单元221根据测试任务中携带的与该测试任务对应的测试用例集合的地址信息,从代码仓库中下载测试用例集合(该过程也称为服务单元221的配置管理功能)。之后通过与驱动单元222的通信实现对测试用例集合中测试用例的执行,并在测试用例执行完成之后,根据测试用例的执行结果信息生成测试报告。
需要说明的是,上述服务单元221还集成了多种测试框架(如,mochajs以及JS单元测试框架(Jasmine)等),也即在通过本申请的测试方法对待测Web进行测试时,可以不对Web客户端的框架进行限制,甚至可以不用限制Web客户端的编写语言,由此,提高了本申请自动化测试方法的适用性。
在一种具体实现方式中,服务单元221与驱动单元222之间使用socket通过指定端口通信。
参见图5所示的图4中的驱动单元的示意图,驱动单元222包含服务端(Driver Server)和客户端(Driver Cl ient),服务端封装了多种类型操作系统的应用程序编程接口(Appl icat ion Programming Interface,API)函数,如,封装了多种类型操作系统的不同版本的API函数,如,封装了IOS(6,7.2,8+)或者Andriod(2.3,3,4.2,4.4.4,5+)的API函数,此外,还封装了上述操作系统的底层事件以及驱动器等,通过在驱动单元222的服务端中封装上述API函数,就可以实现对操作系统的版本模拟器的模拟,由此,本申请的自动化测试方法即可在虚拟的环境下进行,这与现有技术中使用堆叠真机的测试方法相比,可以极大的节约成本。此外,当本申请中的节点模块集合中包括多个节点模块,每个节点模块均包含驱动单元,且在多个节点模块均处于空闲状态时,就可以实现对多个测试任务的并发执行,如,可以对运行在多种类型操作系统的不同版本下的Web同时进行测试。
举例来说,假设有两个未被执行的测试任务:IOS 7操作系统下的第一Web的功能1和Andriod 4.2操作系统下的第一Web的功能1,且节点模块集合中有三个空闲节点模块,则从三个空闲模块中任选两个空闲模块,通过该两个空闲模块来并发执行上述两个未被执行的测试任务。
图5中,服务单元221在执行测试用例集合中的测试用例之前,首先确定与当前测试任务对应的操作系统的类型以及版本,之后通过浏览器驱动协议(如,Webdriver API)向驱动单元222的服务端发送指示消息,该指示消息用于指示服务端执行具体的功能,服务端在执行具体的功能时,通过与上述确定类型以及版本的操作系统的API,实现与操作系统交互。如前述例子中,当服务单元221在执行第二个测试任务时,驱动单元222的服务端通过UIAutomator实现与操作系统Andriod 4.2交互。
回到图1,所述方法具体可以包括:
步骤110,主控模块从测试任务列表中读取未被执行过的至少一个测试任务。
此处,测试任务列表用于维护(包括:增加、删除以及修改)测试任务,而测试任务可以是程序员根据待测试Web的第一UI及控件预先编写好的。测试任务列表中的测试任务可以包括三种状态:未开始(即未被执行过)、正在执行和已结束。对于已结束的测试任务,程序员可以通过第一UI查看其执行结果信息。
参见图6所示的测试任务列表的示意图之一,该测试任务列表显示在主控模块的第二UI的一个界面中,图6中,测试任务列表中包含两个测试任务,该两个测试任务是程序员根据支付宝钱包客户端的第一UI及控件预先编写好的。在程序员编写好上述测试任务之后,主控模块21唯一地为每个测试任务分配一个ID。此外,图6中,每个测试任务可以唯一地对应一种类型的设备,也即每个测试任务可以唯一地对应一种类型操作系统的一个版本,如,第一个测试任务的设备类型为IOS 7,第二个测试任务的设备类型为Andriod 4.2。
当然,图6、图7和图8只是作为一种具体的实施方式,在其他实施方式中,测试任务列表也可以为其它形式,本申请对此也不作特别限定。本发明的保护范围应该以权利要求的保护范围为准。
在编写好上述测试任务之后,程序员还需要编写与测试任务相对应的测试用例集合,该测试用例集合中包括一个或者多个测试用例,其中,测试用例集合中的测试用例可以是根据待测试网页Web的第一用户界面UI及控件编写的。程序员在编写好与测试任务对应的测试用例集合之后,将该测试用例集合上传到代码仓库,并建立测试用例集合在代码仓库的地址信息与测试任务的对应关系。
步骤110中,主控模块可以周期性从测试任务列表中读取未被执行过的至少一个测试任务;也可以是在接收到代码仓库发送的提示消息之后,从测试任务列表中读取未被执行过的至少一个测试任务。
步骤120,对所述未被执行过的至少一个测试任务中的每个测试任务,从节点模块集合中选取对应的空闲节点模块。
此处,节点模块集合中可以包括一个或者多个节点模块。可以理解的是,初始时,节点模块集合中的每个节点模块均为空闲节点模块。
图6中,当主控模块从测试任务列表中读取两个测试任务,则对该两个测试任务中的每个测试任务,主控模块从节点模块集合中选取对应的空闲节点模块。可以理解的是,当有两个测试任务时,则需要选取两个空闲节点模块。当节点模块集合中有两个空闲节点模块时,则两个空闲节点模块分别执行上述两个测试任务,也即并发执行测试任务;而当节点模块集合中只有一个空闲节点模块时,则可以按照优先级策略先执行一个测试任务,待节点模块集合中有其它空闲节点模块时,再执行另一个测试任务。此外,当空闲节点模块的个数多于两个时,则从空闲节点模块中任选两个空闲节点模块,以用于执行上述两个测试任务。
当然,在实际应用中,主控模块也可以读取两个以上测试任务,两个以上测试任务的执行方法同两个测试任务的执行方法类似,即先选取两个以上空闲节点模块,若空闲节点模块的个数M大于等于测试任务的个数N,则两个以上的测试任务并发执行,而当空闲节点模块的个数M小于测试任务的个数N时,则按照优先级策略先执行两个以上测试任务中的部分测试任务(即M个测试任务),待节点模块集合中有其它空闲节点模块时,再执行其它测试任务,直至所有的测试任务均执行完成。
需要说明的是,步骤120中从节点模块集合中选取对应的空闲节点模块包括:
向所述节点模块集合中的每个节点模块发送空闲询问请求,并将根据所述空闲询问请求,返回用于表示空闲的消息的任一节点模块选取为所述空闲节点模块。
即主控模块向节点模块集合中的每个节点模块发送空闲询问请求,如果节点模块正在执行测试任务,则向主控模块返回用于表示忙的信息,而如果节点模块没有正在执行的测试任务,则向主控模块返回用于表示空闲的信息,主控模块在接收到用于表示空闲的信息时,则将发送该用于表示空闲的信息的节点模块选取为空闲节点模块。
在上述过程中,在主控模块向节点模块集合中的每个节点模块发送空闲询问请求后,可以有多个节点模块返回用于表示空闲的信息,此时,主控模块可以将该多个节点模块选取为多个空闲节点模块,并建立该多个空闲节点模块与多个测试任务的对应关系。当还有剩余的测试任务未选取空闲节点模块时,则间隔阈值时间之后再次向节点模块集合中的每个节点模块发送空闲询问请求,直至为至少一个测试任务中的每个测试任务选取对应的空闲节点模块为止。
当然,在主控模块向节点模块集合中的每个节点模块发送空闲询问请求后,也可能主控模块只接收到节点模块返回的用于表示忙的信息,主控模块在间隔阈值时间之后再次向节点模块集合中的每个节点模块发送空闲询问请求,直至为至少一个测试任务中的每个测试任务选取对应的空闲节点模块为止。
步骤130,向所述空闲节点模块发送对应的测试任务,以使所述空闲节点模块根据所述测试任务,获取对应的测试用例集合,并使所述空闲节点模块执行所述测试用例集合中的测试用例,记录所述测试用例的执行结果信息。
在一种实施方式中,所述测试任务中携带与所述测试任务对应的测试用例集合的地址信息;所述空闲节点模块根据所述测试任务,获取对应的测试用例集合包括:
所述空闲节点模块根据所述地址信息,从代码仓库中下载对应的测试用例集合。
如前述例子中,主控模块为两个测试任务选取对应的两个空闲节点模块,并向两个空闲节点模块发送对应的测试任务,两个空闲节点模块中的每个空闲节点模块在接收到与其对应的测试任务后,根据测试任务中携带的与该测试任务对应的测试用例集合的地址信息,从代码仓库中下载对应的测试用例集合,并执行测试用例集合中的测试用例。
当然,上述根据测试任务中携带的与该测试任务对应的测试用例集合的地址信息,从代码仓库中下载对应的测试用例集合只是作为本申请实施例中一种优选的做法,在实际应用中,空闲节点模块也可以通过其它方式获取与测试任务对应的测试用例集合,如,测试任务中直接携带与所述测试任务对应的测试用例集合,空闲节点模块在接收到测试用例集合后,执行测试用例集合中的测试用例。
可选地,所述测试任务中还携带操作系统的类型,所述空闲节点模块在执行所述测试用例集合中的测试用例时,通过所述类型的操作系统的应用程序编程接口API函数,实现与所述类型的操作系统交互,其中,所述类型的操作系统的API函数封装在所述空闲节点模块的驱动单元中。
如前述例子,与ID=1的测试任务(与其对应的设备类型为:IOS 7.0)对应的空闲节点模块在执行与其对应的测试用例集合中的测试用例时,空闲节点模块中的服务单元通过浏览器驱动协议(如,Webdriver API)向驱动单元的服务端发送指示消息,该指示消息用于指示服务端执行具体的功能,服务端在执行具体的功能时,通过UI Automat ion实现与操作系统IOS 7.0交互,此处,UI Automat ion为操作系统IOS 7.0的API函数,也即空闲节点模块通过所述类型的操作系统的API函数,实现与所述类型的操作系统交互。而当与ID=2的测试任务(与其对应的设备类型为:Andriod 4.2)对应的空闲节点模块在执行与其对应的测试用例集合中的测试用例时,服务端在执行具体的功能时,通过UI Automator实现与操作系统Andriod 4.2交互。由此,本申请通过对操作系统的版本模拟器的调用,可以方便地实现对多种类型终端设备的Web进行测试,这与现有技术中使用堆叠真机的测试方法相比,可以极大的节约成本。
可选地,主控模块还可以周期性向空闲节点模块发送执行结果询问请求,以使空闲节点模块在记录测试用例的执行结果信息后,向主控模块返回执行结果信息。如前述例子中,与两个测试任务对应的两个空闲节点模块在接收到主控模块发送的执行结果询问请求,并且在执行完成测试用例集合中的测试用例之后,分别向主控模块返回执行结果信息。
当然,空闲节点模块也可以在执行完成测试用例集合中的测试用例之后,直接向主控模块返回执行结果信息。
可以理解的是,由于测试任务与测试用例集合一一对应,因此,测试用例集合中测试用例的执行结果信息,也即为测试任务的执行结果信息。主控模块在接收到上述执行结果信息之后,将其记录到测试任务列表中的对应位置,也即将其存储到主控模块的数据库中。当用户想要查看任一测试任务的执行结果信息时,可以点击图6中的“查看”按钮;在用户点击图6中的“查看”按钮之后,就可以加载图7所示的界面,该界面可以为主控模块的第二UI中的另一界面;而在用户点击图7中的任一行记录之后,就可以加载图8所示的界面,该界面可以为主控模块的第二UI中的再一界面,通过图8用户可以查看测试用例集合中每个测试用例的执行情况,即可以查看每个测试用例是否执行成功,以及执行每个测试用例所消耗的时间等。
本申请提供的用户界面自动化测试方法,主控模块从测试任务列表中读取未被执行过的至少一个测试任务;对所述未被执行过的至少一个测试任务中的每个测试任务,所述主控模块从节点模块集合中选取对应的空闲节点模块;所述主控模块向所述空闲节点模块发送对应的测试任务,以使所述空闲节点模块根据所述测试任务,获取对应的测试用例集合,并使所述空闲节点模块执行所述测试用例集合中的测试用例,并记录所述测试用例的执行结果信息。由此,可以支持多个测试任务并发执行,从而提高了自动化测试方法的效率。
图9为本申请另一种实施例提供的自动化测试方法流程图,所述方法的执行主体可以为图2中测试系统的节点模块,如图9所示,所述方法具体可以包括:
步骤910,空闲节点模块集合中的至少一个空闲节点模块接收主控模块发送的对应的测试任务,其中,所述测试任务是由所述主控模块从测试任务列表中读取的未被执行过的至少一个测试任务中的测试任务。
上述空闲节点模块集合中的空闲节点模块是由主控模块从节点模块集合中选取的,其选取方法可以如下:
向所述节点模块集合中的每个节点模块发送空闲询问请求,并将根据所述空闲询问请求,返回用于表示空闲的消息的任一节点模块选取为所述空闲节点模块。
即主控模块向节点模块集合中的每个节点模块发送空闲询问请求,如果节点模块正在执行测试任务,则向主控模块返回用于表示忙的信息,而如果节点模块没有正在执行的测试任务,则向主控模块返回用于表示空闲的信息,主控模块在接收到用于表示空闲的信息时,则将发送该用于表示空闲的信息的节点模块选取为空闲节点模块。
在上述过程中,在主控模块向节点模块集合中的每个节点模块发送空闲询问请求后,可以有多个节点模块返回用于表示空闲的信息,此时,主控模块可以将该多个节点模块选取为多个空闲节点模块。
当然,在主控模块向节点模块集合中的每个节点模块发送空闲询问请求后,也可能主控模块只接收到节点模块返回的用于表示忙的信息,主控模块在间隔阈值时间之后再次向节点模块集合中的每个节点模块发送空闲询问请求,直至为至少一个测试任务中的每个测试任务选取对应的空闲节点模块为止。
可以理解的是,初始时,节点模块集合中的每个节点模块均为空闲节点模块,也即空闲节点模块集合与节点模块集合是相同的。
步骤910中,测试任务列表用于维护(包括:增加、删除以及修改)测试任务,而测试任务可以是程序员根据待测试Web的第一UI及控件预先编写好的。测试任务列表中的测试任务可以包括三种状态:未开始(即未被执行过)、正在执行和已结束。对于已结束的测试任务,程序员可以通过第一UI查看其执行结果信息。
参见图6所示的测试任务列表的示意图之一,该测试任务列表显示在主控模块的第二UI的一个界面中,图6中,测试任务列表中包含两个测试任务,该两个测试任务是程序员根据支付宝钱包客户端的第一UI及控件预先编写好的。在程序员编写好上述测试任务之后,主控模块21唯一地为每个测试任务分配一个ID。此外,图6中,每个测试任务可以唯一地对应一种类型的设备,也即每个测试任务可以唯一地对应一种类型操作系统的一个版本,如,第一个测试任务的设备类型为IOS 7,第二个测试任务的设备类型为Andriod 4.2。
在编写好上述测试任务之后,程序员还需要编写与测试任务相对应的测试用例集合,该测试用例集合中包括一个或者多个测试用例,其中,测试用例集合中的测试用例可以是根据待测试网页Web的第一用户界面UI及控件编写的。程序员在编写好与测试任务对应的测试用例集合之后,将该测试用例集合上传到代码仓库,并建立测试用例集合在代码仓库的地址信息与测试任务的对应关系。
步骤910中,主控模块可以周期性从测试任务列表中读取未被执行过的至少一个测试任务;也可以是在接收到代码仓库发送的提示消息之后,从测试任务列表中读取未被执行过的至少一个测试任务。
图6中,当主控模块从测试任务列表中读取两个测试任务,则对该两个测试任务中的每个测试任务,主控模块从节点模块集合中选取对应的空闲节点模块。
步骤920,所述空闲节点模块根据所述测试任务,获取对应的测试用例集合。
可选地,所述测试任务中携带与所述测试任务对应的测试用例集合的地址信息;
所述空闲节点模块根据所述测试任务,获取对应的测试用例集合包括:
所述空闲节点模块根据所述地址信息,从代码仓库中下载对应的测试用例集合。
步骤930,所述空闲节点模块执行所述测试用例集合中的测试用例,并记录所述测试用例的执行结果信息。
如前述例子中,当主控模块选取两个测试任务时,则两个空闲节点模块接收主控模块发送的对应的测试任务,两个空闲节点模块中的每个空闲节点模块在接收到与其对应的测试任务后,根据测试任务中携带的与该测试任务对应的测试用例集合的地址信息,从代码仓库中下载对应的测试用例集合,并执行测试用例集合中的测试用例。
可选地,所述测试任务中还携带操作系统的类型,所述空闲节点模块执行所述测试用例集合中的测试用例包括:
所述空闲节点模块在执行所述测试用例集合中的测试用例时,通过所述类型的操作系统的应用程序编程接口API函数,实现与所述类型的操作系统交互,其中,所述类型的操作系统的API函数封装在所述空闲节点模块的驱动单元中。
如前述例子,与ID=1的测试任务(与其对应的设备类型为:IOS 7.0)对应的空闲节点模块在执行与其对应的测试用例集合中的测试用例时,空闲节点模块中的服务单元通过浏览器驱动协议(如,Webdriver API)向驱动单元的服务端发送指示消息,该指示消息用于指示服务端执行具体的功能,服务端在执行具体的功能时,通过UI Automat ion实现与操作系统IOS 7.0交互,此处,UI Automat ion为操作系统IOS 7.0的API函数,也即空闲节点模块通过所述类型的操作系统的API函数,实现与所述类型的操作系统交互。而当与ID=2的测试任务(与其对应的设备类型为:Andriod 4.2)对应的空闲节点模块在执行与其对应的测试用例集合中的测试用例时,服务端在执行具体的功能时,通过UI Automator实现与操作系统Andriod 4.2交互。由此,本申请通过对操作系统的版本模拟器的调用,可以方便地实现对多种类型终端设备的Web进行测试,这与现有技术中使用堆叠真机的测试方法相比,可以极大的节约成本。
在所述记录所述测试用例的执行结果信息之后,所述方法还包括:
所述空闲节点模块直接向所述主控模块返回所述执行结果信息;或者,
所述空闲节点模块在接收到所述主控模块发送的询问请求时,向所述主控模块返回所述执行结果信息。
如前述例子中,与两个测试任务对应的两个空闲节点模块在接收到主控模块发送的执行结果询问请求,并且在执行完成测试用例集合中的测试用例之后,分别向主控模块返回执行结果信息。
可以理解的是,由于测试任务与测试用例集合一一对应,因此,测试用例集合中测试用例的执行结果信息,也即为测试任务的执行结果信息。主控模块在接收到上述执行结果信息之后,将其记录到测试任务列表中的对应位置,也即将其存储到主控模块的数据库中。当用户想要查看任一测试任务的执行结果信息时,可以点击图6中的“查看”按钮;在用户点击图6中的“查看”按钮之后,就可以加载图7所示的界面,该界面可以为主控模块的第二UI中的另一界面;而在用户点击图7中的任一行记录之后,就可以加载图8所示的界面,该界面可以为主控模块的第二UI中的再一界面,通过图8用户可以查看测试用例集合中每个测试用例的执行情况,即可以查看每个测试用例是否执行成功,以及执行每个测试用例所消耗的时间等。
本申请提供的用户界面自动化测试方法,空闲节点模块集合中的至少一个空闲节点模块接收主控模块发送的对应的测试任务,其中,所述测试任务是由所述主控模块从测试任务列表中读取的未被执行过的至少一个测试任务中的测试任务;所述空闲节点模块根据所述测试任务,获取对应的测试用例集合;所述空闲节点模块执行所述测试用例集合中的测试用例,并记录所述测试用例的执行结果信息。由此,可以支持多个测试任务并发执行,从而提高了自动化测试方法的效率。
与上述自动化测试方法对应地,本申请实施例还提供的一种自动化测试装置,如图10所示,该装置包括:读取单元1001、选取单元1002和发送单元1003。
读取单元1001,用于从测试任务列表中读取未被执行过的至少一个测试任务。
选取单元1002,用于对读取单元1001读取的所述未被执行过的至少一个测试任务中的每个测试任务,从节点模块集合中选取对应的空闲节点模块。
选取单元1002具体用于:向所述节点模块集合中的每个节点模块发送空闲询问请求,并将根据所述空闲询问请求,返回用于表示空闲的消息的任一节点模块选取为所述空闲节点模块。
发送单元1003,用于向选取单元1002选取的所述空闲节点模块发送对应的测试任务,以使所述空闲节点模块根据所述测试任务,获取对应的测试用例集合,并使所述空闲节点模块执行所述测试用例集合中的测试用例,记录所述测试用例的执行结果信息。
所述测试用例可以是根据待测试网页Web的第一用户界面UI及控件预先编写的。
可选地,所述测试任务中还携带操作系统的类型,所述空闲节点模块在执行所述测试用例集合中的测试用例时,通过所述类型的操作系统的应用程序编程接口API函数,实现与所述类型的操作系统交互,其中,所述类型的操作系统的API函数封装在所述空闲节点模块的驱动单元中。
可选地,发送单元1003还用于:周期性向所述空闲节点模块发送执行结果询问请求,以使所述空闲节点模块在记录所述测试用例的执行结果信息后,返回所述执行结果信息。
本申请实施例装置的各功能模块的功能,可以通过上述方法实施例的各步骤来实现,因此,本申请提供的装置的具体工作过程,在此不复赘述。
本申请提供的自动化测试装置,读取单元1001从测试任务列表中读取未被执行过的至少一个测试任务;选取单元1002对所述未被执行过的至少一个测试任务中的每个测试任务,从节点模块集合中选取对应的空闲节点模块;发送单元1003向所述空闲节点模块发送对应的测试任务,以使所述空闲节点模块根据所述测试任务,获取对应的测试用例集合,并使所述空闲节点模块执行所述测试用例集合中的测试用例,记录所述测试用例的执行结果信息。由此,可以支持多个测试任务并发执行,从而提高了自动化测试方法的效率。
与上述自动化测试方法对应地,本申请实施例还提供的一种自动化测试装置,如图11所示,该装置包括:接收单元1101、获取单元1102和执行单元1103。
接收单元1101,用于接收主控模块发送的对应的测试任务,其中,所述测试任务是由所述主控模块从测试任务列表中读取的未被执行过的至少一个测试任务中的测试任务。
获取单元1102,用于根据接收单元1101接收的所述测试任务,获取对应的测试用例集合。
执行单元1103,用于执行获取单元1102获取的所述测试用例集合中的测试用例,并记录所述测试用例的执行结果信息。
可选地,所述测试任务中携带与所述测试任务对应的测试用例集合的地址信息;
获取单元1102具体用于:根据所述地址信息,从代码仓库中下载对应的测试用例集合。
可选地,所述测试任务中还携带操作系统的类型;
执行单元具1103体用于:在执行所述测试用例集合中的测试用例时,通过所述类型的操作系统的应用程序编程接口API函数,实现与所述类型的操作系统交互,其中,所述类型的操作系统的API函数封装在所述装置的驱动单元中。
可选地,所述装置还包括:返回单元1104,用于直接向所述主控模块返回所述执行结果信息;或者,
在接收到所述主控模块发送的询问请求时,向所述主控模块返回所述执行结果信息。
本申请实施例装置的各功能模块的功能,可以通过上述方法实施例的各步骤来实现,因此,本申请提供的装置的具体工作过程,在此不复赘述。
本申请提供的自动化测试装置,接收单元1101接收主控模块发送的对应的测试任务,其中,所述测试任务是由所述主控模块从测试任务列表中读取的未被执行过的至少一个测试任务中的测试任务;获取单元1102根据所述测试任务,获取对应的测试用例集合;执行单元1103执行所述测试用例集合中的测试用例,并记录所述测试用例的执行结果信息。由此,可以支持多个测试任务并发执行,从而提高了自动化测试方法的效率。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的对象及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本申请的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本申请的具体实施方式而已,并不用于限定本申请的保护范围,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (18)
1.一种自动化测试方法,其特征在于,该方法包括:
主控模块从测试任务列表中读取未被执行过的至少一个测试任务;
对所述未被执行过的至少一个测试任务中的每个测试任务,从节点模块集合中选取对应的空闲节点模块;
向所述空闲节点模块发送对应的测试任务,以使所述空闲节点模块根据所述测试任务,获取对应的测试用例集合,并使所述空闲节点模块执行所述测试用例集合中的测试用例,记录所述测试用例的执行结果信息。
2.根据权利要求1所述的方法,其特征在于,所述测试用例是根据待测试网页Web的第一用户界面UI及控件预先编写的。
3.根据权利要求1或2所述的方法,其特征在于,所述测试任务中还携带操作系统的类型,所述空闲节点模块在执行所述测试用例集合中的测试用例时,通过所述类型的操作系统的应用程序编程接口API函数,实现与所述类型的操作系统交互,其中,所述类型的操作系统的API函数封装在所述空闲节点模块的驱动单元中。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:
所述主控模块周期性向所述空闲节点模块发送执行结果询问请求,以使所述空闲节点模块在记录所述测试用例的执行结果信息后,向所述主控模块返回所述执行结果信息。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述从节点模块集合中选取对应的空闲节点模块包括:
向所述节点模块集合中的每个节点模块发送空闲询问请求,并将根据所述空闲询问请求,返回用于表示空闲的消息的任一节点模块选取为所述空闲节点模块。
6.一种自动化测试方法,其特征在于,该方法包括:
空闲节点模块集合中的至少一个空闲节点模块接收主控模块发送的对应的测试任务,其中,所述测试任务是由所述主控模块从测试任务列表中读取的未被执行过的至少一个测试任务中的测试任务;
所述空闲节点模块根据所述测试任务,获取对应的测试用例集合;
所述空闲节点模块执行所述测试用例集合中的测试用例,并记录所述测试用例的执行结果信息。
7.根据权利要求6所述的方法,其特征在于,所述测试任务中携带与所述测试任务对应的测试用例集合的地址信息;
所述空闲节点模块根据所述测试任务,获取对应的测试用例集合包括:
所述空闲节点模块根据所述地址信息,从代码仓库中下载对应的测试用例集合。
8.根据权利要求6或7所述的方法,其特征在于,所述测试任务中还携带操作系统的类型;
所述空闲节点模块执行所述测试用例集合中的测试用例包括:
所述空闲节点模块在执行所述测试用例集合中的测试用例时,通过所述类型的操作系统的应用程序编程接口API函数,实现与所述类型的操作系统交互,其中,所述类型的操作系统的API函数封装在所述空闲节点模块的驱动单元中。
9.根据权利要求6所述的方法,其特征在于,在所述记录所述测试用例的执行结果信息之后,所述方法还包括:
所述空闲节点模块直接向所述主控模块返回所述执行结果信息;或者,
所述空闲节点模块在接收到所述主控模块发送的询问请求时,向所述主控模块返回所述执行结果信息。
10.一种自动化测试装置,其特征在于,该装置包括:读取单元、选取单元和发送单元;
所述读取单元,用于从测试任务列表中读取未被执行过的至少一个测试任务;
所述选取单元,用于对所述读取单元读取的所述未被执行过的至少一个测试任务中的每个测试任务,从节点模块集合中选取对应的空闲节点模块;
所述发送单元,用于向所述选取单元选取的所述空闲节点模块发送对应的测试任务,以使所述空闲节点模块根据所述测试任务,获取对应的测试用例集合,并使所述空闲节点模块执行所述测试用例集合中的测试用例,记录所述测试用例的执行结果信息。
11.根据权利要求10所述的装置,其特征在于,所述测试用例是根据待测试网页Web的第一用户界面UI及控件预先编写的。
12.根据权利要求10或11所述的装置,其特征在于,所述测试任务中还携带操作系统的类型,所述空闲节点模块在执行所述测试用例集合中的测试用例时,通过所述类型的操作系统的应用程序编程接口API函数,实现与所述类型的操作系统交互,其中,所述类型的操作系统的API函数封装在所述空闲节点模块的驱动单元中。
13.根据权利要求10-12任一项所述的装置,其特征在于,所述发送单元还用于:周期性向所述空闲节点模块发送执行结果询问请求,以使所述空闲节点模块在记录所述测试用例的执行结果信息后,返回所述执行结果信息。
14.根据权利要求10-13任一项所述的装置,其特征在于,所述选取单元具体用于:
向所述节点模块集合中的每个节点模块发送空闲询问请求,并将根据所述空闲询问请求,返回用于表示空闲的消息的任一节点模块选取为所述空闲节点模块。
15.一种自动化测试装置,其特征在于,该装置包括:接收单元、获取单元和执行单元;
所述接收单元,用于接收主控模块发送的对应的测试任务,其中,所述测试任务是由所述主控模块从测试任务列表中读取的未被执行过的至少一个测试任务中的测试任务;
所述获取单元,用于根据所述接收单元接收的所述测试任务,获取对应的测试用例集合;
所述执行单元,用于执行所述获取单元获取的所述测试用例集合中的测试用例,并记录所述测试用例的执行结果信息。
16.根据权利要求15所述的装置,其特征在于,所述测试任务中携带与所述测试任务对应的测试用例集合的地址信息;
所述获取单元具体用于:
根据所述地址信息,从代码仓库中下载对应的测试用例集合。
17.根据权利要求15或16所述的装置,其特征在于,所述测试任务中还携带操作系统的类型;
所述执行单元具体用于:在执行所述测试用例集合中的测试用例时,通过所述类型的操作系统的应用程序编程接口API函数,实现与所述类型的操作系统交互,其中,所述类型的操作系统的API函数封装在所述装置的驱动单元中。
18.根据权利要求15所述的装置,其特征在于,所述装置还包括:返回单元,用于直接向所述主控模块返回所述执行结果信息;或者,
在接收到所述主控模块发送的询问请求时,向所述主控模块返回所述执行结果信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510409182.2A CN106708715A (zh) | 2015-07-13 | 2015-07-13 | 自动化测试方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510409182.2A CN106708715A (zh) | 2015-07-13 | 2015-07-13 | 自动化测试方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106708715A true CN106708715A (zh) | 2017-05-24 |
Family
ID=58898319
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510409182.2A Pending CN106708715A (zh) | 2015-07-13 | 2015-07-13 | 自动化测试方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106708715A (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107870839A (zh) * | 2017-11-23 | 2018-04-03 | 郑州云海信息技术有限公司 | 一种存储设备测试方法、系统及计算机可读存储介质 |
CN108563571A (zh) * | 2018-04-11 | 2018-09-21 | 车巴达(苏州)网络科技有限公司 | 软件接口测试方法及系统、计算机可读存储介质、终端 |
CN108763093A (zh) * | 2018-06-01 | 2018-11-06 | 政采云有限公司 | 一种自动化测试方法和系统 |
CN108959100A (zh) * | 2018-07-20 | 2018-12-07 | 中国邮政储蓄银行股份有限公司 | 应用程序的测试方法、装置和系统 |
CN110968504A (zh) * | 2019-11-07 | 2020-04-07 | 京东数字科技控股有限公司 | 测试方法、平台、电子设备和计算机存储介质 |
CN111324509A (zh) * | 2020-02-18 | 2020-06-23 | 广东小天才科技有限公司 | 一种对应用沉迷的识别方法和装置 |
CN111506508A (zh) * | 2020-04-17 | 2020-08-07 | 北京百度网讯科技有限公司 | 边缘计算测试方法、装置、设备和可读存储介质 |
CN111913884A (zh) * | 2020-07-30 | 2020-11-10 | 百度在线网络技术(北京)有限公司 | 分布式测试方法、装置、设备、系统和可读存储介质 |
CN111949546A (zh) * | 2020-08-21 | 2020-11-17 | 山东英信计算机技术有限公司 | 一种操作系统测试方法、装置、设备及可读存储介质 |
CN112714042A (zh) * | 2020-12-22 | 2021-04-27 | 北京字节跳动网络技术有限公司 | 压力测试方法、装置、电子设备和存储介质 |
CN113626326A (zh) * | 2021-08-09 | 2021-11-09 | 三峡高科信息技术有限责任公司 | 一种基于图像识别的拖拽式的零代码前端自动化测试系统 |
CN114880213A (zh) * | 2022-04-19 | 2022-08-09 | 北京金堤科技有限公司 | 网页界面测试方法、装置、存储介质与电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1866202A (zh) * | 2005-05-18 | 2006-11-22 | 大唐移动通信设备有限公司 | 嵌入式设备的驱动方法 |
CN102214139A (zh) * | 2011-06-01 | 2011-10-12 | 北京航空航天大学 | 一种面向分布式系统的自动化测试的执行控制与调度方法 |
CN102981951A (zh) * | 2012-11-01 | 2013-03-20 | 珠海金山网络游戏科技有限公司 | 云测试开发平台及云测试开发方法 |
US20140380278A1 (en) * | 2013-06-20 | 2014-12-25 | Nir Dayan | Automatic framework for parallel testing on multiple testing environments |
-
2015
- 2015-07-13 CN CN201510409182.2A patent/CN106708715A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1866202A (zh) * | 2005-05-18 | 2006-11-22 | 大唐移动通信设备有限公司 | 嵌入式设备的驱动方法 |
CN102214139A (zh) * | 2011-06-01 | 2011-10-12 | 北京航空航天大学 | 一种面向分布式系统的自动化测试的执行控制与调度方法 |
CN102981951A (zh) * | 2012-11-01 | 2013-03-20 | 珠海金山网络游戏科技有限公司 | 云测试开发平台及云测试开发方法 |
US20140380278A1 (en) * | 2013-06-20 | 2014-12-25 | Nir Dayan | Automatic framework for parallel testing on multiple testing environments |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107870839A (zh) * | 2017-11-23 | 2018-04-03 | 郑州云海信息技术有限公司 | 一种存储设备测试方法、系统及计算机可读存储介质 |
CN108563571A (zh) * | 2018-04-11 | 2018-09-21 | 车巴达(苏州)网络科技有限公司 | 软件接口测试方法及系统、计算机可读存储介质、终端 |
CN108763093A (zh) * | 2018-06-01 | 2018-11-06 | 政采云有限公司 | 一种自动化测试方法和系统 |
CN108959100A (zh) * | 2018-07-20 | 2018-12-07 | 中国邮政储蓄银行股份有限公司 | 应用程序的测试方法、装置和系统 |
CN110968504A (zh) * | 2019-11-07 | 2020-04-07 | 京东数字科技控股有限公司 | 测试方法、平台、电子设备和计算机存储介质 |
CN111324509A (zh) * | 2020-02-18 | 2020-06-23 | 广东小天才科技有限公司 | 一种对应用沉迷的识别方法和装置 |
CN111506508A (zh) * | 2020-04-17 | 2020-08-07 | 北京百度网讯科技有限公司 | 边缘计算测试方法、装置、设备和可读存储介质 |
CN111913884A (zh) * | 2020-07-30 | 2020-11-10 | 百度在线网络技术(北京)有限公司 | 分布式测试方法、装置、设备、系统和可读存储介质 |
CN111949546A (zh) * | 2020-08-21 | 2020-11-17 | 山东英信计算机技术有限公司 | 一种操作系统测试方法、装置、设备及可读存储介质 |
CN112714042A (zh) * | 2020-12-22 | 2021-04-27 | 北京字节跳动网络技术有限公司 | 压力测试方法、装置、电子设备和存储介质 |
CN113626326A (zh) * | 2021-08-09 | 2021-11-09 | 三峡高科信息技术有限责任公司 | 一种基于图像识别的拖拽式的零代码前端自动化测试系统 |
CN114880213A (zh) * | 2022-04-19 | 2022-08-09 | 北京金堤科技有限公司 | 网页界面测试方法、装置、存储介质与电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106708715A (zh) | 自动化测试方法及装置 | |
US11307969B2 (en) | Methods for improved web application testing using remote headless browsers and devices thereof | |
US20190324793A1 (en) | Transaction control arrangement for device management system | |
CN104219316B (zh) | 一种分布式系统中的调用请求处理方法及装置 | |
CN104978258B (zh) | 软件自动化测试方法及系统 | |
CN106470430A (zh) | 运营商配置的处理方法、设备和系统 | |
CN104581785B (zh) | 无线网络测试方法、测试装置和移动终端 | |
CN103475682B (zh) | 文件迁移方法及设备 | |
CN109446068A (zh) | 接口测试方法、装置、计算机设备和存储介质 | |
US10305962B1 (en) | Unit testing clients of web services | |
CN105164644A (zh) | 钩子框架 | |
CN103716356B (zh) | 基于web的存储过程操作方法、装置和系统 | |
CN108845949A (zh) | 一种性能测试方法及平台 | |
CN107844518B (zh) | 评估指定app下载量的方法、数据服务器、打包平台及系统 | |
CN111052776A (zh) | 嵌入式用户标识模块的监控 | |
CN108829588A (zh) | 一种测试应用程序的处理方法、部署系统及装置 | |
CN107733710A (zh) | 链路调用关系的构建方法、装置、计算机设备及存储介质 | |
CN109739704A (zh) | 一种接口测试方法、服务端及计算机可读存储介质 | |
CN109254765A (zh) | 定时任务管理方法、装置、计算机设备及存储介质 | |
CN105224541B (zh) | 数据的唯一性控制方法、信息存储方法及装置 | |
CN107526584B (zh) | 数据接入方法和装置 | |
CN109739492B (zh) | 一种生成脚本代码的方法、终端、设备和介质 | |
CN117056240B (zh) | 一种支持离线Jar包的数据元件开发调试方法和系统 | |
CN110109684A (zh) | 区块链节点管理代理服务安装方法、电子装置及存储介质 | |
CN104252413A (zh) | 一种自动化脚本生成方法、装置及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170524 |
|
RJ01 | Rejection of invention patent application after publication |