Movatterモバイル変換


[0]ホーム

URL:


CN110471828B - An operating system testing method, device and equipment thereof - Google Patents

An operating system testing method, device and equipment thereof
Download PDF

Info

Publication number
CN110471828B
CN110471828BCN201810437553.1ACN201810437553ACN110471828BCN 110471828 BCN110471828 BCN 110471828BCN 201810437553 ACN201810437553 ACN 201810437553ACN 110471828 BCN110471828 BCN 110471828B
Authority
CN
China
Prior art keywords
operating system
business
test
application
testing
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
CN201810437553.1A
Other languages
Chinese (zh)
Other versions
CN110471828A (en
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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding LtdfiledCriticalAlibaba Group Holding Ltd
Priority to CN201810437553.1ApriorityCriticalpatent/CN110471828B/en
Publication of CN110471828ApublicationCriticalpatent/CN110471828A/en
Application grantedgrantedCritical
Publication of CN110471828BpublicationCriticalpatent/CN110471828B/en
Activelegal-statusCriticalCurrent
Anticipated expirationlegal-statusCritical

Links

Images

Classifications

Landscapes

Abstract

The application provides an operating system testing method, an operating system testing device and equipment thereof, comprising the following steps: before the operation system to be tested is released, determining the business application of a specific scene needing to run in the operation system according to the deployment environment information; running business applications and related tests based on an operating system to serve as important supplements of a conventional operating system test flow; and determining the test result of the operating system according to the test result of the service application. According to the technical scheme, the problem of the operation system triggered by the service application can be preposed, a test system is formed together with the test set of the sub-field of the conventional operation system, the execution is automatically triggered, and the iteration period of the release of the operation system is quickened. The business application is an application related to business and a testing set thereof, the complex business scene and the testing environment can not cover the working pressure generated by the kernel of the operating system by the conventional operating system testing set, and the complex business scene and the testing environment are integrated into the testing flow of the general operating system, so that the release efficiency and the quality of the operating system are effectively improved.

Description

Translated fromChinese
一种操作系统测试方法、装置及其设备An operating system testing method, device and equipment thereof

技术领域technical field

本申请涉及互联网领域,尤其是一种操作系统测试方法、装置及其设备。The present application relates to the Internet field, in particular to an operating system testing method, device and equipment thereof.

背景技术Background technique

操作系统(Operating System,OS)是管理和控制硬件资源与软件资源的程序,是直接运行在“裸机”的基本系统软件,其它软件均需要在操作系统的支持下才能运行。操作系统是用户和设备的接口,同时也是硬件和其它软件的接口,可以管理硬件资源、软件资源及数据资源,并提供各种形式的用户界面。The operating system (Operating System, OS) is a program that manages and controls hardware resources and software resources. It is the basic system software that runs directly on the "bare metal". Other software needs to be supported by the operating system to run. The operating system is the interface between users and devices, and also the interface between hardware and other software. It can manage hardware resources, software resources, and data resources, and provide various forms of user interfaces.

由于操作系统的重要性,在发布操作系统之前,需要对操作系统进行测试,例如,测试操作系统本身是否存在异常。若操作系统存在异常,则对操作系统进行修复,一直到操作系统不存在异常,则可以发布未存在异常的操作系统。Due to the importance of the operating system, before the operating system is released, the operating system needs to be tested, for example, whether there is an abnormality in the operating system itself. If there is an abnormality in the operating system, the operating system is repaired until there is no abnormality in the operating system, and then the operating system without abnormality can be released.

在发布操作系统之后,则可以在业务环境中运行操作系统,且操作系统上可以运行多个业务应用,而在运行这些业务应用之后,可能发现操作系统与业务应用并不适配,需要对操作系统进行修复,并重新对操作系统进行测试,在测试完成后,重新发布操作系统,以此类推,若操作系统上运行大量业务应用,则可能对操作系统进行多次修复,操作系统的测试效率很低,用户体验很差。After the operating system is released, the operating system can be run in the business environment, and multiple business applications can be run on the operating system. However, after running these business applications, it may be found that the operating system is not suitable for the business applications. The system is repaired and the operating system is re-tested. After the test is completed, the operating system is re-released, and so on. If a large number of business applications are running on the operating system, the operating system may be repaired multiple times. Very low, poor user experience.

发明内容Contents of the invention

本申请提供一种操作系统测试方法,所述方法包括:The application provides a method for testing an operating system, the method comprising:

在待测试的操作系统发布之前,根据环境信息确定需要在所述操作系统运行的特定场景的业务应用;Before the release of the operating system to be tested, determine the business application in a specific scenario that needs to run on the operating system according to the environment information;

基于所述操作系统运行所述业务应用,对所述业务应用进行测试;running the business application based on the operating system, and testing the business application;

根据所述业务应用的测试结果确定所述操作系统的测试结果。The test result of the operating system is determined according to the test result of the service application.

本申请提供一种操作系统测试方法,所述方法包括:The application provides a method for testing an operating system, the method comprising:

在待测试的操作系统发布之前,根据部署环境信息确定需要在所述操作系统运行的多个业务应用,将业务应用的应用场景前置到所述操作系统的测试环境,作为所述操作系统的测试环境中的测试环节,业务应用的测试集与所述操作系统的测试集形成测试集;业务应用包括多个应用以及多个应用的业务行为;Before the release of the operating system to be tested, determine multiple business applications that need to run on the operating system according to the deployment environment information, and prepend the application scenarios of the business applications to the test environment of the operating system as the operating system's In the test link in the test environment, the test set of the business application and the test set of the operating system form a test set; the business application includes multiple applications and the business behavior of the multiple applications;

基于所述操作系统运行所述业务应用、所述业务应用的测试流程;Running the business application and the test process of the business application based on the operating system;

根据所述业务应用的测试结果确定所述操作系统的测试结果。The test result of the operating system is determined according to the test result of the service application.

本申请提供一种操作系统测试装置,所述装置包括:The application provides an operating system testing device, the device comprising:

获取模块,用于在待测试的操作系统发布之前,根据环境信息确定需要在所述操作系统运行的特定场景的业务应用;测试模块,用于基于所述操作系统运行所述业务应用,并对所述业务应用进行测试;确定模块,用于根据所述业务应用的测试结果确定操作系统的测试结果。The acquisition module is used to determine the business application in a specific scenario that needs to be run on the operating system according to the environment information before the release of the operating system to be tested; the test module is used to run the business application based on the operating system, and The business application is tested; the determination module is configured to determine the test result of the operating system according to the test result of the business application.

本申请提供一种操作系统测试装置,所述装置包括:获取模块,用于在待测试的操作系统发布之前,根据部署环境信息确定需要在所述操作系统运行的多个业务应用,将业务应用的应用场景前置到所述操作系统的测试环境,作为所述操作系统的测试环境中的测试环节,业务应用的测试集与所述操作系统的测试集形成测试集;业务应用包括多个应用以及多个应用的业务行为;测试模块,用于基于所述操作系统运行所述业务应用、所述业务应用的测试流程;确定模块,用于根据所述业务应用的测试结果确定操作系统的测试结果。The present application provides an operating system testing device, which includes: an acquisition module, used to determine multiple business applications that need to be run on the operating system according to deployment environment information before the operating system to be tested is released, and store the business applications The application scenario is prepended to the test environment of the operating system, as a test link in the test environment of the operating system, the test set of the business application and the test set of the operating system form a test set; the business application includes multiple applications and business behaviors of multiple applications; a test module, configured to run the business application and a test process of the business application based on the operating system; a determination module, configured to determine the test of the operating system according to the test results of the business application result.

本申请提供一种操作系统测试设备,包括:处理器和机器可读存储介质,所述机器可读存储介质上存储有若干计算机指令,所述处理器执行所述计算机指令时进行如下处理:在待测试的操作系统发布之前,根据环境信息确定需要在所述操作系统运行的特定场景的业务应用;The present application provides an operating system testing device, including: a processor and a machine-readable storage medium, where several computer instructions are stored on the machine-readable storage medium, and the processor performs the following processing when executing the computer instructions: Before the release of the operating system to be tested, determine the business application that needs to run in the specific scenario of the operating system according to the environmental information;

基于所述操作系统运行所述业务应用,对所述业务应用进行测试;running the business application based on the operating system, and testing the business application;

根据所述业务应用的测试结果确定所述操作系统的测试结果。The test result of the operating system is determined according to the test result of the service application.

基于上述技术方案,本申请实施例中,在待测试的操作系统发布之前,可以根据部署环境信息确定需要在该操作系统运行的特定场景的业务应用;基于所述操作系统运行所述业务应用及其相关测试(即对业务应用进行测试),作为常规操作系统测试流程的重要补充;根据所述业务应用的测试结果确定所述操作系统的测试结果。综上所述,能够将业务应用触发的操作系统问题前置,并与常规操作系统子领域测试集一起形成一站式操作系统测试系统,自动触发执行,加快了操作系统发布的迭代周期。而且,上述业务应用是与业务强相关的应用及其测试集,复杂的业务场景及测试环境对操作系统内核产生的工作压力是常规的操作系统测试集无法覆盖,将其集成到通用的操作系统的测试流程中,有效地提高了发布效率和操作系统软件质量。而且,可以在操作系统发布前,发现操作系统与业务应用并不适配,并对操作系统进行修复,能够将业务应用触发的操作系统问题前置,提前发现问题,有效保证操作系统的质量,提高操作系统的稳定性和兼容性,有效地提高解决问题的效率和操作系统发布的稳定性,加快操作系统发布的迭代周期,减少测试时间,可以提高操作系统的测试效率,可以节省测试资源,提高用户体验。Based on the above technical solution, in the embodiment of the present application, before the operating system to be tested is released, it is possible to determine the business application in a specific scenario that needs to be run on the operating system according to the deployment environment information; The relevant test (that is, to test the business application) is an important supplement to the conventional operating system testing process; the test result of the operating system is determined according to the test result of the business application. To sum up, it can pre-empt the operating system problems triggered by business applications, and form a one-stop operating system test system together with the conventional operating system sub-field test set, which automatically triggers execution and speeds up the iterative cycle of operating system releases. Moreover, the above-mentioned business applications are highly business-related applications and their test sets. The work pressure on the operating system kernel caused by complex business scenarios and test environments is beyond the coverage of conventional operating system test sets. It is integrated into a general-purpose operating system In the testing process, the release efficiency and operating system software quality are effectively improved. Moreover, before the operating system is released, it can be found that the operating system is not suitable for business applications, and the operating system can be repaired, which can pre-empt the operating system problems triggered by business applications, find problems in advance, and effectively ensure the quality of the operating system. Improve the stability and compatibility of the operating system, effectively improve the efficiency of problem solving and the stability of operating system releases, speed up the iterative cycle of operating system releases, reduce testing time, improve the testing efficiency of operating systems, and save testing resources. Improve user experience.

附图说明Description of drawings

为了更加清楚地说明本申请实施例或者现有技术中的技术方案,下面将对本申请实施例或者现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据本申请实施例的这些附图获得其它的附图。In order to more clearly illustrate the technical solutions in the embodiments of the application or the prior art, the following will briefly introduce the accompanying drawings that need to be used in the description of the embodiments of the application or the prior art. Obviously, the accompanying drawings in the following description These are only some embodiments described in this application, and those skilled in the art can also obtain other drawings according to these drawings of the embodiments of this application.

图1是本申请一种实施方式中的操作系统测试方法的流程图;Fig. 1 is a flow chart of the operating system testing method in an embodiment of the present application;

图2A和图2B是本申请一种实施方式中的应用场景示意图;2A and 2B are schematic diagrams of application scenarios in an embodiment of the present application;

图3是本申请另一种实施方式中的操作系统测试方法的流程图;Fig. 3 is a flowchart of an operating system testing method in another embodiment of the present application;

图4是本申请一种实施方式中的操作系统测试装置的结构图。Fig. 4 is a structural diagram of an operating system testing device in an embodiment of the present application.

具体实施方式Detailed ways

在本申请实施例使用的术语仅仅是出于描述特定实施例的目的,而非限制本申请。本申请和权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。还应当理解,本文中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。The terms used in the embodiments of the present application are only for the purpose of describing specific embodiments, rather than limiting the present application. As used in this application and the claims, the singular forms "a", "the" and "the" are intended to include the plural forms as well, unless the context clearly dictates otherwise. It should also be understood that the term "and/or" as used herein is meant to include any and all possible combinations of one or more of the associated listed items.

应当理解,尽管在本申请实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,此外,所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。It should be understood that although terms such as first, second, and third may be used in the embodiment of the present application to describe various information, such information should not be limited to these terms. These terms are only used to distinguish information of the same type from one another. For example, without departing from the scope of the present application, first information may also be called second information, and similarly, second information may also be called first information. Depending on the context, furthermore, the use of the word "if" could be interpreted as "at" or "when" or "in response to a determination."

本申请实施例中提出一种操作系统测试方法,该方法可以应用于操作系统测试设备,该操作系统测试设备可以包括PC(Personal Computer,个人计算机)、平板电脑、笔记本电脑、移动终端、智能手机等,对此设备类型不做限制。An operating system testing method is proposed in the embodiment of the present application, and the method can be applied to operating system testing equipment, and the operating system testing equipment can include a PC (Personal Computer, personal computer), a tablet computer, a notebook computer, a mobile terminal, a smart phone, etc. etc. There is no restriction on this device type.

参见图1所示,为操作系统测试方法的流程示意图,该方法可以包括:Referring to Fig. 1, it is a schematic flow diagram of an operating system testing method, which may include:

步骤101,在待测试的操作系统发布之前,根据环境信息确定需要在该操作系统运行的特定场景的业务应用。特定场景是需要运行该操作系统的服务器的业务场景,是一个复杂场景,业务场景可能是一个大集群,包括大量业务应用,业务场景非常复杂,其业务处理过程也非常复杂,对此业务场景不做限制。Step 101, before the release of the operating system to be tested, determine the business application in a specific scenario that needs to run on the operating system according to the environment information. The specific scenario is a business scenario that requires servers running the operating system. It is a complex scenario. The business scenario may be a large cluster, including a large number of business applications. The business scenario is very complicated, and its business processing is also very complicated. Do limit.

具体的,可以获取需要运行该操作系统的服务器对应的环境信息,并根据该环境信息确定需要在该操作系统运行的特定场景的业务应用(如服务器的业务场景包括的多个业务应用,这些业务应用部署在服务器的业务场景下)。其中,所述业务应用可以包括:在上一个版本的操作系统中正常运行的业务应用。Specifically, the environment information corresponding to the server that needs to run the operating system can be obtained, and the business applications that need to run in the specific scenario of the operating system can be determined according to the environment information (such as multiple business applications included in the business scenario of the server, these business applications In the business scenario where the application is deployed on the server). Wherein, the business application may include: a business application normally running in a previous version of the operating system.

在一个例子中,上述业务应用可以包括多个应用(即APP)以及所述多个应用的业务行为(如应用的交互、应用的处理等等,对此不做限制)。其中,业务应用是与业务相关的应用,其测试场景条件非常复杂,业务应用对操作系统内核产生的工作压力非常复杂,可以包括大量的核心应用。例如,某个网站需要支持业务A,则业务应用包括实现业务A的所有应用,如支持注册功能的应用,支持验证功能的应用,支持检索功能的应用,支持图片数据的应用等等。In an example, the above-mentioned business application may include multiple applications (ie, APPs) and business behaviors of the multiple applications (such as application interaction, application processing, etc., which are not limited). Among them, the business application is a business-related application, and its test scenario conditions are very complex, and the work pressure generated by the business application on the operating system kernel is very complicated, and may include a large number of core applications. For example, if a website needs to support business A, the business applications include all applications that implement business A, such as applications that support registration functions, applications that support verification functions, applications that support retrieval functions, applications that support image data, and so on.

步骤102,基于该操作系统运行该业务应用,并对该业务应用进行测试。Step 102, run the business application based on the operating system, and test the business application.

步骤103,根据该业务应用的测试结果确定该操作系统的测试结果。Step 103, determine the test result of the operating system according to the test result of the business application.

其中,根据该业务应用的测试结果确定该操作系统的测试结果,还可以包括:根据该操作系统的测试集对该操作系统进行测试,得到该测试集的测试结果;根据该业务应用的测试结果和该测试集的测试结果确定该操作系统的测试结果。例如,若该业务应用的测试结果为异常,则确定该操作系统的测试结果为异常;或者,若该测试集的测试结果为异常,则确定该操作系统的测试结果为异常;或者,若该业务应用的测试结果为异常,且该测试集的测试结果为异常,则确定该操作系统的测试结果为异常;或者,若该业务应用的测试结果为正常,且该测试集的测试结果为正常,则确定该操作系统的测试结果为正常。Wherein, determining the test result of the operating system according to the test result of the business application may also include: testing the operating system according to the test set of the operating system to obtain the test result of the test set; and the test results of the test set determine the test results of the operating system. For example, if the test result of the business application is abnormal, it is determined that the test result of the operating system is abnormal; or, if the test result of the test set is abnormal, it is determined that the test result of the operating system is abnormal; or, if the If the test result of the business application is abnormal and the test result of the test set is abnormal, it is determined that the test result of the operating system is abnormal; or, if the test result of the business application is normal and the test result of the test set is normal , it is determined that the test result of the operating system is normal.

其中,针对该操作系统运行的多个业务应用,只要有至少一个业务应用的测试结果为异常,则可以说明业务应用的测试结果为异常。此外,若所有业务应用的测试结果均为正常,则可以说明业务应用的测试结果为正常。Among the multiple business applications running on the operating system, as long as the test result of at least one business application is abnormal, it can be indicated that the test result of the business application is abnormal. In addition, if the test results of all business applications are normal, it can be explained that the test results of the business applications are normal.

在一个例子中,上述执行顺序只是为了方便描述给出的一个示例,在实际应用中,还可以改变步骤之间的执行顺序,对此执行顺序不做限制。而且,在其它实施例中,并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其它实施例中可能被分解为多个步骤进行描述;本说明书中所描述的多个步骤,在其它实施例也可能被合并为单个步骤进行描述。In one example, the above execution order is just an example given for convenience of description, and in actual application, the execution order between steps may also be changed, and there is no limitation on this execution order. Moreover, in other embodiments, the steps of the corresponding methods are not necessarily performed in the order shown and described in this specification, and the method may include more or less steps than those described in this specification. In addition, a single step described in this specification may be decomposed into multiple steps for description in other embodiments; multiple steps described in this specification may also be combined as a single step for description in other embodiments.

在一个例子中,根据该业务应用的测试结果确定该操作系统的测试结果后,若该操作系统的测试结果为异常,则可以提示用户对操作系统进行修复,即用户对操作系统的代码进行修改,对此不做限制,然后,基于修复的操作系统重新执行步骤101-步骤103。若操作系统的测试结果为正常,则可以发布操作系统。In one example, after the test result of the operating system is determined according to the test result of the business application, if the test result of the operating system is abnormal, the user may be prompted to repair the operating system, that is, the user modifies the code of the operating system , without limitation, and then re-execute step 101-step 103 based on the repaired operating system. If the test result of the operating system is normal, the operating system can be released.

在一个例子中,根据该业务应用的测试结果确定该操作系统的测试结果后,在操作系统发布后,还可以基于发布后的操作系统运行业务应用,并对运行的该业务应用进行测试,从而得到该业务应用的测试结果,对此过程不做限制。In one example, after the test result of the operating system is determined according to the test result of the business application, after the operating system is released, the business application can also be run based on the released operating system, and the running business application can be tested, thereby The test result of the business application is obtained, and there is no limitation on this process.

在上述实施例中,操作系统可以包括但不限于:Linux操作系统、Windows操作系统、Android操作系统、iOS操作系统。当然,上述操作系统只是几个示例,对此操作系统不做限制,所有操作系统均在本申请实施例的保护范围之内。In the above embodiment, the operating system may include but not limited to: Linux operating system, Windows operating system, Android operating system, and iOS operating system. Certainly, the above-mentioned operating systems are just a few examples, and there is no limitation on this operating system, and all operating systems are within the scope of protection of this embodiment of the present application.

基于上述技术方案,本申请实施例中,根据部署环境信息确定需要在待测试的操作系统运行的特定场景的业务应用;基于所述操作系统运行所述业务应用及其相关测试(即对业务应用进行测试),作为常规操作系统测试流程的重要补充;根据所述业务应用的测试结果确定所述操作系统的测试结果。综上所述,能够将业务应用触发的操作系统问题前置,并与常规操作系统子领域测试集一起形成一站式操作系统测试系统,自动触发执行,加快了操作系统发布的迭代周期。而且,上述业务应用是与业务强相关的应用及其测试集,复杂的业务场景及测试环境对操作系统内核产生的工作压力是常规的操作系统测试集无法覆盖,将其集成到通用的操作系统的测试流程中,有效地提高了发布效率和操作系统软件质量。而且,可以在操作系统发布前,发现操作系统与业务应用并不适配,并对操作系统进行修复,能够将业务应用触发的操作系统问题前置,提前发现问题,有效保证操作系统的质量,提高操作系统的稳定性和兼容性,有效地提高解决问题的效率和操作系统发布的稳定性,加快操作系统发布的迭代周期,减少测试时间,可以提高操作系统的测试效率,可以节省测试资源,提高用户体验。而且,上述业务应用是与业务相关的应用,测试场景条件非常复杂,业务应用对操作系统内核产生的工作压力非常复杂,可以包括大量核心应用,其业务场景可能是一个大的集群,因此,可以将复杂的业务应用的测试集成到操作系统的测试过程中,形成一站式的测试流程。Based on the above technical solution, in the embodiment of the present application, according to the deployment environment information, it is determined according to the deployment environment information that the business application in a specific scenario needs to be run on the operating system to be tested; test), as an important supplement to the routine operating system test process; determine the test result of the operating system according to the test result of the business application. To sum up, it can pre-empt the operating system problems triggered by business applications, and form a one-stop operating system test system together with the conventional operating system sub-field test set, which automatically triggers execution and speeds up the iterative cycle of operating system releases. Moreover, the above-mentioned business applications are highly business-related applications and their test sets. The work pressure on the operating system kernel caused by complex business scenarios and test environments is beyond the coverage of conventional operating system test sets. It is integrated into a general-purpose operating system In the testing process, the release efficiency and operating system software quality are effectively improved. Moreover, before the operating system is released, it can be found that the operating system is not suitable for business applications, and the operating system can be repaired, which can pre-empt the operating system problems triggered by business applications, find problems in advance, and effectively ensure the quality of the operating system. Improve the stability and compatibility of the operating system, effectively improve the efficiency of problem solving and the stability of operating system releases, speed up the iterative cycle of operating system releases, reduce testing time, improve the testing efficiency of operating systems, and save testing resources. Improve user experience. Moreover, the above-mentioned business applications are business-related applications, the test scenario conditions are very complex, and the work pressure generated by business applications on the operating system kernel is very complicated, which may include a large number of core applications, and its business scenario may be a large cluster. Therefore, it can Integrate the testing of complex business applications into the testing process of the operating system to form a one-stop testing process.

