CN111045940A - 软件自动化测试方法、装置、架构、服务器及存储介质 - Google Patents

软件自动化测试方法、装置、架构、服务器及存储介质 Download PDF

Info

Publication number
CN111045940A
CN111045940A CN201911249455.6A CN201911249455A CN111045940A CN 111045940 A CN111045940 A CN 111045940A CN 201911249455 A CN201911249455 A CN 201911249455A CN 111045940 A CN111045940 A CN 111045940A
Authority
CN
China
Prior art keywords
test
software
framework
testing
protocol
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
CN201911249455.6A
Other languages
English (en)
Other versions
CN111045940B (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.)
Haihua Electronics Enterprise China Corp
Original Assignee
Guangdong Southern Coast Technology Services 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 Guangdong Southern Coast Technology Services Co ltd filed Critical Guangdong Southern Coast Technology Services Co ltd
Priority to CN201911249455.6A priority Critical patent/CN111045940B/zh
Publication of CN111045940A publication Critical patent/CN111045940A/zh
Application granted granted Critical
Publication of CN111045940B publication Critical patent/CN111045940B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种软件自动化测试方法、装置、架构、服务器及存储介质,所述方法包括:接收客户端设备发送的软件测试请求;根据软件测试请求,生成相应的软件测试命令;通过引擎将软件测试命令解析成底层测试框架支持的特定格式和协议,将特定格式和协议传输到底层测试框架;通过引擎抽象底层测试框架,以使底层测试框架按照特定格式和协议调用客户端设备的应用完成测试。本发明可以实现跨平台移动应用的自动化测试,能够有效减少人工测试的工作量,减少人工失误,进而确保软件质量,降低用户和公司损失。

Description

