CN113542379A - 应用程序管理方法及装置、电子设备及存储介质 - Google Patents
应用程序管理方法及装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113542379A CN113542379A CN202110751202.XA CN202110751202A CN113542379A CN 113542379 A CN113542379 A CN 113542379A CN 202110751202 A CN202110751202 A CN 202110751202A CN 113542379 A CN113542379 A CN 113542379A
- Authority
- CN
- China
- Prior art keywords
- application program
- configuration
- server
- application
- request
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3664—Environments for testing or debugging software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/24—Arrangements for testing
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本申请公开了一种应用程序管理方法,包括:将应用程序上传至服务器以使得服务器对应用程序进行存储管理,生成应用程序对应的配置需求列表,并将配置需求列表发送至服务器以使得服务器根据配置需求列表生成虚拟设备容器,响应于用户发起的应用程序的任务请求,将任务请求发送至虚拟设备容器,以使得虚拟设备容器执行与任务请求相对应的任务操作。本申请实施方式的应用程序管理方法,可实时定制出用户需求的虚拟的云手机,应用程序可在定制的云手机上进行应用程序的任务执行包括测试开发等任务,因可模拟真机测试,在一定程度上降低了用真机进行应用程序测试开发带来的成本消耗。本申请还公开了一种应用程序管理装置、电子设备及存储介质。
Description
技术领域
本申请涉及互联网技术领域,特别涉及一种应用程序管理方法、应用程序管理装置、电子设备及计算机可读存储介质。
背景技术
随着智能终端的发展,人们对各种应用程序APP(Application,APP)的需求越来越大,应用程序的研发工作量也日益增大,其中包括应用程序开发、测试,数据采集报表等内容。尤其是云手机,云手机拥有比普通智能手机更多的应用程序,目前对应用程序的开发测试主要利用硬件测试,即针对不同操作系统或屏幕利用真机进行测试,而这需要不断更换真机,投入成本较高。而部分研发利用Android Studio进行仿真。但利用Android Studio进行应用程序的测试和仿真,存在多种问题,如模拟器启动很慢,占用本地CPU或者其他的硬件资源,无法支持多开以及要经过指令转码,且指令支持不完整,严重影响应用程序的运行速度。
发明内容
有鉴于此,本申请的实施例提供了一种应用程序管理方法、应用程序管理装置、电子设备及计算机可读存储介质。
本申请提供了一种应用程序管理方法,用于电子设备,包括:
将所述应用程序上传至服务器以使得所述服务器对所述应用程序进行存储管理;
生成所述应用程序对应的配置需求列表;
将所述配置需求列表发送至所述服务器以使得所述服务器根据所述配置需求列表生成虚拟设备容器;
响应于用户发起的所述应用程序的任务请求,将所述任务请求发送至所述虚拟设备容器,以使得所述虚拟设备容器执行与所述任务请求相对应的任务操作。
本申请还提供了一种应用程序管理装置,包括:
上传模块,用于将所述应用程序上传至服务器以使得所述服务器对所述应用程序进行存储管理;
生成模块,用于根据所述应用程序生成配置需求列表;
发送模块,用于将所述配置需求列表发送至所述服务器以使得所述服务器根据所述配置需求列表生成虚拟设备容器;
执行模块,用于响应于用户发起的所述应用程序的任务请求,将所述任务请求发送至所述虚拟设备容器,以使得所述虚拟设备容器执行与所述任务请求相对应的任务操作。
本申请还提供了一种电子设备,所述电子设备包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,实现上述任一项实施方式的管理方法。
本申请还提供了一种计算机程序的非易失性计算机可读存储介质,当所述计算机程序被一个或多个处理器执行时,实现上述任一项实施方式的管理方法。
本申请的实施方式的应用程序管理方法、应用程序管理装置、电子设备及存储介质中,通过电子设备将应用程序上传至服务器以使得服务器对应用程序进行存储管理,生成应用程序对应的配置需求列表,并将配置需求列表发送至服务器以使得服务器根据配置需求列表生成虚拟设备容器,同时响应于用户发起的应用程序的任务请求,将任务请求发送至虚拟设备容器,以使得虚拟设备容器执行与任务请求相对应的任务操作。可实时定制出用户需求的虚拟的云手机,应用程序可在定制的云手机上进行应用程序的任务执行包括测试开发等任务,因可模拟真机测试,在一定程度上降低了用真机进行应用程序测试开发带来的成本的消耗。尤其对于云手机,具有大量的应用程序,通过本申请的自动化的应用程序的管理方法,可有效地提高应用程序的测试和开发效率。同时本申请提出了一整套的完全自动化的应用程序测试流程,提高了应用程序测试的通用性和易用性。
附图说明
本申请的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解。
图1是本申请某些实施方式的应用程序管理方法流程示意图;
图2是本申请某些实施方式的应用程序管理装置模块图;
图3是本申请某些实施方式的应用程序管理方法流程示意图;
图4是本申请某些实施方式的应用程序管理方法流程示意图;
图5是本申请某些实施方式的应用程序管理方法流程示意图;
图6是本申请某些实施方式的应用程序管理方法流程示意图;
图7是本申请某些实施方式的应用程序管理方法流程示意图;
图8是本申请某些实施方式的应用程序管理装置模块图;
图9是本申请某些实施方式的应用程序管理方法示例图;
图10是本申请某些实施方式的应用程序管理方法流程示意图;
图11是本申请某些实施方式的应用程序管理装置模块图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
请参阅图1,本申请提供了一种应用程序管理方法,用于电子设备,包括:
011:将应用程序上传至服务器以使得服务器对应用程序进行存储管理;
012:生成应用程序对应的配置需求列表;
013:将配置需求列表发送至服务器以使得服务器根据配置需求列表生成虚拟设备容器;
014:响应于用户发起的应用程序的任务请求,将任务请求发送至虚拟设备容器,以使得虚拟设备容器执行与任务请求相对应的任务操作。
相应地,请参阅图2,本申请实施方式还提供了一种应用程序管理装置100,本申请实施方式的用于电子设备的应用程序管理方法可以由应用程序管理装置100实现。应用程序管理装置100包括上传模块110、生成模块120、发送模块130及执行模块140。步骤011可以由上传模块110实现步骤,步骤012可以由生成模块120实现,步骤013可以由发送模块130实现,步骤014可以由执行模块140实现。或者说,上传模块110用于将应用程序上传至服务器以使得服务器对应用程序进行存储管理。生成模块120用于生成应用程序对应的配置需求列表。发送模块130用于将配置需求列表发送至服务器以使得服务器根据配置需求列表生成虚拟设备容器。执行模块140用于响应于用户发起的应用程序的任务请求,将任务请求发送至虚拟设备容器,以使得虚拟设备容器执行与任务请求相对应的任务操作。
本申请实施方式还提供了一种电子设备。电子设备包括存储器和处理器。存储器中存储有计算机程序,处理器用于将应用程序上传至服务器以使得服务器对应用程序进行存储管理,生成应用程序对应的配置需求列表,将配置需求列表发送至服务器以使得服务器根据配置需求列表生成虚拟设备容器,响应于用户发起的应用程序的任务请求,将任务请求发送至虚拟设备容器,以使得虚拟设备容器执行与任务请求相对应的任务操作。
具体地,应用程序包括可安装在移动终端的应用程序,或通过电脑客户端登陆从而对应用程序进行开发测试等工作。服务器包括与电子设备可进行通信交互的云端服务器。电子设备可包括智能手机、云手机、平板电脑、可穿戴设备等智能终端,还包括电脑、笔记本电脑等。以下为便于描述实施例,电子设备以云手机为例进行说明。
在步骤011中,将应用程序上传至服务器以使得服务器对应用程序进行存储管理。相应地,服务器接收电子设备上传的应用程序并对应用程序进行存储管理。其中,应用程序包括需要测试或开发的应用程序包及其版本等相关信息。用户可通过应用程序管理装置100将应用程序上传至服务器,服务器记录应用程序的信息,并对应用程序进行对应版本的存储管理。
在一个例子中,通过应用程序适配器对应用程序进行版本号的提取,版本ABI的分析等之后对应用程序版本进行信息展示,然后将应用程序流转至服务器进行存储管理。在另一个例子中,也可直接将用户上传的应用程序流转到服务器上。
在一个例子中,当需要对某个应用程序进行测试时,将应用程序发送至服务器,具体地,应用程序管理装置100向服务器发送应用程序上传请求消息,当服务器接收到消息时,转发至相应模块如调度中心,调度中心分配给该应用程序一个应用程序仓库的存储路径,并下发至应用程序管理装置100。应用程序管理装置100将应用程序版本上传到存储路径中指定的版本仓库中。
进一步地,在步骤012中,生成应用程序对应的配置需求列表。其中,配置需求列表为对应用程序进行测试或开发对应的,或者说测试或开发所需要进行交互的相关配置。配置需求列表包括用户所需的应用程序运行环境的相关配置如操作系统类型,以及用户所需应用程序测试的机型的相关配置如云手机的屏幕尺寸、摄像头等配置。生成应用程序对应的配置需求列表的方式包括但不限于用户手动输入及系统自动生成。
在一个例子中,需要在OPPO Reno6云手机中测试应用程序1的功能。当用户上传应用程序1后,用户根据配置需求清单手动选择应用程序测试对应的OPPO Reno6的相关配置以生成配置需求列表,包括:屏幕参数为6.55英寸2400*1080分辨率的90Hz OLED显示屏,操作系统为Android11等。
在另一个例子中,需要在OPPO Reno6云手机中测试应用程序1的功能。系统可通过预设与市场上实时更新的机型所对应的多个配置需求清单,如OPPO Reno6对应的配置需求列表包括:屏幕参数为6.55英寸2400*1080分辨率的90Hz OLED显示屏,操作系统为Android11,左上角单孔曲面屏等配置。在用户上传应用程序后,分析应用程序并提供多个配置需求清单供用户选择,并将用户确定选择的配置需求清单作为配置需求列表发送至服务器。
优选地,请参阅图3,在某些实施方式中,步骤012包括:
0121:确定应用程序对应的操作系统配置及API配置;
0122:确定应用程序所需运行环境的屏幕配置、功能配置及控制器配置;
0123:根据操作系统配置,API配置,屏幕配置、功能配置及控制器配置中的至少一个生成配置需求列表。
在某些实施方式中,步骤0121-0123可以由生成模块120来实现。或者说,生成模块120用于确定应用程序对应的操作系统配置及API配置,及确定应用程序所需运行环境的屏幕配置、功能配置及控制器配置,并根据操作系统配置,API配置,屏幕配置、功能配置及控制器配置中的至少一个生成配置需求列表。
在某些实施方式中,处理器用于确定应用程序对应的操作系统配置及API配置,及确定应用程序所需运行环境的屏幕配置、功能配置及控制器配置,并根据操作系统配置,API配置,屏幕配置、功能配置及控制器配置中的至少一个生成配置需求列表。
具体地,配置需求列表包括应用程序所需运行的操作系统配置及API配置。其中操作系统如Android、IPhone OS、Symbian、或Windows等,还可包括相应的操作系统版本,如Android11。API配置包括所需的操作系统的API等级,如API level 29等。
配置需求列表还可包括应用程序所需运行环境的屏幕配置、功能配置及控制器配置。其中,屏幕配置可包括云手机的屏幕大小尺寸、分辨率和屏幕密度等,通过屏幕的配置可以提供多种云手机屏幕的尺寸,方便对屏幕大小和分辨率有要求的应用程序的测试。功能配置包括云手机具有的功能如摄像头的拍照摄像功能、传感器功能如红外传感器、重力传感器等、GPS导航功能、录音功能等。需要说明的是,不同的应用程序所需与云手机交互的功能不同,此处不一一列举,应用程序的测试或开发过程中需要与云手机的某些功能进行交互,如此在配置需求列表中包含针对某型号或某一类型的云手机的功能配置,而基于此目的的功能应视为本申请的功能配置内容的简单替换。
可以理解,当电子设备为云手机或平板电脑时,可以直接通过触屏实现消息的注入。而云手机的应用程序可在电脑上通过客户端登陆进行操作,当电子设备为电脑时,消息的注入包括键盘、鼠标或游戏手柄,则控制器配置包括但不限于键盘、鼠标或游戏手柄的配置。
进一步,当上述配置确定后,根据上述操作系统配置,API配置,屏幕配置、功能配置及控制器配置中的至少一个生成配置需求列表。即就是,配置需求列表可包括上述配置中的一个或多个,根据实际应用程序的测试或开发确定。
如此,根据操作系统配置,API配置,屏幕配置、功能配置及控制器配置生成配置需求列表,可以对运行环境及云手机的功能生成一个对应应用程序的较为完整的配置需求列表,以使得后续生成的虚拟云手机可以更加接近真机。
进一步地,在步骤013及步骤032中,将配置需求列表发送至服务器以使得服务器根据配置需求列表生成虚拟设备容器。相应地,服务器接收电子设备发送的配置需求列表并根据配置需求列表生成虚拟设备容器。具体地,可利用操作系统级的虚拟化,在内核通过创建多个虚拟的操作系统实例来隔离不同的进程,即根据配置需求列表生成虚拟的操作系统,可通过Docker容器技术的容器生成操作系统,得到对应配置需求列表的虚拟设备容器。
优选地,请参阅图4,在某些实施方式中,步骤013包括:
0131:将配置需求列表发送至服务器以使得服务器根据设备配置列表确定应用程序的基础镜像,并根据基础镜像及设备配置列表生成虚拟设备容器。
在某些实施方式中,步骤0131可以由发送模块130来实现。或者说,发送模块130用于将配置需求列表发送至服务器以使得服务器根据设备配置列表确定应用程序的基础镜像,并根据基础镜像及设备配置列表生成虚拟设备容器。
在某些实施方式中,处理器用于将配置需求列表发送至服务器以使得服务器根据设备配置列表确定应用程序的基础镜像,并根据基础镜像及设备配置列表生成虚拟设备容器。
具体地,当服务器接收到发送的配置需求列表后,对配置需求列表进行资源选择,包括对配置需求列表中的各类配置进行分析,资源分配、应用程序所在位置及版本的匹配等资源选择处理,并最终确定资源分配后的设备配置列表。
当确定好设备配置列表后,确定应用程序对应的基础镜像。具体地,分析设备配置列表,然后从本地的镜像中选择最接近的基础镜像,或可通过专属的镜像仓库中下载基础镜像。可利用Docker镜像创建容器的方式按照设备配置列表的要求自动生成一个虚拟设备容器,并产生一个虚拟设备容器的唯一ID(CONTAINER ID),将ID和用户的信息绑定,同时将应用程序和用户的信息绑定。其中,虚拟设备容器为一个虚拟化的电子设备,如云手机,应用程序即可通过此虚拟设备容器运行程序。
进一步地,在步骤014中,响应于用户发起的应用程序的任务请求,将任务请求发送至虚拟设备容器,以使得虚拟设备容器执行与任务请求相对应的任务操作。相应地,服务器接收电子设备发送的应用程序的任务请求并控制虚拟设备容器执行任务请求相应的任务操作。
具体地,当虚拟设备容器如虚拟的云手机创建好后,应用程序管理装置100可通过绑定的CONTAINER ID、用户信息及应用程序进行应用程序的任务执行。其中,任务包括应用程序的安装、测试、卸载、开发、产生日志报表等任务。测试还可包括功能测试、性能测试、自定义测试等测试内容。
在一个例子中,应用程序的任务为测试应用程序abc的打开操作,用户通过应用程序管理装置100的屏幕执行点击打开应用程序abc的操作,此时任务请求为“打开应用程序abc”,应用程序管理装置100的执行模块140将任务请求发送至服务器,服务器接收到任务请求“打开应用程序abc”并在虚拟设备容器执行相应的任务操作,即“打开应用程序abc”。
可以理解,Docker镜像创建的容器之间为相互隔离,在某些实施方式中,可同时创建多个虚拟设备容器模拟不同的云手机,而每个虚拟设备容器中运行一个应用程序,如此可大幅降低应用程序之间相互的影响,也有利于利用容器技术控制每个程序所使用的资源。
如此,本申请的实施方式将应用程序上传至服务器以使得服务器对应用程序进行存储管理,生成应用程序对应的配置需求列表,并将配置需求列表发送至服务器以使得服务器根据配置需求列表生成虚拟设备容器,同时响应于用户发起的应用程序的任务请求,将任务请求发送至虚拟设备容器,以使得虚拟设备容器执行与任务请求相对应的任务操作。可实时定制出用户需求的虚拟的云手机,应用程序可在定制的云手机上进行应用程序的任务执行包括测试开发等任务,因可模拟真机测试,在一定程度上降低了用真机进行应用程序测试开发带来的成本的消耗。尤其对于云手机,具有大量的应用程序,通过本申请的自动化的应用程序的管理方法,可有效地提高应用程序的测试和开发效率。且利用Docker容器创建云手机,可同时运行多个云手机进行测试,且多个云手机之间各自独立,有效地提高了应用程序的测试效率。同时本申请提出了一整套的完全自动化的应用程序测试流程,提高了应用程序测试的通用性和易用性。
优选地,请参阅图5,在某些实施方式中,任务请求包括功能测试请求和/或性能测试请求,步骤014包括:
0141:响应于用户发起的功能测试请求和/或性能测试请求,将功能测试请求和/或性能测试请求发送至虚拟设备容器,以使得虚拟设备容器执行与功能测试请求和/或性能测试请求相对应的任务操作。
在某些实施方式中,步骤0141可以由执行模块140来实现。或者说,执行模块140用于响应于用户发起的功能测试请求和/或性能测试请求,将功能测试请求和/或性能测试请求发送至虚拟设备容器,以使得虚拟设备容器执行与功能测试请求和/或性能测试请求相对应的任务操作。
在某些实施方式中,处理器用于响应于用户发起的功能测试请求和/或性能测试请求,将功能测试请求和/或性能测试请求发送至虚拟设备容器,以使得虚拟设备容器执行与功能测试请求和/或性能测试请求相对应的任务操作。
具体地,任务请求可包括功能测试请求和/或性能测试请求。当用户发起功能测试请求时,将功能测试请求发送至服务器,服务器控制虚拟设备容器执行相应的功能测试任务操作。同理性能测试。需要说明的是,功能测试请求及性能测试请求为应用程序测试中的两种类型的测试内容,在某些实施方式中,可以有其它种类的测试内容,其名称或内容替换应视为本申请的任务请求内容的简单替换。
优选地,请参阅图6,在某些实施方式中,应用程序管理方法还包括:
015:获取用户的自定义测试脚本;
016:根据自定义测试脚本生成自定义测试请求,任务请求包括自定义测试请求。
在某些实施方式中,步骤015和016可以由执行模块140来实现。或者说,执行模块140用于获取用户的自定义测试脚本,并根据自定义测试脚本生成自定义测试请求。
在某些实施方式中,处理器用于获取用户的自定义测试脚本,并根据自定义测试脚本生成自定义测试请求。
具体地,用户还可以上传自定义测试脚本,可包括功能测试、性能测试等任意测试任务。并根据自定义测试脚本生成自定义测试请求,即为任务请求。进一步地,将自定义测试请求发送至服务器以使得虚拟设备容器执行相应的任务操作。
可以理解,任务请求包括功能测试请求、性能测试请求和自定义测试请求。当用户发起功能测试请求时,包括安装测试请求,功能测试请求、卸载测试请求和/或数据监控等请求,则控制虚拟设备容器执行功能测试请求相应的安装测试操作,功能测试操作、卸载测试操作和/或数据监控操作。当用户发起性能测试请求时,包括拷机测试请求、CPU监控请求、GPU监控请求和/或存储监控等请求,则控制虚拟设备容器执行性能测试请求相应的拷机测试操作、CPU监控操作、GPU监控操作和/或存储监控操作。当用户发起自定义测试请求时,解析自定义测试脚本中的测试任务,并根据脚本生成相应的一系列的任务请求,当服务器接收到任务请求时,根据任务请求控制虚拟设备容器执行相应的任务操作。
请参阅图7,在某些实施方式中,应用程序管理方法还包括:
017:获取用户输入的控制器指令;
018:响应于控制器指令以生成功能测试请求、性能测试请求或自定义测试请求。
相应地,请参阅图8,应用程序管理装置100还包括控制器模块150。步骤017和018可以由控制器模块150实现。或者说,控制器模块150用于获取用户输入的控制器指令,并响应于控制器指令以生成功能测试请求、性能测试请求或自定义测试请求。
在某些实施方式中,处理器用于获取用户输入的控制器指令,并响应于控制器指令以生成功能测试请求、性能测试请求或自定义测试请求。
具体地,控制器包括连接电脑的如游戏手柄、键盘或鼠标等外部硬件。当应用程序管理装置100为电脑时,本申请还包括控制器模块150,可提供如游戏手柄注入和控制器仿真注入,即在屏幕上提供一个键盘或者手柄的仿真。
在一个例子中,当用户在电脑上执行任务请求时,任务请求的执行通过获取用户通过控制器操作输入的控制器指令如“键盘输入用户名xiao”,则电脑响应于此控制器指令生成功能测试请求,如“输入用户名xiao”。
如此,通过控制器模块150控制外部控制器输入的控制器指令,以使得当电子设备为电脑等时,可通过外部控制器执行相应的应用程序任务请求,在一定程度上提高了应用程序管理方法的通用性。
在某些实施方式中,当服务器执行任务操作时,可根据应用程序生成日志及任务报表,数据报表包括任务基本信息、任务列表、应用程序信息、虚拟设备容器、及日志信息中的至少一个;及根据预设的告警策略在日志中生成异常提示。
数据报表可提供两个功能:第一、生成日志,并提供日志分析和采集的功能,即可以将用户需要的日志文件进行关键字匹配和分析,并且根据预设的告警策略在日志中生成异常提示,异常提示可通过信息等方式发送至应用程序管理装置100以供用户参考,比如可以做crash、ANR、日志关键字等等告警策略;第二、提供测试报表的功能,其中,测试报表的内容包括任务基本信息、任务列表、应用程序信息、虚拟设备容器、及日志信息中的一个或多个信息的组合。任务基本信息包括测试信息、开发信息等如测试时间、测试结果、告警情况等测试基本信息。任务列表包括功能测试列表、性能测试列表、自定义测试列表等。应用程序信息包括版本号、API等级、应用程序包名称等信息。虚拟设备容器包括分辨率、长宽比、操作系统版本等信息。日志信息包括用户预设的告警策略的条目,如告警策略为“camera”关键字匹配,则测试生成的日志信息中会返回带“camera”关键字的日志。
请参阅图9,在一个测试报表内容的例子中,应用程序的任务为测试,任务基本信息为测试基本信息,包括测试编号、测试人员、功能测试结果、性能测试结果、拷机时间及告警次数等。应用程序信息包括版本号、API等级、包名称等参数。虚拟设备容器为云手机信息,包括API等级、分辨率等参数。任务列表为功能测试列表、性能测试列表及自定义测试列表,列表中可包括各类测试任务的测试具体内容,以多个条目列出。日志信息为日志监控,可包括各类型的日志,以多个条目列出。
如此,通过数据报表可以生成日志及任务报表,以使得用户在测试过程中可获取测试或开发日志、测试信息及测试结果等,提升了用户体验。
请参阅图10,在某些实施方式中,应用程序管理方法还包括:
019:获取服务器根据任务请求发送的多媒体信息,多媒体信息包括音频流和/或视频流;
020:对多媒体信息进行解码以播放多媒体信息。
相应地,请参阅图11,应用程序管理装置100还包括多媒体模块160。步骤021和022可以由多媒体模块160实现。或者说,多媒体模块160用于获取服务器根据任务请求发送的多媒体信息,对多媒体信息进行解码以播放多媒体信息。
在某些实施方式中,处理器用于获取服务器根据任务请求发送的多媒体信息,对多媒体信息进行解码以播放多媒体信息。
具体地,当在执行任务的过程中,如测试安装应用程序时,有多媒体信息交互,多媒体信息包括音频流和/或视频流,则服务器将音频流和/或视频流进行渲染和编码,并发送至应用程序管理装置100,应用程序管理装置100对音频流和/或视频流进行解码之后发送给应用程序管理装置100的显示器或屏幕进行播放。
在某些实施方式中,多媒体模块160还可以当用户定义的告警策略发生的时候,用来展示告警的原因以及触发的时间点和次数信息等。
在某些实施方式中,多媒体模块160还可以对电子设备的用户界面进行调整,如对网络,帧率,码率等进行设置等。
在某些实施方式中,可形成一种应用程序管理系统,包括电子设备和服务器,电子设备用于将应用程序上传至服务器,服务器用于接收电子设备上传的应用程序并对应用程序进行存储管理,电子设备还用于生成应用程序对应的配置需求列表,并将配置需求列表发送至服务器,服务器接收电子设备发送的配置需求列表并根据配置需求列表生成虚拟设备容器,电子设备响应于用户发起的应用程序的任务请求,将任务请求发送至虚拟设备容器,服务器接收电子设备发送的应用程序的任务请求并控制虚拟设备容器执行任务请求相对应的任务操作。
综上所述,本申请实施方式的应用程序管理方法、应用程序管理装置、电子设备及存储介质中,通过将应用程序上传至服务器以使得服务器对应用程序进行存储管理,生成应用程序对应的配置需求列表,并将配置需求列表发送至服务器以使得服务器根据配置需求列表生成虚拟设备容器,同时响应于用户发起的应用程序的任务请求,将任务请求发送至虚拟设备容器,以使得虚拟设备容器执行与任务请求相对应的任务操作。至少具有以下有益效果:
一、可实时定制出用户需求的虚拟的云手机,应用程序可在定制的云手机上进行应用程序的任务执行包括测试开发等任务,因可模拟真机测试,在一定程度上降低了用真机进行应用程序测试开发带来的成本的消耗。
二、利用Docker容器创建云手机,可同时运行多个云手机进行测试,且多个云手机之间各自独立,有效地提高了应用程序的测试效率。
三、同时本申请提出了一整套的完全自动化的应用程序测试流程,提高了应用程序测试的通用性和易用性。
四、实现了应用程序功能测试、性能测试、日志监控、告警管理以及数据报表管理的一整套解决方案,在一定程度上支持多种应用程序的测试,覆盖完全的测试场景。
五、在应用程序管理任务执行过程中,利用多媒体模块解析服务器与电子设备之间的多媒体共享,在一定程度上实现了端云协同的理念。
本申请实施方式还提供了一种计算机可读存储介质。一个或多个存储有计算机程序的非易失性计算机可读存储介质,当计算机程序被一个或多个处理器执行时,实现上述任一实施方式的图像处理方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的软件来完成。程序可存储于一非易失性计算机可读存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种应用程序管理方法,其特征在于,包括:
将所述应用程序上传至服务器以使得所述服务器对所述应用程序进行存储管理;
生成所述应用程序对应的配置需求列表;
将所述配置需求列表发送至所述服务器以使得所述服务器根据所述配置需求列表生成虚拟设备容器;
响应于用户发起的所述应用程序的任务请求,将所述任务请求发送至所述虚拟设备容器,以使得所述虚拟设备容器执行与所述任务请求相对应的任务操作。
2.根据权利要求1所述的管理方法,其特征在于,所述生成所述应用程序对应的配置需求列表包括:
确定所述应用程序对应的操作系统配置及API配置;
确定所述应用程序所需运行环境的屏幕配置、功能配置及控制器配置;
根据所述操作系统配置,所述API配置,所述屏幕配置、所述功能配置及所述控制器配置中的至少一个生成所述配置需求列表。
3.根据权利要求1所述的管理方法,其特征在于,所述任务请求包括功能测试请求和/或性能测试请求,所述响应于用户发起的所述应用程序的任务请求,将所述任务请求发送至所述虚拟设备容器,以使得所述虚拟设备容器执行与所述任务请求相对应的任务操作包括:
响应于用户发起的所述功能测试请求和/或所述性能测试请求,将所述功能测试请求和/或所述性能测试请求发送至所述虚拟设备容器,以使得所述虚拟设备容器执行与所述功能测试请求和/或所述性能测试请求相对应的任务操作。
4.根据权利要求1所述的管理方法,其特征在于,所述管理方法还包括:
获取用户的自定义测试脚本;
根据所述自定义测试脚本生成自定义测试请求,所述任务请求包括所述自定义测试请求。
5.根据权利要求3或4所述的管理方法,其特征在于,所述管理方法还包括:
获取用户输入的控制器指令;
响应于所述控制器指令以生成所述功能测试请求、所述性能测试请求或所述自定义测试请求。
6.根据权利要求1所述的管理方法,其特征在于,所述管理方法还包括:
获取所述服务器根据所述任务请求发送的多媒体信息,所述多媒体信息包括音频流和/或视频流;
对所述多媒体信息进行解码以播放所述多媒体信息。
7.根据权利要求1所述的管理方法,其特征在于,所述将所述配置需求列表发送至所述服务器以使得所述服务器根据所述配置需求列表生成虚拟设备容器包括:
将所述配置需求列表发送至所述服务器以使得所述服务器根据所述设备配置列表确定所述应用程序的基础镜像,并根据所述基础镜像及所述设备配置列表生成所述虚拟设备容器。
8.一种应用程序管理装置,其特征在于,包括:
上传模块,用于将所述应用程序上传至服务器以使得所述服务器对所述应用程序进行存储管理;
生成模块,用于根据所述应用程序生成配置需求列表;
发送模块,用于将所述配置需求列表发送至所述服务器以使得所述服务器根据所述配置需求列表生成虚拟设备容器;
执行模块,用于响应于用户发起的所述应用程序的任务请求,将所述任务请求发送至所述虚拟设备容器,以使得所述虚拟设备容器执行与所述任务请求相对应的任务操作。
9.一种电子设备,其特征在于,所述电子设备包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,实现权利要求1-7任一项所述的应用程序管理方法。
10.一种计算机程序的非易失性计算机可读存储介质,其特征在于,当所述计算机程序被一个或多个处理器执行时,实现权利要求1-7任一项所述的应用程序管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110751202.XA CN113542379A (zh) | 2021-07-02 | 2021-07-02 | 应用程序管理方法及装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110751202.XA CN113542379A (zh) | 2021-07-02 | 2021-07-02 | 应用程序管理方法及装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113542379A true CN113542379A (zh) | 2021-10-22 |
Family
ID=78126606
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110751202.XA Pending CN113542379A (zh) | 2021-07-02 | 2021-07-02 | 应用程序管理方法及装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113542379A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114157701A (zh) * | 2021-11-19 | 2022-03-08 | 北京百度网讯科技有限公司 | 一种任务测试方法、装置、设备以及存储介质 |
CN114268958A (zh) * | 2021-12-13 | 2022-04-01 | 奇安信科技集团股份有限公司 | 云手机模拟真实手机的方法、装置及计算机设备 |
CN114448832A (zh) * | 2022-02-08 | 2022-05-06 | 西南证券股份有限公司 | 一种用于证券线上交易平台的压力测试系统 |
CN118300994A (zh) * | 2024-03-28 | 2024-07-05 | 广州度岭科技有限公司 | 基于云手机的虚拟网络管理方法、装置、设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104536890A (zh) * | 2014-12-26 | 2015-04-22 | 小米科技有限责任公司 | 测试系统、方法和装置 |
CN107908535A (zh) * | 2017-11-13 | 2018-04-13 | 珠海金山网络游戏科技有限公司 | 分布式客户端模拟方法及装置 |
CN110399307A (zh) * | 2019-07-31 | 2019-11-01 | 网宿科技股份有限公司 | 一种测试方法、测试平台及目标服务器 |
CN111443923A (zh) * | 2020-03-26 | 2020-07-24 | 北京房天下嘉居网络技术有限公司 | 服务发布方法及装置 |
-
2021
- 2021-07-02 CN CN202110751202.XA patent/CN113542379A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104536890A (zh) * | 2014-12-26 | 2015-04-22 | 小米科技有限责任公司 | 测试系统、方法和装置 |
CN107908535A (zh) * | 2017-11-13 | 2018-04-13 | 珠海金山网络游戏科技有限公司 | 分布式客户端模拟方法及装置 |
CN110399307A (zh) * | 2019-07-31 | 2019-11-01 | 网宿科技股份有限公司 | 一种测试方法、测试平台及目标服务器 |
CN111443923A (zh) * | 2020-03-26 | 2020-07-24 | 北京房天下嘉居网络技术有限公司 | 服务发布方法及装置 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114157701A (zh) * | 2021-11-19 | 2022-03-08 | 北京百度网讯科技有限公司 | 一种任务测试方法、装置、设备以及存储介质 |
CN114157701B (zh) * | 2021-11-19 | 2023-11-28 | 北京百度网讯科技有限公司 | 一种任务测试方法、装置、设备以及存储介质 |
CN114268958A (zh) * | 2021-12-13 | 2022-04-01 | 奇安信科技集团股份有限公司 | 云手机模拟真实手机的方法、装置及计算机设备 |
CN114268958B (zh) * | 2021-12-13 | 2023-12-22 | 奇安信科技集团股份有限公司 | 云手机模拟真实手机的方法、装置及计算机设备 |
CN114448832A (zh) * | 2022-02-08 | 2022-05-06 | 西南证券股份有限公司 | 一种用于证券线上交易平台的压力测试系统 |
CN114448832B (zh) * | 2022-02-08 | 2024-07-30 | 西南证券股份有限公司 | 一种用于证券线上交易平台的压力测试系统 |
CN118300994A (zh) * | 2024-03-28 | 2024-07-05 | 广州度岭科技有限公司 | 基于云手机的虚拟网络管理方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113542379A (zh) | 应用程序管理方法及装置、电子设备及存储介质 | |
US10095609B1 (en) | Intermediary for testing content and applications | |
US9451043B2 (en) | Remote virtualization of mobile apps | |
EP3128416B1 (en) | Sdn application integration, management and control method, system and device | |
US9679090B1 (en) | Systematically exploring programs during testing | |
US20180260201A1 (en) | Intelligent software deployment on an iaas platform | |
CN104321745A (zh) | 用于软件应用程序的跨平台开发的环境及方法 | |
CN108319554B (zh) | 应用功能的测试方法、计算机可读存储介质和终端设备 | |
CN111580926A (zh) | 模型发布方法、模型部署方法、装置、设备及存储介质 | |
KR20110052521A (ko) | 정보 처리 장치, 통신 시스템, 컴퓨터 판독 가능 매체 및 정보 처리 방법 | |
CN112379963B (zh) | 远程应用窗口控制方法、装置及计算机设备 | |
CN111367534A (zh) | 一种基于应用环境的服务编排方法及系统 | |
CN112121411A (zh) | 震动控制方法、装置、电子设备和计算机可读存储介质 | |
CN114036439A (zh) | 网站搭建方法、装置、介质及电子设备 | |
US8615774B2 (en) | Abstracting data acquisition and management | |
CN103617055A (zh) | 一种在浏览器中启动应用程序的方法、装置和浏览器 | |
CN111694604A (zh) | 一种驱动批量安装方法、装置、设备及机器可读存储介质 | |
CN114042310A (zh) | 游戏操作数据收集方法、装置、计算机设备及存储介质 | |
US20180089045A1 (en) | Method and device for performing hardware module diagnostics | |
US20200097271A1 (en) | Method and system for operating a software application on a processor of a mobile device | |
CN105550046B (zh) | 虚拟操控的方法、装置及系统 | |
WO2020226566A1 (en) | Method and apparatus for operating a mobile application store | |
CN105706023A (zh) | 与不支持的输入设备的通信 | |
CN111026651A (zh) | 测试方法、装置、存储介质及电子设备 | |
CN113742716B (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 |