在另一个例子中,本申请实施例中还提出一种操作系统测试方法,所述方法包括:在待测试的操作系统发布之前,根据部署环境信息确定需要在该操作系统运行的多个业务应用,并将业务应用的应用场景前置到该操作系统的测试环境,作为该操作系统的测试环境中的测试环节,该业务应用的测试集与该操作系统的测试集形成测试集;该业务应用可以包括多个应用以及所述多个应用的业务行为。然后,基于该操作系统运行该业务应用、该业务应用的测试流程;根据该业务应用的测试结果确定该操作系统的测试结果。In another example, the embodiment of the present application also proposes an operating system testing method, the method includes: before the operating system to be tested is released, determine multiple business applications that need to run on the operating system according to the deployment environment information , and put the application scenario of the business application in the test environment of the operating system as a test link in the test environment of the operating system, the test set of the business application and the test set of the operating system form a test set; the business application Multiple applications and business behaviors of the multiple applications may be included. Then, run the business application and the test process of the business application based on the operating system; determine the test result of the operating system according to the test result of the business application.

以下结合具体的应用场景,对上述操作系统测试(操作系统测试也可以为操作系统内核测试,本实施例中以操作系统测试为例)方法进行详细说明。The method of operating system testing (operating system testing may also be operating system kernel testing, operating system testing is taken as an example in this embodiment) will be described in detail below in combination with specific application scenarios.