软件自动化测试方法、装置、架构、服务器及存储介质
技术领域
本发明涉及一种软件自动化测试方法、装置、架构、服务器及存储介质,属于软件测试领域。
背景技术
现在软件测试被广泛用于提升软件质量和减少风险。但是由于软件的复杂性,在有限的时间与财务预算内找到所有的可能的缺陷总是不切实际的。因此软件测试的目的是在有限的资源内尽可能多地降低风险。
软件开发有两种方法:第一类是原生应用(Native App),顾名思义,该种应用的开发语言是直接取决于其运行平台上的,对于iOS操作系统就是Objective-C语言,对于Android操作系统就是Java,而对于Windows移动端就是C#,原生应用是通过对应平台的App商店进行发布的,有时候发布与更新会需要好几天审核才能发布到商店中。也就是说,即使开发者有能力立刻修复漏洞(BUG),由于审核和批准的过程也要推迟几天。更甚者,即便漏洞的修复通过了审核,已经安装了应用的用户不一定会去选择升级/更新应用,显然,测试原生软件的难点在于设备的数量以及操作系统的不一致;第二类是网页应用(Web App),这一类应用与当前常规网页的开发语言别无二致;同时网页应用也支持移动端用户的触摸交互。虽然网页应用的发布允许跨平台,但是它对不同的浏览器是低兼容的,尽管如Selenium,JSTestDriver和Buster.js之类的测试工具已经尝试通过对多种浏览器的测试支持来弥补该弊端,但跨浏览器的网页应用测试的效果仍不理想。
发明内容
有鉴于此,本发明提供了一种软件自动化测试方法、装置、架构、服务器及存储介质,其可以实现跨平台移动应用的自动化测试,能够有效减少人工测试的工作量,减少人工失误,进而确保软件质量,降低用户和公司损失。
本发明的第一个目的在于提供一种软件自动化测试方法。
本发明的第二个目的在于提供一种软件自动化测试装置。
本发明的第三个目的在于提供一种软件自动化测试架构。
本发明的第四个目的在于提供一种服务器。
本发明的第五个目的在于提供一种存储介质。
本发明的第一个目的可以通过采取如下技术方案达到:
一种软件自动化测试方法,应用于服务器,所述方法包括:
接收客户端设备发送的软件测试请求;
根据软件测试请求,生成相应的软件测试命令;
通过引擎将软件测试命令解析成底层测试框架支持的特定格式和协议,将特定格式和协议传输到底层测试框架;
通过引擎抽象底层测试框架,以使底层测试框架按照特定格式和协议调用客户端设备的应用完成测试。
进一步的,所述将特定格式和协议传输到底层测试框架,具体包括:
若底层测试框架有远程接口,将特定格式和协议传输到远程接口,以使远程接口将特定格式和协议传输到底层测试框架;
若底层测试框架没有远程接口,创建远程接口,将特定格式和协议传输到远程接口,以使远程接口将特定格式和协议传输到底层测试框架。
进一步的,所述接收客户端设备发送的软件测试请求之前,还包括:
对客户端设备进行登记,生成客户端设备名单;其中,所述客户端设备名单随着客户端设备的接入或断开而变更;
根据客户端设备名单,为每台客户端设备分配一个ID。
进一步的,所述客户端设备的操作系统为Android操作系统时,所述引擎为Android自动化测试框架的引擎,所述底层测试框架为底层Android自动化测试框架;
所述客户端设备的操作系统为iOS操作系统时,所述引擎为iOS自动化测试框架的引擎,所述底层测试框架为底层iOS自动化测试框架。
本发明的第二个目的可以通过采取如下技术方案达到:
一种软件自动化测试装置,应用于服务器,所述装置包括:
接收单元,用于接收客户端设备发送的软件测试请求;
第一生成单元,用于根据软件测试请求,生成相应的软件测试命令;
解析单元,用于通过引擎将软件测试命令解析成底层测试框架支持的特定格式和协议,将特定格式和协议传输到底层测试框架;
测试单元,用于通过引擎抽象底层测试框架,以使底层测试框架按照特定格式和协议调用客户端设备的应用完成测试。
进一步的,所述接收单元之前,还包括:
第二生成单元,用于对客户端设备进行登记,生成客户端设备名单;其中,所述客户端设备名单随着客户端设备的接入或断开而变更;
分配单元,用于根据客户端设备名单,为每台客户端设备分配一个ID。
本发明的第三个目的可以通过采取如下技术方案达到:
一种软件自动化测试架构,所述架构包括服务器、客户端设备和引擎,所述服务器分别与客户端设备、引擎相连,所述引擎设置在客户端设备的应用内;
所述服务器,用于执行上述的软件自动化测试方法;
所述客户端设备,用于根据用户输入的软件测试指令,向服务器发送软件测试请求。
进一步的,所述服务器与引擎之间采用HTTP作为通信协议,所述服务器与客户端设备之间采用WebSockets作为通信协议。
本发明的第四个目的可以通过采取如下技术方案达到:
一种服务器,包括处理器以及用于存储处理器可执行程序的存储器,所述处理器执行存储器存储的程序时,实现上述的软件自动化测试方法。
本发明的第五个目的可以通过采取如下技术方案达到:
一种存储介质,存储有程序,所述程序被处理器执行时,实现上述的软件自动化测试方法。
本发明相对于现有技术具有如下的有益效果:
本发明可以通过引擎将软件测试命令解析成底层测试框架支持的特定格式和协议,将特定格式和协议传输到底层测试框架,并通过引擎抽象底层测试框架,使得底层测试框架按照特定格式和协议调用客户端设备的应用完成测试,实现了跨平台移动应用的自动化测试,可以有效减少人工测试的工作量,减少人工失误,进而确保软件质量,降低用户和公司损失。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
图1为本发明实施例1的软件自动化测试方法的流程图。
图2为本发明实施例1的将特定格式和协议传输到底层测试框架的流程图。
图3为本发明实施例2的软件自动化测试架构的部署示意图。
图4为本发明实施例2的软件自动化测试架构的各组件示意图。
图5为本发明实施例2的服务器的结构框图。
图6为本发明实施例2的客户端设备的结构框图。
图7为本发明实施例2的软件自动化测试架构的引擎工作示意图。
图8为本发明实施例3的软件自动化测试装置的结构框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1:
如图1所示,本实施例提供了一种软件自动化测试方法,该方法主要通过服务器实现,包括以下步骤:
S103、接收客户端设备发送的软件测试请求。
用户通过客户端设备输入软件测试指令,客户端设备根据用户输入的软件测试指令,向服务器发送软件测试请求,由服务器接收该软件测试请求。
为了实现对客户端设备的管理,以及明确是哪台客户端设备发送软件测试请求,在步骤S103之前,还可包括步骤S101~S102,具体如下:
S101、对客户端设备进行登记,生成客户端设备名单。
本步骤中,客户端设备名单随着客户端设备的接入或断开而变更,该名单由设备管理器(Singleton)保存,新的客户端设备的接入需要通过服务器进行登记,该客户端设备可以为实际客户端设备(如手机、平板电脑等),也可以是模拟器设备。
S102、根据客户端设备名单,为每台客户端设备分配一个ID。
具体地,服务器通过设备管理器会分配一个ID给客户端设备,并且将客户端设备的meta信息(如设备操作系统、引擎信息、IP地址、屏幕尺寸等)保存于寄存器中,引擎负责每秒发送客户端设备的ID和meta信息给服务器,如果服务器没有持续接收到客户端设备发送的信息,那么该客户端设备会被认为是已经过期的客户端设备,并从客户端设备名单中删除,这种方式可以确保服务器可以不用直接连接到客户端设备而有一个准确的客户端设备名单。
S104、根据软件测试请求,生成相应的软件测试命令。
具体地,服务器根据软件测试请求,生成相应的软件测试命令,如“type(输入)”、“touch”(触摸)等。
S105、通过引擎将软件测试命令解析成底层测试框架支持的特定格式和协议,将特定格式和协议传输到底层测试框架。
引擎具有接口,该接口为使用现有方法定义的常规接口,将来自服务器的软件测试命令解析成底层测试框架支持的特定格式和协议,如HTTP协议上的JSON,然后将特定格式和协议传输到底层测试框架。
本步骤中,将特定格式和协议传输到底层测试框架如图2所示,具体包括:
S201、判断底层测试框架是否有远程接口,若有,进入步骤S202,否则,进入步骤S203。
S202、若底层测试框架有远程接口,将特定格式和协议传输到远程接口,以使远程接口将特定格式和协议传输到底层测试框架。
S203、若底层测试框架没有远程接口,创建远程接口,将特定格式和协议传输到远程接口,以使远程接口将特定格式和协议传输到底层测试框架。
进一步地,客户端设备的操作系统为Android操作系统时,引擎为Android自动化测试框架的引擎,如Android Robotium引擎,底层测试框架为底层Android自动化测试框架,如底层Robotium测试框架。
客户端设备的操作系统为iOS操作系统时,引擎为iOS自动化测试框架的引擎,如iOS Frank引擎,底层测试框架为底层iOS自动化测试框架,如底层Frank测试框架。
S106、通过引擎抽象底层测试框架,以使底层测试框架按照特定格式和协议调用客户端设备的应用完成测试。
具体地,引擎通过远程接口抽象底层测试框架,底层测试框架按照特定格式和协议调用客户端设备的应用GUI(Graphical User Interface,图像用户界面)完成测试。
进一步地,底层测试框架集成现有的测试框架来支持主流平台的开发,所选的测试框架需要既能够支持实际移动设备上,又能够支持模拟器设备,因为在开发中,实际移动设备和模拟器都会被利用到;此外,所选的测试框架需要足够成熟并且可以支持多种命令;跨平台的实现就是通过这些底层测试框架可以操作客户端设备的应用,所以从另一个角度上来说是在以一种跨平台的方式来集成这些底层测试框架。
本领域技术人员可以理解,实现上述实施例的方法中的全部或部分步骤可以通过程序来指令相关的硬件来完成,相应的程序可以存储于计算机可读存储介质中。
应当注意,尽管在附图中以特定顺序描述了上述实施例的方法操作,但是这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
实施例2:
如图3所示,本实施例提供了一种软件自动化测试架构,该架构基于基于C/S(Client/Server,客户端/服务器)结构,其包括服务器、客户端设备和引擎,服务器分别与客户端设备、引擎相连。
所述服务器,用于接收客户端设备发送的软件测试请求;根据软件测试请求,生成相应的软件测试命令;通过引擎将软件测试命令解析成底层测试框架支持的特定格式和协议,将特定格式和协议传输到底层测试框架;通过引擎抽象底层测试框架,以使底层测试框架按照特定格式和协议调用客户端设备的应用完成测试。
进一步地,服务器还用于对客户端设备进行登记,生成客户端设备名单;根据客户端设备名单,为每台客户端设备分配一个ID;其中,客户端设备名单随着客户端设备的接入或断开而变更,该名单由设备管理器保存,新的客户端设备的接入需要通过服务器进行登记。
进一步地,当启动服务器的时候,会让客户端设备的应用部署到对应底层测试框架,并实体化一个GUI,以进行测试和执行命令,如图4所示。
服务器的结构如图5所示,其包括通过系统总线501连接的第一处理器502、第一存储器和网络接口505,该第一处理器502用于提供计算和控制能力,该第一存储器包括非易失性存储介质506和内存储器507,该非易失性存储介质506存储有操作系统、计算机程序和数据库,该内存储器507为非易失性存储介质中的操作系统和计算机程序的运行提供环境,第一处理器502执行第一存储器存储的计算机程序时,实现上述服务器的功能。
所述客户端设备具有应用GUI,包括交互模式和自动模式,用于根据用户输入的软件测试指令,向服务器发送软件测试请求,并且可以接受底层测试框架的调用完成测试。
客户端设备以手机为例,其结构如图6所示,包括第二处理器601、第二存储器602、摄像头603、输入单元604、显示单元605、传输模块606、电源607等部件,第二存储器602、摄像头603、输入单元604、显示单元605、传输模块606分别与第二处理器601相连,电源607用于给各个部件供电,摄像头603可以作为拍摄设备,第二存储器602可用于存储计算机程序,第二处理器601通过运行存储在第二存储器602内的计算机程序时,从而实现上述客户端的功能。
所述引擎设置在客户端设备的应用内;进一步地,客户端设备的操作系统为Android操作系统时,引擎为Android自动化测试框架的引擎,如Android Robotium引擎,其设置于Android应用内与服务器沟通,底层测试框架为底层Android自动化测试框架,如底层Robotium测试框架;客户端设备的操作系统为iOS操作系统时,引擎为iOS自动化测试框架的引擎,如iOS Frank引擎,设置于iOS应用内与服务器沟通,底层测试框架为底层iOS自动化测试框架,如底层Frank测试框架。
本实施例的软件自动化测试架构专注于对实时事件控制,实时地远程操控客户端设备,需要客户端设备有一个开放通道从而等待接收客户端设备的软件测试请求,考虑到计算机和手机都支持TCP/IP协议,选择了其上层协议HTTP作为应用层协议,HTTP协议因为其请求-响应模式而被广泛使用,但是HTTP协议不支持双向通信,无法满足服务器与客户端设备双向自由通信的需求,而WebSockets协议恰好可以解决双向实时通信问题;因此,使用HTTP作为服务器和引擎之间的通信协议,WebSockets作为服务器与客户端设备之间的通信协议。
所述引擎主要负责两件事情,一是需要通过一个接口来抽象底层测试框架,二是需要保证与服务器有规律的沟通(网络心跳),将来自服务器的命令解析成底层框架支持的特定格式和协议,并将其传输到指定远程接口,如果底层测试框架有这个远程接口,则该条命令解析直接传递给这个远程接口;否则,引擎会创建这个远程接口,从而与底层测试框架进行沟通,如图7所示。
实施例3:
如图8所示,本实施例提供了一种软件自动化测试装置,该装置应用于服务器,其包括接收单元803、第一生成单元804、解析单元805和测试单元806,各个单元的具体功能如下:
所述接收单元803,用于接收客户端设备发送的软件测试请求。
所述第一生成单元804,用于根据软件测试请求,生成相应的软件测试命令。
所述解析单元805,用于通过引擎将软件测试命令解析成底层测试框架支持的特定格式和协议,将特定格式和协议传输到底层测试框架。
所述测试单元806,用于通过引擎抽象底层测试框架,以使底层测试框架按照特定格式和协议调用客户端设备的应用完成测试。
进一步地,所述接收单元803之前,还包括:
第二生成单元801,用于对客户端设备进行登记,生成客户端设备名单;其中,所述客户端设备名单随着客户端设备的接入或断开而变更;
分配单元802,用于根据客户端设备名单,为每台客户端设备分配一个ID。
本实施例中各个模块的具体实现可以参见上述实施例1的软件自动化测试方法,在此不再一一赘述;需要说明的是,本实施例提供的装置仅以上述各功能单元的划分进行举例说明,在实际应用中,可以根据需要而将上述功能分配由不同的功能单元完成,即将内部结构划分成不同的功能单元,以完成以上描述的全部或者部分功能。
可以理解,上述装置所使用的术语“第一”、“第二”等可用于描述各种模块,但这些单元不受这些术语限制。这些术语仅用于将第一个单元与另一个单元区分。举例来说,在不脱离本发明的范围的情况下,可以将第一生成单元称为第二生成单元,且类似地,可将第二生成单元称为第一生成单元,第一生成单元和第二生成单元两者都是生成单元,但不是同一生成单元。
实施例4:
本实施例提供了一种存储介质,该存储介质为计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时,实现上述实施例1的软件自动化测试方法,如下:
接收客户端设备发送的软件测试请求;
根据软件测试请求,生成相应的软件测试命令;
通过引擎将软件测试命令解析成底层测试框架支持的特定格式和协议,将特定格式和协议传输到底层测试框架;
通过引擎抽象底层测试框架,使底层测试框架按照特定格式和协议调用客户端设备的应用完成测试。
进一步地,所述将特定格式和协议传输到底层测试框架,具体包括:
若底层测试框架有远程接口,将特定格式和协议传输到远程接口,以使远程接口将特定格式和协议传输到底层测试框架;
若底层测试框架没有远程接口,创建远程接口,将特定格式和协议传输到远程接口,以使远程接口将特定格式和协议传输到底层测试框架。
进一步地,所述接收客户端设备发送的软件测试请求之前,还包括:
对客户端设备进行登记,生成客户端设备名单;其中,所述客户端设备名单随着客户端设备的接入或断开而变更;
根据客户端设备名单,为每台客户端设备分配一个ID。
本实施例中所述的存储介质可以是磁盘、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、U盘、移动硬盘等介质。
综上所述,本发明可以通过引擎将软件测试命令解析成底层测试框架支持的特定格式和协议,将特定格式和协议传输到底层测试框架,并通过引擎抽象底层测试框架,使得底层测试框架按照特定格式和协议调用客户端设备的应用完成测试,实现了跨平台移动应用的自动化测试,可以有效减少人工测试的工作量,减少人工失误,进而确保软件质量,降低用户和公司损失。
以上所述,仅为本发明专利较佳的实施例,但本发明专利的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明专利所公开的范围内,根据本发明专利的技术方案及其发明构思加以等同替换或改变,都属于本发明专利的保护范围。

Claims (10)

1.一种软件自动化测试方法,应用于服务器,其特征在于,所述方法包括:
接收客户端设备发送的软件测试请求;
根据软件测试请求,生成相应的软件测试命令;
通过引擎将软件测试命令解析成底层测试框架支持的特定格式和协议,将特定格式和协议传输到底层测试框架;
通过引擎抽象底层测试框架,以使底层测试框架按照特定格式和协议调用客户端设备的应用完成测试。
2.根据权利要求1所述的软件自动化测试方法,其特征在于,所述将特定格式和协议传输到底层测试框架,具体包括:
若底层测试框架有远程接口,将特定格式和协议传输到远程接口,以使远程接口将特定格式和协议传输到底层测试框架;
若底层测试框架没有远程接口,创建远程接口,将特定格式和协议传输到远程接口,以使远程接口将特定格式和协议传输到底层测试框架。
3.根据权利要求1-2任一项所述的软件自动化测试方法,其特征在于,所述接收客户端设备发送的软件测试请求之前,还包括:
对客户端设备进行登记,生成客户端设备名单;其中,所述客户端设备名单随着客户端设备的接入或断开而变更;
根据客户端设备名单,为每台客户端设备分配一个ID。
4.根据权利要求1-2任一项所述的软件自动化测试方法,其特征在于,所述客户端设备的操作系统为Android操作系统时,所述引擎为Android自动化测试框架的引擎,所述底层测试框架为底层Android自动化测试框架;
所述客户端设备的操作系统为iOS操作系统时,所述引擎为iOS自动化测试框架的引擎,所述底层测试框架为底层iOS自动化测试框架。
5.一种软件自动化测试装置,应用于服务器,其特征在于,所述装置包括:
接收单元,用于接收客户端设备发送的软件测试请求;
第一生成单元,用于根据软件测试请求,生成相应的软件测试命令;
解析单元,用于通过引擎将软件测试命令解析成底层测试框架支持的特定格式和协议,将特定格式和协议传输到底层测试框架;
测试单元,用于通过引擎抽象底层测试框架,以使底层测试框架按照特定格式和协议调用客户端设备的应用完成测试。
6.根据权利要求5所述的软件自动化测试装置,其特征在于,所述接收单元之前,还包括:
第二生成单元,用于对客户端设备进行登记,生成客户端设备名单;其中,所述客户端设备名单随着客户端设备的接入或断开而变更;
分配单元,用于根据客户端设备名单,为每台客户端设备分配一个ID。
7.一种软件自动化测试架构,其特征在于,所述架构包括服务器、客户端设备和引擎,所述服务器分别与客户端设备、引擎相连,所述引擎设置在客户端设备的应用内;
所述服务器,用于执行权利要求1-4任一项所述的软件自动化测试方法;
所述客户端设备,用于根据用户输入的软件测试指令,向服务器发送软件测试请求。
8.根据权利要求7所述的软件自动化测试架构,其特征在于,所述服务器与引擎之间采用HTTP作为通信协议,所述服务器与客户端设备之间采用WebSockets作为通信协议。
9.一种服务器,包括处理器以及用于存储处理器可执行程序的存储器,其特征在于,所述处理器执行存储器存储的程序时,实现权利要求1-4任一项所述的软件自动化测试方法。
10.一种存储介质,存储有程序,其特征在于,所述程序被处理器执行时,实现权利要求1-4任一项所述的软件自动化测试方法。
CN201911249455.6A 2019-12-09 2019-12-09 软件自动化测试方法、装置、架构、服务器及存储介质 Active CN111045940B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911249455.6A CN111045940B (zh) 2019-12-09 2019-12-09 软件自动化测试方法、装置、架构、服务器及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911249455.6A CN111045940B (zh) 2019-12-09 2019-12-09 软件自动化测试方法、装置、架构、服务器及存储介质