CI(Continuous Integration,持续集成)模式是一种软件开发模式,通过多频次的代码集成、构建、测试、发布,可以及时部署软件新特性,从而加快迭代速度。基于此,还可以采用CI模式部署操作系统,即针对新开发的操作系统,可以进行操作系统的功能代码集成(即得到操作系统)、操作系统的测试、操作系统的发布、业务应用的测试、操作系统的部署上线等过程。例如,在开发出第一版本的操作系统A后,可以针对操作系统A执行上述过程;在开发出第二版本的操作系统B后,可以针对操作系统B执行上述过程,以此类推。CI (Continuous Integration) mode is a software development mode. Through multi-frequency code integration, construction, testing, and release, new software features can be deployed in a timely manner, thereby speeding up iteration. Based on this, the CI mode can also be used to deploy the operating system, that is, for the newly developed operating system, it is possible to integrate the function code of the operating system (that is, obtain the operating system), test the operating system, release the operating system, test business applications, The process of deploying and launching the operating system. For example, after the first version of the operating system A is developed, the above process can be performed for the operating system A; after the second version of the operating system B is developed, the above process can be performed for the operating system B, and so on.

参见图2A所示,为本实施例的应用场景示意图,在操作系统的功能代码集成过程,操作系统开发者(也可以称为操作系统内核开发者)可以开发出操作系统的代码,并将操作系统的代码存储到代码库(即code repository)中。Referring to FIG. 2A , which is a schematic diagram of the application scenario of this embodiment, in the process of integrating the function codes of the operating system, the operating system developer (also referred to as the operating system kernel developer) can develop the code of the operating system, and integrate the operating system The code of the system is stored in the code library (ie code repository).