Publications (2)

Publication Number Publication Date
CN111045940A true CN111045940A (zh) 2020-04-21
CN111045940B CN111045940B (zh) 2023-05-30

Family

ID=70235240

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911249455.6A Active CN111045940B (zh) 2019-12-09 2019-12-09 软件自动化测试方法、装置、架构、服务器及存储介质

Country Status (1)

Country Link
CN (1) CN111045940B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112000581A (zh) * 2020-08-31 2020-11-27 威创集团股份有限公司 一种用于Cocos2D框架软件的测试方法和工具
CN112148604A (zh) * 2020-09-21 2020-12-29 京东数字科技控股股份有限公司 iOS软件测试方法、装置、设备及计算机可读介质
CN113778843A (zh) * 2020-08-28 2021-12-10 北京同邦卓益科技有限公司 应用程序的测试方法、装置、电子设备和可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6662312B1 (en) * 2000-06-30 2003-12-09 Qwest Communications International Inc. Software-testing automation system
CN108628729A (zh) * 2017-03-15 2018-10-09 北京嘀嘀无限科技发展有限公司 一种软件测试方法和软件测试客户端
CN110287109A (zh) * 2019-06-18 2019-09-27 广州华多网络科技有限公司 协议接口的测试方法、装置、计算机设备及其存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6662312B1 (en) * 2000-06-30 2003-12-09 Qwest Communications International Inc. Software-testing automation system
CN108628729A (zh) * 2017-03-15 2018-10-09 北京嘀嘀无限科技发展有限公司 一种软件测试方法和软件测试客户端
CN110287109A (zh) * 2019-06-18 2019-09-27 广州华多网络科技有限公司 协议接口的测试方法、装置、计算机设备及其存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
任涛;: "深入理解自动化测试工具Appium" *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113778843A (zh) * 2020-08-28 2021-12-10 北京同邦卓益科技有限公司 应用程序的测试方法、装置、电子设备和可读存储介质
CN113778843B (zh) * 2020-08-28 2024-04-16 北京同邦卓益科技有限公司 应用程序的测试方法、装置、电子设备和可读存储介质
CN112000581A (zh) * 2020-08-31 2020-11-27 威创集团股份有限公司 一种用于Cocos2D框架软件的测试方法和工具
CN112000581B (zh) * 2020-08-31 2022-05-03 威创集团股份有限公司 一种用于Cocos2D框架软件的测试方法和工具
CN112148604A (zh) * 2020-09-21 2020-12-29 京东数字科技控股股份有限公司 iOS软件测试方法、装置、设备及计算机可读介质

Also Published As

Publication number Publication date
CN111045940B (zh) 2023-05-30

Similar Documents

Publication Publication Date Title
CN109933522B (zh) 一种自动化用例的测试方法、测试系统及存储介质
US8819638B2 (en) Application protoyping suite
CN111177617A (zh) 基于运维管理系统的web直接运维方法、装置及电子设备
CN104821954B (zh) 一种跨平台远程过程调用方法
CN111045940B (zh) 软件自动化测试方法、装置、架构、服务器及存储介质
CN111158818A (zh) 一种页面渲染方法和装置
US11200157B1 (en) Automated execution reporting for container builds
US10817819B2 (en) Workflow compilation
US20140082511A1 (en) Method and system for emulating desktop software applications in a mobile communication network
US20120233588A1 (en) Blended service creation, test, and deployment environment for multiple service endpoints
US20120233589A1 (en) Software development kit for blended services
US10404568B2 (en) Agent manager for distributed transaction monitoring system
CN104536890A (zh) 测试系统、方法和装置
CN107222524B (zh) 一种开放式应用服务集成框架
CN107395747B (zh) 一种基于stf平台的高扩展方法
CN108038241A (zh) 集成web可视化工作流方法、装置、可读存储介质及系统
CN110188043A (zh) 一种控制多台设备测试的方法及控制设备
CN114490383A (zh) 远程调试系统、远程调试方法、计算设备和可读介质
CN110750453B (zh) 基于html5的智能移动端测试方法、系统、服务器及存储介质
CN114237853A (zh) 应用于异构系统的任务执行方法、装置、设备、介质和程序产品
CN112910956B (zh) 一种资源创建方法、装置及电子设备
CN115543793A (zh) 一种目标服务器的系统部署方法、装置和运维中台
CN113204425A (zh) 供进程管理内部线程的方法、装置、电子设备及存储介质
CN114092169A (zh) 下单测试方法和系统以及执行下单测试方法的设备
CN105430056A (zh) 一种移动终端应用的远程访问方法及系统

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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240403

Address after: No.23 Nanxiang 2nd Road, Science City, Guangzhou hi tech Industrial Development Zone, Guangdong 510000

Patentee after: HAIHUA ELECTRONICS ENTERPRISE (CHINA) Corp.

Country or region after: China

Address before: 510235 floor 3, Haitian building, No. 28, Binjiang West Road, Haizhu District, Guangzhou City, Guangdong Province

Patentee before: GUANGDONG SOUTHERN COAST TECHNOLOGY SERVICES CO.,LTD.

Country or region before: China