在操作系统的测试过程,可以从代码库中得到操作系统,并利用操作系统的测试集对该操作系统进行测试,得到测试结果。若测试结果为操作系统异常,则向操作系统开发者提示操作系统异常,由操作系统开发者修改操作系统的代码,并将操作系统的代码存储到代码库,然后,可以利用操作系统的测试集对修改后的操作系统进行测试,得到测试结果,以此类推,一直到测试结果为操作系统正常。若测试结果为操作系统正常,则执行操作系统的发布过程。In the testing process of the operating system, the operating system can be obtained from the code library, and the operating system can be tested by using the test set of the operating system to obtain the test result. If the test result shows that the operating system is abnormal, the operating system developer will be prompted for the operating system exception, and the operating system developer will modify the code of the operating system and store the code of the operating system in the code library. Then, the test set of the operating system can be used The modified operating system is tested, and the test result is obtained, and so on, until the test result shows that the operating system is normal. If the test result is that the operating system is normal, the release process of the operating system is executed.

在操作系统的发布过程,可以将操作系统发布给各个业务应用,以使各个业务应用运行在该操作系统上。例如,针对需要运行该操作系统的服务器,假设该服务器部署有业务应用1-业务应用3,则还可以将该操作系统发布给业务应用1-业务应用3,以使业务应用1-业务应用3能够运行在该操作系统上。During the release process of the operating system, the operating system can be released to various business applications, so that each business application runs on the operating system. For example, for a server that needs to run the operating system, assuming that the server is deployed with business application 1-business application 3, the operating system can also be released to business application 1-business application 3, so that business application 1-business application 3 able to run on this operating system.

在业务应用的测试过程,可以将该业务应用运行在该操作系统上,并利用业务应用的测试集对该业务应用进行测试,得到测试结果。若测试结果为操作系统异常,则向操作系统开发者提示操作系统异常,由操作系统开发者修改操作系统的代码,并将操作系统的代码存储到代码库。若测试结果为业务应用异常,则向业务应用开发者提示业务应用异常,由业务应用开发者修改业务应用的代码,并重新对业务应用进行测试。若测试结果为操作系统正常、且业务应用正常,则得到该业务应用。当所有业务应用的测试结果均为操作系统正常、且业务应用正常时,则说明操作系统正常,执行操作系统的部署上线过程。During the testing process of the business application, the business application can be run on the operating system, and the business application can be tested by using the test set of the business application to obtain the test result. If the test result shows that the operating system is abnormal, the operating system developer is prompted to be abnormal, and the operating system developer modifies the code of the operating system and stores the code of the operating system in the code library. If the test result shows that the business application is abnormal, the business application developer will be prompted for the business application exception, and the business application developer will modify the code of the business application and re-test the business application. If the test result shows that the operating system is normal and the business application is normal, the business application is obtained. When the test results of all business applications show that the operating system is normal and the business applications are normal, it means that the operating system is normal, and the deployment and online process of the operating system is performed.

例如,可以将业务应用1运行在该操作系统上,并利用业务应用1的测试集对该业务应用1进行测试,得到测试结果。若测试结果为操作系统异常,则可以向操作系统开发者提示操作系统异常。若测试结果为业务应用1异常,则可以向业务应用开发者提示业务应用1异常。若测试结果为操作系统正常、且业务应用1正常,则可以得到业务应用1,并输出业务应用1。但是,此时并不能说明操作系统正常,只有当业务应用1、业务应用2和业务应用3的测试结果均为操作系统正常、且业务应用正常时,才能够说明操作系统正常,执行操作系统的部署上线过程,否则,就需要向操作系统开发者提示操作系统异常。For example, the business application 1 can be run on the operating system, and the business application 1 can be tested by using the test set of the business application 1 to obtain the test result. If the test result is that the operating system is abnormal, the operating system developer may be prompted for the operating system exception. If the test result shows that the business application 1 is abnormal, the business application developer may be prompted that the business application 1 is abnormal. If the test result shows that the operating system is normal and the business application 1 is normal, then the business application 1 can be obtained and the business application 1 is output. However, at this time, it does not mean that the operating system is normal. Only when the test results of business application 1, business application 2, and business application 3 all show that the operating system is normal and the business application is normal, it can be said that the operating system is normal. Deploy the online process, otherwise, it is necessary to prompt the operating system developer for an abnormal operating system.

在操作系统的部署上线过程,可以将正常的操作系统部署到服务器。During the deployment and online process of the operating system, a normal operating system can be deployed to the server.

从上述过程可以看出,在操作系统的测试过程,只是利用操作系统的测试集对该操作系统进行测试,得到测试结果,而操作系统的测试集只包括与操作系统本身功能相关的内容,但是,操作系统的很多问题来自于操作系统发布后的业务环境中,因此,操作系统的测试过程可能无法发现操作系统的问题。It can be seen from the above process that in the testing process of the operating system, the operating system is only tested by using the test set of the operating system to obtain test results, and the test set of the operating system only includes the content related to the function of the operating system itself, but , Many problems of the operating system come from the business environment after the release of the operating system. Therefore, the testing process of the operating system may not be able to find the problems of the operating system.

例如,在将业务应用1运行在操作系统后,利用业务应用1的测试集对业务应用1进行测试时,可能发现操作系统异常,即操作系统无法支持业务应用1的正常运行,而业务应用1本身没有问题,因此,需要向操作系统开发者提示操作系统异常,由操作系统开发者修改操作系统的代码,并将操作系统的代码存储到代码库。然后,参见图2A所示,需要重新执行操作系统的测试过程、操作系统的发布过程、业务应用的测试过程。假设有100个业务应用需要运行在操作系统,且100个业务应用的测试过程均发现操作系统异常,则需要重复100次上述过程,操作系统的测试效率很低,测试时间会非常长,用户体验很差。For example, after running business application 1 on the operating system, when using the test set of business application 1 to test business application 1, it may be found that the operating system is abnormal, that is, the operating system cannot support the normal operation of business application 1, while business application 1 There is no problem in itself. Therefore, it is necessary to notify the operating system developer of the operating system exception, and the operating system developer modifies the code of the operating system and stores the code of the operating system in the code library. Then, as shown in FIG. 2A , it is necessary to re-execute the testing process of the operating system, the publishing process of the operating system, and the testing process of the service application. Assuming that there are 100 business applications that need to run on the operating system, and the test process of 100 business applications finds that the operating system is abnormal, the above process needs to be repeated 100 times. The test efficiency of the operating system is very low, and the test time will be very long. very bad.

与上述发现不同的是,本申请实施例中,可以将业务应用的测试集成到操作系统的测试过程,从而提前发现相关问题,能够将由业务应用测试触发的操作系统问题前置到操作系统的测试过程,从而有效的保证了操作系统的质量。Different from the above findings, in the embodiment of the present application, the test of the business application can be integrated into the test process of the operating system, so that related problems can be found in advance, and the operating system problems triggered by the test of the business application can be forwarded to the test of the operating system process, thus effectively guaranteeing the quality of the operating system.

参见图2B所示,为本实施例的另一应用场景示意图,在操作系统的功能代码集成过程,操作系统开发者(也可以称为操作系统内核开发者)可以开发出操作系统的代码,并将操作系统的代码存储到代码库(即coderepository)中。Referring to FIG. 2B , which is a schematic diagram of another application scenario of this embodiment, during the integration process of operating system function codes, operating system developers (also called operating system kernel developers) can develop operating system codes, and Store the code of the operating system in the code library (ie coderepository).

在操作系统的测试过程,可以从代码库中得到操作系统,并利用操作系统的测试集对操作系统进行测试,得到测试集的测试结果。基于操作系统运行业务应用,并对该业务应用进行测试,得到业务应用的测试结果。基于测试集的测试结果和业务应用的测试结果,获得操作系统的测试结果。若操作系统的测试结果为操作系统异常,则向操作系统开发者提示操作系统异常,由操作系统开发者修改操作系统的代码,并将操作系统的代码存储到代码库,然后,重新执行操作系统的测试过程,以此类推,一直到操作系统的测试结果为操作系统正常。若操作系统的测试结果为操作系统正常,则执行操作系统的发布过程。In the testing process of the operating system, the operating system can be obtained from the code base, and the operating system can be tested by using the test set of the operating system to obtain the test result of the test set. Run the business application based on the operating system, and test the business application to obtain the test result of the business application. Based on the test result of the test set and the test result of the business application, the test result of the operating system is obtained. If the test result of the operating system is that the operating system is abnormal, the operating system developer will be notified that the operating system is abnormal, and the operating system developer will modify the code of the operating system and store the code of the operating system in the code library, and then re-execute the operating system The test process, and so on, until the test result of the operating system is that the operating system is normal. If the test result of the operating system is that the operating system is normal, the release process of the operating system is executed.

其中,利用操作系统的测试集对操作系统进行测试,得到测试集的测试结果,可以包括:先获取预先配置的操作系统的测试集,该测试集只包括与操作系统本身功能相关的内容,该测试集用于对操作系统进行测试,可以为测试脚本,该测试脚本用于测试操作系统本身是否异常。然后,利用测试集对操作系统进行测试,得到该测试集的测试结果,对此测试过程不做限制,如对该操作系统进行功能测试或者回归测试,此外,测试集的测试结果为正常或者异常。Wherein, using the test set of the operating system to test the operating system to obtain the test result of the test set may include: first obtaining the test set of the pre-configured operating system, the test set only includes the content related to the function of the operating system itself, the The test set is used to test the operating system, which may be a test script, and the test script is used to test whether the operating system itself is abnormal. Then, use the test set to test the operating system to obtain the test result of the test set. There is no limit to the test process, such as functional testing or regression testing of the operating system. In addition, the test result of the test set is normal or abnormal. .

其中,对该业务应用进行测试,得到业务应用的测试结果,可以包括:可以将业务应用运行在该操作系统上,并利用该业务应用的测试集对该业务应用进行测试,得到业务应用的测试结果。具体的,针对该操作系统运行的多个业务应用,只要有一个业务应用的测试结果为异常,则业务应用的测试结果为异常;若所有业务应用的测试结果均为正常,则业务应用的测试结果为正常。Wherein, testing the business application to obtain the test result of the business application may include: running the business application on the operating system, and using the test set of the business application to test the business application to obtain the test result of the business application result. Specifically, for multiple business applications running on the operating system, as long as the test result of one business application is abnormal, the test result of the business application is abnormal; if the test results of all business applications are normal, the test result of the business application is normal. The result is normal.

其中,可以将多个业务应用的应用场景前置到该操作系统的测试环境,作为该操作系统的测试环境中的测试环节,且该业务应用的测试集与该操作系统的测试集形成一站式的测试集;这样,能够将业务应用触发的操作系统问题前置,并与常规操作系统子领域测试集一起形成一站式操作系统测试系统,自动触发执行,加快了操作系统发布的迭代周期。上述业务应用是与业务强相关的应用及其测试集,复杂的业务场景及测试环境对操作系统内核产生的工作压力是常规的操作系统测试集无法覆盖,将其集成到通用的操作系统的测试流程中,有效地提高了发布效率和操作系统软件质量。上述业务应用是与业务相关的应用,测试场景条件非常复杂,业务应用对操作系统内核产生的工作压力非常复杂,可以包括大量核心应用,其业务场景可能是一个大的集群,因此,可以将复杂的业务应用的测试集成到操作系统的测试过程中,形成一站式的测试流程。Among them, the application scenarios of multiple business applications can be prepended to the test environment of the operating system as a test link in the test environment of the operating system, and the test set of the business application and the test set of the operating system form a one-stop In this way, operating system problems triggered by business applications can be pre-empted, and together with conventional operating system sub-field test sets, a one-stop operating system test system can be formed, which can automatically trigger execution and speed up the iterative cycle of operating system releases . The above-mentioned business applications are highly business-related applications and their test sets. Complex business scenarios and test environments put pressure on the operating system kernel, which cannot be covered by conventional operating system test sets. It is integrated into a general-purpose operating system test In the process, the release efficiency and operating system software quality are effectively improved. The above-mentioned business applications are business-related applications. The test scenario conditions are very complex, and the work pressure generated by business applications on the operating system kernel is very complicated. It can include a large number of core applications. The business scenario may be a large cluster. Therefore, complex The testing of business applications is integrated into the testing process of the operating system to form a one-stop testing process.

例如,可以将业务应用1-业务应用3运行在该操作系统上,并利用业务应用1的测试集对业务应用1进行测试,得到业务应用1的测试结果,对此测试过程不做限制,业务应用1的测试结果为正常或者异常。此外,利用业务应用2的测试集对业务应用2进行测试,得到业务应用2的测试结果;利用业务应用3的测试集对业务应用3进行测试,得到业务应用3的测试结果。然后,若任意一个或者多个业务应用的测试结果为异常,则确定业务应用的测试结果为异常;若所有业务应用的测试结果为正常,则确定业务应用的测试结果为正常。For example, business application 1-business application 3 can be run on the operating system, and the test set of business application 1 can be used to test business application 1 to obtain the test result of business application 1. There is no limit to this test process. The test result of application 1 is normal or abnormal. In addition, the test set of business application 2 is used to test the business application 2, and the test result of the business application 2 is obtained; the test set of the business application 3 is used to test the business application 3, and the test result of the business application 3 is obtained. Then, if the test results of any one or more business applications are abnormal, it is determined that the test results of the business applications are abnormal; if the test results of all the business applications are normal, then it is determined that the test results of the business applications are normal.

其中,基于测试集的测试结果和业务应用的测试结果,获得操作系统的测试结果,可以包括:若业务应用的测试结果为异常,则可以确定操作系统的测试结果为异常;或者,若测试集的测试结果为异常,则可以确定操作系统的测试结果为异常;或者,若业务应用的测试结果为异常,且测试集的测试结果为异常,则可以确定操作系统的测试结果为异常;或者,若业务应用的测试结果为正常,测试集的测试结果为正常,则可以确定操作系统的测试结果为正常。Wherein, based on the test result of the test set and the test result of the business application, obtaining the test result of the operating system may include: if the test result of the business application is abnormal, it can be determined that the test result of the operating system is abnormal; or, if the test set If the test result of the test set is abnormal, it can be determined that the test result of the operating system is abnormal; or, if the test result of the business application is abnormal and the test result of the test set is abnormal, it can be determined that the test result of the operating system is abnormal; or, If the test result of the business application is normal and the test result of the test set is normal, it can be determined that the test result of the operating system is normal.

在一个例子中,在基于操作系统运行业务应用,并对该业务应用进行测试之前,还可以获得需要在该操作系统运行的特定场景的业务应用。具体的,可以获取需要运行该操作系统的服务器对应的环境信息,并根据该环境信息确定需要在该操作系统运行的特定场景的业务应用(如服务器的业务场景包括的多个业务应用,这些业务应用部署在服务器的业务场景下)。例如,假设在操作系统的部署上线过程,可以将操作系统部署到服务器A,则获取服务器A的环境信息,即服务器A会运行哪些业务应用,假设服务器A会运行业务应用1-业务应用3,则服务器A的环境信息就是业务应用1-业务应用3,且根据该环境信息确定需要在该操作系统运行的特定场景的业务应用是业务应用1-业务应用3。当然,可以采用其它方式获得需要在操作系统运行的业务应用,对此不做限制。In an example, before the business application is run based on the operating system and the business application is tested, the business application in a specific scenario that needs to be run on the operating system can also be obtained. Specifically, the environment information corresponding to the server that needs to run the operating system can be obtained, and the business applications that need to run in the specific scenario of the operating system can be determined according to the environment information (such as multiple business applications included in the business scenario of the server, these business applications In the business scenario where the application is deployed on the server). For example, assuming that the operating system can be deployed to server A during the deployment and online process of the operating system, the environment information of server A is obtained, that is, which business applications will be run by server A, assuming that server A will run business application 1-business application 3, Then the environment information of server A is business application 1-business application 3, and it is determined according to the environment information that the business application in a specific scenario that needs to run on the operating system is business application 1-business application 3. Of course, other ways can be used to obtain business applications that need to run on the operating system, and there is no limitation on this.

在上述实施例中,特定场景是需要运行操作系统的服务器的业务场景,其是一个复杂的场景,业务场景可能是一个大的集群,包括大量业务应用,业务场景非常复杂,业务场景的业务处理过程也非常复杂,对此业务场景不做限制。此外,上述业务应用可以包括多个应用以及多个应用的业务行为(如应用的交互、应用的处理等)。业务应用是与业务相关的应用,测试场景条件非常复杂,业务应用对操作系统内核产生的工作压力非常复杂,可以包括大量的核心应用。In the above embodiments, the specific scenario is a business scenario that requires a server running an operating system, which is a complex scenario. The business scenario may be a large cluster, including a large number of business applications. The business scenario is very complicated, and the business processing of the business scenario The process is also very complicated, and there is no limit to this business scenario. In addition, the above business application may include multiple applications and business behaviors of the multiple applications (such as application interaction, application processing, etc.). Business applications are business-related applications. The test scenario conditions are very complex, and the work pressure of business applications on the operating system kernel is very complicated, which can include a large number of core applications.

在一个例子中,上述业务应用可以包括:在上一个版本的操作系统中正常运行的业务应用,即在上一个版本的操作系统中,该业务应用是正常的。In an example, the above-mentioned service application may include: a service application normally running in a previous version of the operating system, that is, in the previous version of the operating system, the service application is normal.

例如,在开发出第一版本的操作系统A后,业务应用1-业务应用3(后续以业务应用1为例进行说明)在操作系统A均可以正常运行,即操作系统A是正常的,而且业务应用1也是正常的。然后,在开发出第二版本的操作系统B后,获取的是在操作系统A中正常运行的业务应用1,因此,若业务应用1的测试结果为异常,由于业务应用1在操作系统A中正常运行,但是在操作系统B中异常,则可以说明操作系统B存在异常,需要对操作系统B进行修复。For example, after the first version of operating system A is developed, business application 1-business application 3 (the business application 1 will be used as an example to describe later) can all run normally on operating system A, that is, operating system A is normal, and Business application 1 is also normal. Then, after the second version of the operating system B is developed, the business application 1 that runs normally in the operating system A is obtained. Therefore, if the test result of the business application 1 is abnormal, because the business application 1 in the operating system A If it runs normally, but it is abnormal in operating system B, it can indicate that there is an abnormality in operating system B, and operating system B needs to be repaired.

从上述过程可以看出,在操作系统的测试过程,是利用操作系统的测试集对操作系统进行测试,并在操作系统运行业务应用,对业务应用进行测试,因此,将业务应用的测试集成到操作系统的测试过程,提前发现问题,能够将由业务应用测试触发的操作系统问题前置到操作系统的测试过程,有效的保证操作系统的质量,在操作系统发布前解决问题,相当于问题发现被前置,有效提高了解决问题的效率和操作系统发布的稳定性,加快操作系统发布的迭代周期。It can be seen from the above process that in the testing process of the operating system, the operating system is tested by using the test set of the operating system, and the business application is run on the operating system to test the business application. Therefore, the test of the business application is integrated into the During the testing process of the operating system, problems can be found in advance, and the operating system problems triggered by business application testing can be forwarded to the testing process of the operating system, effectively ensuring the quality of the operating system, and solving problems before the operating system is released, which is equivalent to being discovered by the operating system. Front-end, effectively improving the efficiency of problem-solving and the stability of operating system releases, and speeding up the iterative cycle of operating system releases.

在操作系统的发布过程,可以将操作系统发布给各个业务应用,以使各个业务应用运行在该操作系统上。例如,针对需要运行该操作系统的服务器,假设该服务器部署有业务应用1-业务应用3,则还可以将该操作系统发布给业务应用1-业务应用3,以使业务应用1-业务应用3能够运行在该操作系统上。During the release process of the operating system, the operating system can be released to various business applications, so that each business application runs on the operating system. For example, for a server that needs to run the operating system, assuming that the server is deployed with business application 1-business application 3, the operating system can also be released to business application 1-business application 3, so that business application 1-business application 3 able to run on this operating system.

在业务应用的测试过程,可以将该业务应用运行在该操作系统上,并利用业务应用的测试集对该业务应用进行测试,得到测试结果。若测试结果为业务应用异常,则向业务应用开发者提示业务应用异常,由业务应用开发者修改业务应用的代码,并重新对业务应用进行测试。若测试结果为业务应用正常,则得到该业务应用。在所有业务应用均正常后,则执行操作系统的部署上线过程。During the testing process of the business application, the business application can be run on the operating system, and the business application can be tested by using the test set of the business application to obtain the test result. If the test result shows that the business application is abnormal, the business application developer will be prompted for the business application exception, and the business application developer will modify the code of the business application and re-test the business application. If the test result shows that the service application is normal, the service application is obtained. After all business applications are normal, the deployment and online process of the operating system is performed.

需要注意的是,由于在操作系统的测试过程,已经在操作系统运行业务应用,并且应用程度正常运行,因此,在对业务应用进行测试时,测试结果不会出现操作系统异常,从而避免向操作系统开发者提示操作系统异常,也就不需要由操作系统开发者修改操作系统的代码,不会重新执行操作系统的测试过程。It should be noted that during the test process of the operating system, the business application has already been running on the operating system, and the application level is running normally. Therefore, when the business application is tested, the test result will not appear abnormal operating system, thereby avoiding the operation If the system developer prompts that the operating system is abnormal, there is no need for the operating system developer to modify the code of the operating system, and the operating system testing process will not be re-executed.

在操作系统的部署上线过程,可以将正常的操作系统部署到服务器,并且,该服务器可以在该操作系统上运行业务应用1、业务应用2和业务应用3。During the deployment and online process of the operating system, the normal operating system can be deployed to the server, and the server can run the business application 1, the business application 2 and the business application 3 on the operating system.

在上述应用场景下,参见图3所示,为本实施例中提出的操作系统测试方法的流程图,该方法可以应用于操作系统测试设备,该方法可以包括以下步骤:In the above application scenario, see FIG. 3, which is a flow chart of the operating system testing method proposed in this embodiment. The method can be applied to operating system testing equipment, and the method can include the following steps:

步骤301,获取需要运行待测试的操作系统的服务器对应的环境信息。Instep 301, the environment information corresponding to the server that needs to run the operating system to be tested is obtained.

步骤302,根据该环境信息确定需要在该操作系统运行的特定场景的业务应用。其中,上述业务应用可以包括多个应用(即APP)以及所述多个应用的业务行为(如应用的交互、应用的处理等等,对此不做限制)。Step 302 , according to the environment information, determine the business application in a specific scenario that needs to run on the operating system. Wherein, the above-mentioned business application may include multiple applications (ie, APPs) and business behaviors of the multiple applications (such as application interaction, application processing, etc., which are not limited).

例如,假设将操作系统部署到服务器A,则可以获取服务器A的环境信息,即服务器A会运行哪些业务应用,假设服务器A会运行业务应用1-业务应用3,则服务器A的环境信息就是业务应用1-业务应用3,且根据该环境信息确定需要在该操作系统运行的特定场景的业务应用是业务应用1-业务应用3。当然,还可以采用其它方式获得需要在该操作系统运行的业务应用,对此不做限制。For example, assuming that the operating system is deployed to server A, the environment information of server A can be obtained, that is, which business applications server A will run. Assuming that server A will run business application 1-business application 3, the environment information of server A is business Application 1-business application 3, and the business application in a specific scenario that needs to be run on the operating system determined according to the environment information is business application 1-business application 3. Of course, other ways can also be used to obtain business applications that need to run on the operating system, and there is no limitation on this.

在一个例子中,业务应用可以包括:在上一个版本的操作系统中正常运行的业务应用,即在上一个版本的操作系统中,该业务应用是正常的。例如,在开发出第一版本的操作系统A后,业务应用1在操作系统A可以正常运行,即操作系统A是正常的,且业务应用1也是正常的。在开发出第二版本的操作系统B后,获取的是在操作系统A中正常运行的业务应用1,因此,若业务应用1的测试结果为异常,由于业务应用1在操作系统A中正常运行,但是在操作系统B中异常,则可以说明操作系统B存在异常,需要对操作系统B进行修复。In an example, the business application may include: a business application that runs normally in a previous version of the operating system, that is, in the previous version of the operating system, the business application is normal. For example, after the first version of operating system A is developed, business application 1 can run normally on operating system A, that is, operating system A is normal, and business application 1 is also normal. After the second version of operating system B is developed, business application 1 running normally in operating system A is obtained. Therefore, if the test result of business application 1 is abnormal, since business application 1 is running normally in operating system A , but abnormal in the operating system B, it can indicate that there is an abnormality in the operating system B, and the operating system B needs to be repaired.

步骤303,基于该操作系统运行该业务应用,并对该业务应用进行测试。Step 303, run the business application based on the operating system, and test the business application.

例如,可以从代码库中得到操作系统,并将业务应用运行在该操作系统上,并利用该业务应用的测试集对该业务应用进行测试,得到业务应用的测试结果,对此测试过程不做限制。其中,针对该操作系统运行的多个业务应用,只要有一个或者多个业务应用的测试结果为异常,则业务应用的测试结果可以为异常;若所有业务应用的测试结果均为正常,则业务应用的测试结果可以为正常。For example, the operating system can be obtained from the code library, and the business application can be run on the operating system, and the business application can be tested by using the test set of the business application to obtain the test results of the business application. limit. Among them, for multiple business applications running on the operating system, as long as the test results of one or more business applications are abnormal, the test results of the business applications can be abnormal; if the test results of all business applications are normal, the business Applied test results may be normal.

步骤304,根据该业务应用的测试结果确定该操作系统的测试结果。Step 304, determine the test result of the operating system according to the test result of the service application.

在一个例子中,还可以根据该操作系统的测试集对该操作系统进行测试,得到该测试集的测试结果,对此测试过程不做限制;然后,可以根据该业务应用的测试结果和该测试集的测试结果,获得该操作系统的测试结果。In an example, the operating system can also be tested according to the test set of the operating system to obtain the test result of the test set, and there is no limit to this test process; then, according to the test result of the business application and the test Set the test results to obtain the test results of the operating system.

步骤305,判断该操作系统的测试结果是否为正常。如果是,则可以执行步骤306,如果否(即操作系统的测试结果为异常),则可以执行步骤307。Step 305, judging whether the test result of the operating system is normal. If yes, step 306 may be performed, and if no (that is, the test result of the operating system is abnormal),step 307 may be performed.

步骤306,发布该操作系统,并基于发布后的操作系统运行业务应用,并对运行的该业务应用进行测试,从而得到该业务应用的测试结果。Step 306, release the operating system, run a business application based on the released operating system, and test the running business application, so as to obtain a test result of the business application.

参见图2B所示,可以执行操作系统的发布过程、业务应用的测试过程、操作系统的部署上线过程。在操作系统的发布过程,将操作系统发布给各业务应用,各业务应用运行在操作系统上。在业务应用的测试过程,将业务应用运行在操作系统上,利用业务应用的测试集对该业务应用进行测试,得到测试结果;若测试结果为业务应用异常,向业务应用开发者提示业务应用异常,由业务应用开发者修改业务应用的代码,并重新对业务应用进行测试。若测试结果为业务应用正常,则得到该业务应用;在所有业务应用均正常后,则执行操作系统的部署上线过程。在操作系统的部署上线过程,可以将操作系统部署到服务器。As shown in FIG. 2B , the release process of the operating system, the test process of the service application, and the deployment and launch process of the operating system can be performed. In the release process of the operating system, the operating system is released to each business application, and each business application runs on the operating system. In the testing process of the business application, run the business application on the operating system, use the test set of the business application to test the business application, and obtain the test result; if the test result shows that the business application is abnormal, notify the business application developer of the business application exception , the business application developer modifies the code of the business application, and re-tests the business application. If the test result shows that the business application is normal, the business application is obtained; after all the business applications are normal, the deployment and online process of the operating system is executed. During the deployment and online process of the operating system, the operating system can be deployed to the server.

步骤307,向操作系统开发者提示操作系统异常,由操作系统开发者修改操作系统的代码,并基于修改后的操作系统重新执行步骤303,后续过程不再赘述。Instep 307, the operating system developer is notified that the operating system is abnormal, and the operating system developer modifies the code of the operating system, andre-executes step 303 based on the modified operating system, and the subsequent process will not be repeated.

基于上述技术方案,本申请实施例中,在操作系统发布之前,可以根据环境信息确定需要在操作系统运行的业务应用,基于该操作系统运行该业务应用,对该业务应用进行测试,根据该业务应用的测试结果确定操作系统的测试结果。这样,可以在操作系统发布前,发现操作系统与业务应用并不适配,并对操作系统进行修复,能够将业务应用触发的操作系统问题前置,提前发现问题,有效保证操作系统的质量,提高操作系统的稳定性和兼容性,有效地提高解决问题的效率和操作系统发布的稳定性,加快操作系统发布的迭代周期,减少测试时间,可以提高操作系统的测试效率,可以节省测试资源,提高用户体验。可以从操作系统底层软件到上层各业务应用场景的整个软件栈,集成到操作系统的测试过程中,形成一站式的测试流程,提高了发布效率和操作系统软件质量。Based on the above technical solution, in the embodiment of the present application, before the release of the operating system, the business application that needs to be run on the operating system can be determined according to the environmental information, the business application is run based on the operating system, and the business application is tested. The test results of the application determine the test results of the operating system. In this way, before the operating system is released, it can be found that the operating system is not compatible with the business application, and the operating system can be repaired. It can pre-empt the operating system problems triggered by the business application, find problems in advance, and effectively ensure the quality of the operating system. Improve the stability and compatibility of the operating system, effectively improve the efficiency of problem solving and the stability of operating system releases, speed up the iterative cycle of operating system releases, reduce testing time, improve the testing efficiency of operating systems, and save testing resources. Improve user experience. The entire software stack from the underlying software of the operating system to the upper-level business application scenarios can be integrated into the testing process of the operating system to form a one-stop testing process, which improves the release efficiency and the quality of the operating system software.

基于与上述方法同样的申请构思,本申请实施例还提供一种操作系统测试装置,如图4所示,为该装置的结构图,该装置包括:Based on the same application concept as the above method, the embodiment of the present application also provides an operating system testing device, as shown in Figure 4, which is a structural diagram of the device, which includes:

获取模块401,用于在待测试的操作系统发布之前,根据环境信息确定需要在所述操作系统运行的特定场景的业务应用;测试模块402,用于基于所述操作系统运行所述业务应用,对所述业务应用进行测试;确定模块403,用于根据所述业务应用的测试结果确定所述操作系统的测试结果。The obtaining module 401 is used to determine the business application in a specific scenario that needs to be run on the operating system according to the environment information before the operating system to be tested is released; the testing module 402 is used to run the business application based on the operating system, Test the business application; a determination module 403, configured to determine the test result of the operating system according to the test result of the business application.

在一个例子中,所述获取模块401根据环境信息确定需要在所述操作系统运行的业务应用时具体用于:获取需要运行所述操作系统的服务器对应的环境信息;根据所述环境信息确定需要在所述操作系统运行的特定场景的业务应用;其中,所述业务应用包括多个应用以及所述多个应用的业务行为;其中,所述业务应用包括:在上一个版本的操作系统中正常运行的业务应用。In an example, when the obtaining module 401 determines the business application that needs to be run on the operating system according to the environment information, it is specifically used to: obtain the environment information corresponding to the server that needs to run the operating system; A business application in a specific scenario running on the operating system; wherein the business application includes multiple applications and the business behaviors of the multiple applications; wherein the business application includes: running business applications.

基于与上述方法同样的申请构思,本申请实施例还提供一种操作系统测试设备,包括:处理器和机器可读存储介质;其中,所述机器可读存储介质上存储有若干计算机指令,所述处理器执行所述计算机指令时进行如下处理:在待测试的操作系统发布之前,根据环境信息确定需要在所述操作系统运行的特定场景的业务应用;基于所述操作系统运行所述业务应用,对所述业务应用进行测试;根据所述业务应用的测试结果确定所述操作系统的测试结果。Based on the same application idea as the above-mentioned method, the embodiment of the present application also provides an operating system testing device, including: a processor and a machine-readable storage medium; wherein, the machine-readable storage medium stores several computer instructions, so When the processor executes the computer instructions, the following processing is performed: before the release of the operating system to be tested, according to the environment information, the business application in a specific scenario that needs to be run on the operating system is determined; based on the operating system, the business application is run , testing the service application; determining the test result of the operating system according to the test result of the service application.

基于与上述方法同样的申请构思,本申请实施例还提供一种机器可读存储介质,所述机器可读存储介质上存储有若干计算机指令,其中,所述计算机指令被执行时进行如下处理:在待测试的操作系统发布之前,根据环境信息确定需要在所述操作系统运行的特定场景的业务应用;基于所述操作系统运行所述业务应用,对所述业务应用进行测试;根据所述业务应用的测试结果确定所述操作系统的测试结果。Based on the same application concept as the above-mentioned method, the embodiment of the present application also provides a machine-readable storage medium, on which several computer instructions are stored, wherein, when the computer instructions are executed, the following processing is performed: Before the operating system to be tested is released, determine the business application that needs to run in the specific scenario of the operating system according to the environment information; run the business application based on the operating system, and test the business application; according to the business The test results of the application determine the test results of the operating system.

基于与上述方法同样的申请构思,本申请实施例还提供一种操作系统测试装置,所述操作系统测试装置可以包括:获取模块,用于在待测试的操作系统发布之前,根据部署环境信息确定需要在所述操作系统运行的多个业务应用,将业务应用的应用场景前置到所述操作系统的测试环境,作为所述操作系统的测试环境中的测试环节,业务应用的测试集与所述操作系统的测试集形成测试集;业务应用包括多个应用以及多个应用的业务行为;测试模块,用于基于所述操作系统运行所述业务应用、所述业务应用的测试流程;确定模块,用于根据所述业务应用的测试结果确定所述操作系统的测试结果。Based on the same application concept as the above-mentioned method, the embodiment of the present application also provides an operating system testing device, which may include: an acquisition module, used to determine according to the deployment environment information before the operating system to be tested is released For multiple business applications that need to run on the operating system, the application scenarios of the business applications are prepended to the test environment of the operating system as a test link in the test environment of the operating system. The test set of the operating system forms a test set; the business application includes multiple applications and the business behavior of the multiple applications; the test module is used to run the test process of the business application and the business application based on the operating system; the determination module is used to determine the test result of the operating system according to the test result of the service application.

上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。The systems, devices, modules, or units described in the above embodiments can be specifically implemented by computer chips or entities, or by products with certain functions. A typical implementing device is a computer, which may take the form of a personal computer, laptop computer, cellular phone, camera phone, smart phone, personal digital assistant, media player, navigation device, e-mail device, game control device, etc. desktops, tablets, wearables, or any combination of these.

为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。For the convenience of description, when describing the above devices, functions are divided into various units and described separately. Of course, when implementing the present application, the functions of each unit can be implemented in one or more pieces of software and/or hardware.

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。Those skilled in the art should understand that the embodiments of the present application may be provided as methods, systems, or computer program products. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, embodiments of the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) having computer-usable program code embodied therein.

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可以由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。The present application is described with reference to flowcharts and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the present application. It should be understood that each procedure and/or block in the flowchart and/or block diagram, and a combination of procedures and/or blocks in the flowchart and/or block diagram can be realized by computer program instructions. These computer program instructions may be provided to a general purpose computer, special purpose computer, embedded processor, or processor of other programmable data processing equipment to produce a machine such that the instructions executed by the processor of the computer or other programmable data processing equipment produce a An apparatus for realizing the functions specified in one or more procedures of the flowchart and/or one or more blocks of the block diagram.

而且,这些计算机程序指令也可以存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或者多个流程和/或方框图一个方框或者多个方框中指定的功能。Moreover, these computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising instruction means, The instruction means implements the functions specified in one or more procedures of the flowchart and/or one or more blocks of the block diagram.

这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或者其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。These computer program instructions can also be loaded on a computer or other programmable data processing equipment, so that a series of operational steps are performed on the computer or other programmable equipment to produce computer-implemented processing, so that the information executed on the computer or other programmable equipment The instructions provide steps for implementing the functions specified in the flow chart or blocks of the flowchart and/or the block or blocks of the block diagrams.

以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。The above descriptions are only examples of the present application, and are not intended to limit the present application. For those skilled in the art, various modifications and changes may occur in this application. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application shall be included within the scope of the claims of the present application.

Claims (13)

CN201810437553.1A2018-05-092018-05-09 An operating system testing method, device and equipment thereofActiveCN110471828B (en)

Priority Applications (1)

Application NumberPriority DateFiling DateTitle
CN201810437553.1ACN110471828B (en)2018-05-092018-05-09 An operating system testing method, device and equipment thereof

Applications Claiming Priority (1)

Application NumberPriority DateFiling DateTitle
CN201810437553.1ACN110471828B (en)2018-05-092018-05-09 An operating system testing method, device and equipment thereof

Publications (2)

Publication NumberPublication Date
CN110471828A CN110471828A (en)2019-11-19
CN110471828Btrue CN110471828B (en)2023-05-26

Family

ID=68503683

Family Applications (1)

Application NumberTitlePriority DateFiling Date
CN201810437553.1AActiveCN110471828B (en)2018-05-092018-05-09 An operating system testing method, device and equipment thereof

Country Status (1)

CountryLink
CN (1)CN110471828B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN111611159A (en)*2020-05-132020-09-01麒麟软件有限公司Linux operating system test authentication flow management method
CN115952080B (en)*2022-12-052023-08-29安芯网盾(北京)科技有限公司Agent limit condition stability test method and device

Citations (3)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
WO2009002997A2 (en)*2007-06-262008-12-31Topcoder, Inc.System and method for distributed software testing
CN104182343A (en)*2014-08-222014-12-03工业和信息化部电子第五研究所Performance test method and device for operating system
CN104360952A (en)*2012-03-022015-02-18北京奇虎科技有限公司 A software testing system and method

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US8458666B2 (en)*2008-10-222013-06-04Oracle International CorporationMethods and systems for implementing a test automation framework for testing software applications on UNIX/LINUX based machines

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
WO2009002997A2 (en)*2007-06-262008-12-31Topcoder, Inc.System and method for distributed software testing
CN104360952A (en)*2012-03-022015-02-18北京奇虎科技有限公司 A software testing system and method
CN104182343A (en)*2014-08-222014-12-03工业和信息化部电子第五研究所Performance test method and device for operating system

Also Published As

Publication numberPublication date
CN110471828A (en)2019-11-19

Similar Documents

PublicationPublication DateTitle
US11126448B1 (en)Systems and methods for using dynamic templates to create application containers
CN109508178B (en)Program development method and device
CN106708704B (en)Method and device for classifying crash logs
CN111782207B (en)Task stream code generation method, device, equipment and storage medium
CN109902005B (en)Automatic testing method and system
US10592703B1 (en)Method and system for processing verification tests for testing a design under test
US9513889B2 (en)System and method of automating installation of applications
CN111813379B (en)Application deployment method and device, electronic equipment and computer readable storage medium
WO2022179493A1 (en)Exception handling method and relevant apparatus
WO2015039793A1 (en)Derivation of generalized test cases
CN110968333B (en)Configuration information replacement method and device, machine-readable storage medium and processor
CN110471828B (en) An operating system testing method, device and equipment thereof
CN113282517A (en)Quality evaluation system of intelligent contract code
CN106649114A (en)Method and device for positioning application program crash
CN112988460A (en)Data backup method and device for virtual machine
CN114791884A (en)Test environment construction method and device, storage medium and electronic equipment
CN113742224A (en)Test system, method, device, computer equipment and storage medium
CN109446091B (en)Business entity object testing method and device
CN114691496B (en) Unit testing method, device, computing equipment and medium
US9792202B2 (en)Identifying a configuration element value as a potential cause of a testing operation failure
CN117149667A (en)Abnormal data acquisition method, device, equipment and computer readable storage medium
Park et al.Self-adaptive middleware framework for internet of things
CN111367796B (en)Application program debugging method and device
CN113791941B (en)Method for automatically testing stability of OpenStack cluster and application
CN106815136B (en)Unit testing method and device

Legal Events

DateCodeTitleDescription
PB01Publication
PB01Publication
SE01Entry into force of request for substantive examination
SE01Entry into force of request for substantive examination
GR01Patent grant
GR01Patent grant

[8]ページ先頭

©2009-2025 Movatter.jp