CN110727575B - Information processing method, system, device and storage medium - Google Patents

Information processing method, system, device and storage medium Download PDF

Info

Publication number
CN110727575B
CN110727575B CN201810785562.XA CN201810785562A CN110727575B CN 110727575 B CN110727575 B CN 110727575B CN 201810785562 A CN201810785562 A CN 201810785562A CN 110727575 B CN110727575 B CN 110727575B
Authority
CN
China
Prior art keywords
test
test case
operated object
characteristic value
file
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
CN201810785562.XA
Other languages
Chinese (zh)
Other versions
CN110727575A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201810785562.XA priority Critical patent/CN110727575B/en
Publication of CN110727575A publication Critical patent/CN110727575A/en
Application granted granted Critical
Publication of CN110727575B publication Critical patent/CN110727575B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The application provides an information processing method, a system, a device and a storage medium, wherein the method comprises the following steps: acquiring an operated object identifier corresponding to an operation log, and determining the attribute of the operated object according to the operated object identifier; determining a first characteristic value and a second characteristic value of the attribute; when the second characteristic value does not exist in the preset characteristic values, generating a test case file according to the operation log and the first characteristic value; and storing the test case file and storing the second characteristic value in a preset characteristic value. By applying the technical scheme, the testing efficiency of the program can be improved.

Description

Information processing method, system, device and storage medium
Technical Field
The present application relates to the field of information technology, and in particular, to an information processing method, system, apparatus, and storage medium.
Background
With the development of information technology, more and more users realize online activities through programs, such as online video watching, online payment, online shopping and the like, and with more and more requirements of users, program developers are required to repair and upgrade the programs for many times, the programs are more and more complex, in order to enable the users to obtain better use experience, testers are required to test the repaired or upgraded programs, but the test efficiency is reduced due to the fact that the complexity of the programs is more and more large, and how to enhance the test efficiency is the key for solving the problems.
Disclosure of Invention
The application provides the following technical scheme, and the testing efficiency of the program can be improved.
The embodiment of the application provides an information processing method, which comprises the following steps: acquiring an operated object identifier corresponding to an operation log, and determining the attribute of the operated object according to the operated object identifier; determining a first characteristic value and a second characteristic value of the attribute; when the second characteristic value does not exist in the preset characteristic values, generating a test case file according to the operation log and the first characteristic value; and storing the test case file and storing the second characteristic value in a preset characteristic value.
In some examples, the operated object has a plurality of preset operation steps, and each operation step corresponds to an operation log; the obtaining of the operated object identifier corresponding to the operation log includes: sending an acquisition request to an operation log server, wherein the acquisition request carries information indicating that operated object identifiers corresponding to a plurality of operation logs are acquired, and the operation logs correspond to the preset operation steps; and receiving the operated object identification returned by the operation log server in response to the acquisition request.
In some examples, the operated object has a plurality of preset operation steps, and each operation step corresponds to an operation log; the obtaining of the operated object identifier corresponding to the operation log includes: sending a request for acquiring the operation log to an operation log server; receiving the operation log returned by the operation log server in response to the request for obtaining the operation log; acquiring a plurality of operation logs corresponding to the preset operation steps from the acquired operation logs; and determining the operated object identifications corresponding to the plurality of operation logs.
In some examples, the determining the attribute of the operated object according to the operated object identification includes: and determining the preset attribute of the operated object corresponding to the operated object identifier according to the corresponding relation between the operated object identifier and the operated object.
In some examples, the determining the first characteristic value and the second characteristic value of the characteristic field includes: determining the value of at least one operated object attribute; taking the value as a first characteristic value; and determining the second characteristic value according to the first characteristic value.
In some examples, the generating a test case file according to the operation log and the first feature value includes: merging the operation log and the first characteristic value into at least one file; and taking the at least one file as the test case file.
In some examples, the storing the test case file comprises: storing the test case file into a preset storage area; wherein the method further comprises: and acquiring the test case file from the preset storage area, and testing the branch code according to the test case file.
In some examples, the method further comprises: receiving a message which is sent in the preset storage area and indicates that a branch code is received, wherein the message carries an acquisition address of the branch code; acquiring the branch code according to the acquisition address; adding the obtained branch codes into the main codes, compiling the updated main codes and generating a compiled file; and sending the compiled file to test equipment, and acquiring the test case to test the compiled file.
In some examples, the compiling file is sent to a testing device, the testing instance is obtained, and a test sending instruction is carried out on the compiling file to the testing device, so that the testing device deploys the compiling file; acquiring and operating the test case file and the test driver according to the identification of the functional module in the main code where the branch code is located, so as to send a test request to the test equipment; wherein the method further comprises: and receiving a test result sent by the test equipment in response to the test request, and displaying the test result.
In some examples, the method further comprises: when the test result is received, sending the test result; and when the deployment failure is monitored, sending a message indicating the deployment failure.
In some examples, the compiling the updated subject code comprises: compiling the functional module corresponding to the identifier according to the identifier of the functional module in the main code where the branch code is located; wherein the method further comprises: when the compilation fails, a message indicating that the compilation failed is issued.
In some examples, the method further comprises: and acquiring and storing the information representing the identity and the safety verification information so as to enable the information representing the identity and the safety verification information to be carried when a test request is sent to the test equipment.
In some examples, obtaining and storing information representing an identity and security verification information includes: sending a login request to a server providing login service; receiving the information representing the identity and security verification information sent by the server for providing the login service in response to the login request; and storing the information representing the identity identification and the security verification information into a database.
The example of the present application further provides a test system, the system including: the integrated service module and the test case generating module; the test case generation module is used for acquiring an operated object identifier corresponding to the operation log and determining the attribute of the operated object according to the operated object identifier; determining a first characteristic value and a second characteristic value of the attribute; when the second characteristic value does not exist in the preset characteristic values, generating a test case file according to the operation log and the first characteristic value; storing the test case file and setting the second characteristic value in a stored characteristic value; the integrated service module receives a message which is sent by the code management module and indicates that a branch code is received, wherein the message carries an acquisition address of the branch code; acquiring the branch code according to the acquisition address; adding the obtained branch codes into the main codes, compiling the updated main codes and generating a compiled file; and sending the compiled file to test equipment, and acquiring the test case to test the compiled file.
In some examples, the system further comprises: a code management module; the code management module receives the test case file and sends a message indicating that the test case file is received to the integrated service module, wherein the message carries an acquisition address of the test case; receiving the branch code, and sending a message indicating that the branch code is received to the integrated service module, wherein the message carries an acquisition address of the branch code; the integrated service module receives a message which is sent by the code management module and indicates that a test case file is received; and acquiring the test case file according to the acquisition address of the test case, and testing the branch code according to the test case file.
In some examples, the integration service module sends an instruction to the test equipment to cause the test equipment to deploy the compiled file; acquiring and operating the test case file and the test driver according to the identification of the functional module in the main code where the branch code is located, so as to send a test request to the test equipment; and receiving a test result sent by the test equipment in response to the test request, and displaying the test result.
In some examples, the integration service module, upon receiving the test result, issues the test result; and when the deployment failure is monitored, sending a message indicating the deployment failure.
In some examples, the integrated service module compiles a functional module corresponding to the identifier according to the identifier of the functional module in the main code where the branch code is located; when the compilation fails, a message indicating that the compilation failed is issued.
In some examples, the system further comprises: a login module; the login module acquires and stores information representing the identity and security verification information so that the information representing the identity and the security verification information are carried when a test request is sent to the test equipment.
In some examples, the login module sends a login request to a server providing a login service; receiving the information representing the identity and security verification information sent by the server for providing the login service in response to the login request; and storing the information representing the identity identification and the security verification information into a database.
The example of the present application also proposes an information processing apparatus, the apparatus including: the determining module is used for acquiring an operated object identifier corresponding to the operation log and determining the attribute of the operated object according to the operated object identifier; the determining module is used for determining a first characteristic value and a second characteristic value of the attribute; the generating module is used for generating a test case file according to the operation log and the first characteristic value when the second characteristic value does not exist in a preset characteristic value; and the storage module is used for storing the test case file and storing the second characteristic value in a preset characteristic value.
In some examples, the operated object has a plurality of preset operation steps, and each operation step corresponds to an operation log; wherein the determining module comprises: a sending unit, configured to send an acquisition request to a server, where the acquisition request carries information indicating that an operated object identifier corresponding to a plurality of operation logs is acquired, and the operation logs correspond to the preset operation steps; and the receiving unit is used for receiving the operated object identification returned by the server in response to the acquisition request.
In some examples, the operated object has a plurality of preset operation steps, and each operation step corresponds to an operation log; wherein the determining module comprises: a sending unit that sends a request for acquiring the operation log to a server; a receiving unit that receives the operation log returned by the server in response to the request for obtaining the operation log; an acquisition unit that acquires a plurality of operation logs corresponding to the plurality of preset operation steps from the acquired operation logs; and determining the operated object identifications corresponding to the plurality of operation logs.
In some examples, the determining module includes: the first determining unit is used for determining the preset attribute of the operated object corresponding to the operated object identification according to the corresponding relation between the operated object identification and the operated object.
In some examples, the determining module includes: the second determining unit is used for determining the value of at least one operated object attribute; taking the value as a first characteristic value; and determining the second characteristic value according to the first characteristic value.
In some examples, the generating module includes: a merging unit merging the operation log and the first characteristic value into at least one file; and the generating unit is used for taking the at least one file as the test case file.
In some examples, the storage module stores the test case file into a preset storage area; the obtaining module obtains the test case file from the preset storage area, and tests the branch code according to the test case file.
In some examples, the receiving module receives a message indicating that a branch code is received, where the message carries an acquisition address of the branch code, where the message is sent from the preset storage area; the acquisition module acquires the branch code according to the acquisition address; the apparatus further comprises: the adding module is used for adding the obtained branch codes into the main codes and compiling the updated main codes to generate compiled files; and the sending module is used for sending the compiled file to test equipment and acquiring the test case so as to test the compiled file.
In some examples, the sending module includes a sending unit that sends an instruction to the testing device to cause the testing device to deploy the compiled file; the acquisition unit acquires and runs the test case file and the test driver according to the identification of the functional module in the main code where the branch code is located so as to send a test request to the test equipment; and the receiving module is used for receiving a test result sent by the test equipment in response to the test request and displaying the test result.
In some examples, the device further comprises: the sending module is used for sending the test result when receiving the test result; and when the deployment failure is monitored, sending a message indicating the deployment failure.
In some examples, the adding module compiles a functional module corresponding to the identifier according to the identifier of the functional module in the main code where the branch code is located; and the sending module sends a message indicating that the compiling fails when the compiling fails.
In some examples, the obtaining module obtains and stores the information representing the identity and the security verification information, so that the information representing the identity and the security verification information are carried when the test request is sent to the test device.
In some examples, the obtaining module includes: a sending unit that sends a login request to a server providing a login service; the receiving unit is used for receiving the information which represents the identity and is sent by the server for providing the login service in response to the login request and the security verification information; and the storage unit is used for storing the information representing the identity and the security verification information into a database. The examples of this application also provide a computing device comprising a memory, a processor, and a computer program stored on the memory and run on the processor; the processor, when executing the computer program, implements the method described above.
The present examples also provide a storage medium storing one or more programs, the one or more programs comprising instructions, which when executed by a computing device, cause the computing device to perform the above-described method.
By applying the technical scheme of the invention, the test cases can be automatically generated, a large number of test cases are continuously accumulated, the cost and the labor of related personnel for manual maintenance and manual updating of the test cases are saved, the test efficiency and the test coverage rate of the program codes are improved, the test cases generated by operating the logs can ensure that the codes newly added into the program cannot damage the original code functions in the program, the introduction of new program bugs is prevented, and the code quality is ensured.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to these drawings without creative efforts.
FIG. 1 is a schematic diagram of a system architecture to which an information processing method according to an embodiment of the present application is applied;
FIG. 2A is a flow chart of an information processing method according to an embodiment of the present application;
FIG. 2B is a flow chart of an information processing method according to an embodiment of the present application;
FIG. 2C is a flow chart of an information processing method according to an embodiment of the present application;
FIG. 3 is a flow diagram illustrating interaction between an implementation of an instance generation module according to an embodiment of the present application;
FIG. 4 is a schematic diagram of a test system according to an example of the present application;
FIG. 5 is an interaction diagram illustrating an implementation of an integrated services module according to an example of the present application;
FIG. 6 is a schematic diagram of an information processing apparatus according to an example of the present application;
fig. 7 is a schematic diagram of the hardware of a computing device according to an example of the present application.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
For simplicity and clarity of description, the invention will be described below by describing several representative embodiments. The numerous details of the examples are merely provided to assist in understanding the inventive arrangements. It will be apparent, however, that the invention may be practiced without these specific details. Some embodiments are not described in detail, but rather are merely provided as frameworks, in order to avoid unnecessarily obscuring aspects of the invention. Hereinafter, "including" means "including but not limited to", "according to … …" means "at least according to … …, but not limited to … … only". When the number of one component is not particularly specified hereinafter, it means that the component may be one or more, or may be understood as at least one.
In the program development process, the possibility of introducing code defects in the development process is increased due to the expansion of the project scale and the increase of the code complexity, the traditional unit test and the UI-based test are only generally used for new codes and functions, and the risk of software development is increased due to the fact that regression tests are performed on the existing codes and functions less or the tests are incomplete.
The automatic test of the technical scheme has the advantages that correct and wrong test cases can be continuously accumulated in the evolution process of the test system, and the newly introduced codes can not damage the existing functions. The existing test scheme requires a relatively large number of software developers to intervene, including development of system codes and test cases, code compilation, deployment, manual execution of the test cases, observation of test results, and the like, so that the developers need to expend great efforts to complete testing of new codes.
Fig. 1 is a schematic diagram showing a system 100 to which the information processing method of the present example is applied. The system 100 includes an integration server 101, a test case generation server 103, a code repository 104, test equipment 105, and a network 102.
The integration server 101 is installed with application server software for compiling and deploying a program to be tested (such as a code to be tested or a code to be tested), that is, the program to be tested, and running a test case, and the integration server 101 receives a message from the code repository 104 to obtain the test case or an updated code, stores the test case, merges the updated code into a main code, compiles the program to be tested composed of the updated code and a related code, and deploys the compiled program to the test equipment 104, thereby completing a test. After the deployment of the program to be tested is completed, the corresponding test case is run, and a data request is sent to the test device 104, so that the program to be tested running on the test device 104 processes the data request and returns feedback data to the integration server 101.
The test case generation server 103 is installed with application server software for generating a test case, and the test case generation server 103 may determine an operated object according to operation log information sent by the operation log database, generate a test case according to an operation log of the operated object, and send the test case to the code repository 104.
The code repository 104 may be a code management server such as a GitLab, which is installed with application service software for managing code, receives test cases sent by the test case generation server 103 through the network 102 and updated code sent by developers through the code clients and the network 102, and sends a message to the integration server 101 that updated code or test cases are received.
The test device 105 may be a terminal device, and refers to a device having a data calculation processing function, including but not limited to a PC computer (with a communication module installed) and the like. The terminal device is provided with an operating system, including but not limited to: windows operating system, Linux operating system, and so on.
The test equipment 105 receives the instruction of the integration server 101 through the network 102, receives the program to be tested, the remote command service is deployed on the test equipment 105, the instruction of the integration server 101 is received through the network 102, the received program to be tested is deployed in the operating environment of the test equipment 105, the data sending request of the integration server 101 is received, the program to be tested processes the data request and returns the data to the integration server 101, and therefore the test of the program to be tested is completed.
The network 102 may be a wired network or a wireless network.
Based on the system 100, the example of the present application proposes an information processing method applied to an entity server, which may include functions of the test case generation server 103 and the integration server 101. As shown in fig. 2A, the method 200 includes the steps of:
step 201: obtaining an operated object identifier corresponding to the operation log, and determining the attribute of the operated object according to the operated object identifier.
In some examples, the determining the attribute of the operated object according to the operated object identification includes: and determining the attribute of the operated object corresponding to the operated object identifier according to the corresponding relation between the operated object identifier and the operated object.
The method for obtaining the operated object identifier corresponding to the operation log may include the following two ways:
the operated object is provided with a plurality of preset operation steps, and each operation step corresponds to an operation log; the obtaining of the operated object identifier corresponding to the operation log includes: sending an acquisition request to a server, wherein the acquisition request carries operated object identifiers corresponding to a plurality of operation logs, and the operation logs correspond to the preset operation steps; and receiving the operated object identification returned by the server in response to the acquisition request.
The operated object is provided with a plurality of preset operation steps, and each operation step corresponds to an operation log; the obtaining of the operated object identifier corresponding to the operation log includes: sending a request for acquiring the operation log to a server; receiving the operation log returned by the server in response to the request for obtaining the operation log; acquiring a plurality of operation logs corresponding to the preset operation steps from the acquired operation logs; and determining the operated object identifications corresponding to the plurality of operation logs.
Step 202: a first eigenvalue and a second eigenvalue of the property are determined.
In some examples, as shown in fig. 2B, step 2021: the determining a first feature value and a second feature value of the feature field includes: determining a value of at least one of the attributes; taking the value as a first characteristic value; and determining the second characteristic value according to the first characteristic value.
Step 203: and when the second characteristic value does not exist in the preset characteristic values, generating a test case file according to the operation log and the first characteristic value.
In some examples, the preset feature value is obtained from the operation log database, and when the second feature value does not exist in the preset feature value, it is considered that there is no problem of duplication between the generated test case and the existing test case, and the operation log and the first feature value may be synthesized to generate the test case file.
Generating a test case file according to the operation log and the first characteristic value comprises the following steps: merging the operation log and the first characteristic value into at least one file; and taking the at least one file as the test case file.
Step 204: and storing the test case file and storing the second characteristic value in a preset characteristic value.
In some examples, as shown in fig. 2B, step 2041: the storing the test case file comprises: and storing the test case file into a preset storage area. And after the test case is generated, storing the second characteristic value into the operation log database so as to determine whether the operation log database exists or not according to the corresponding second characteristic value when a new test case is generated subsequently, thereby preventing the test case from being generated repeatedly.
In some examples, as shown in fig. 2C, the operated object has a plurality of preset operation steps, and each operation step corresponds to an operation log; wherein, step 201: the obtaining of the operated object identifier corresponding to the operation log includes: step 2011: sending an acquisition request to a server, wherein the acquisition request carries information indicating that operated object identifiers corresponding to a plurality of operation logs are acquired, and the operation logs correspond to the preset operation steps; and receiving the operated object identification returned by the server in response to the acquisition request.
The server may be an operation log database server.
In this step, the operated object has a plurality of preset operation steps, each operation step corresponds to an operation log, or a complete operation step of the operated object is preset in the server, and if the operated object creates an advertisement for a friend circle, a complete operation step of a complete advertisement is completed, including creating a promotion plan, creating a target, creating an advertisement group, creating a material and submitting the material, then five operation logs should be also corresponded.
For example, as described above, as shown in fig. 3, a user may access a resource of a service server through a web browser (i.e., a client) to perform an operation, such as an operation of creating a promotion plan for an advertisement, when the web browser communicates with the service server, the web browser sends an operation request, such as an operation request of creating a promotion plan, to the service server, and the web browser sends the operation request to a service logic layer of the service server through a common Gateway interface cgi (common Gateway interface), that is, step 301: the web browser sends the operation request to a common gateway interface; step 302: the common gateway interface CGI sends an operation request to a service logic layer of a service server; step 303: the common gateway interface sends the operation request to the operation log server, and the operation log server extracts the field of the operation log according to the received operation request to generate the operation log, step 304: the oplog is stored in an oplog database (i.e., an oplog database server). Step 305: the test case generation server 103 sends an acquisition request to an operation log database (i.e., a server), where the acquisition request carries information indicating operated object identifiers corresponding to a plurality of operation logs within an acquisition preset time (e.g., the previous day), and the server searches for a data result corresponding to the information, i.e., an operated object identifier, according to the information carried by the acquisition request, e.g., displays a plurality of operated object IDs in a list form. Step 306: the server sends the found data result to the test case generation server 103.
The fields of the operation log may include, but are not limited to: identity information of an operator, name of an accessed interface, name of a module to which the interface belongs, object identification (e.g., id) of an operation, address of the interface (e.g., url), HTTP request parameter, HTTP response parameter.
It should be noted that the operation request in this example is a write operation request, because most of the tested interfaces ensure the correctness of the write operation request of the user, and the read operation request has no great influence even if the read operation request fails.
In some examples, the operated object has a plurality of preset operation steps, and each operation step corresponds to an operation log; the obtaining of the operated object identifier corresponding to the operation log includes: sending a request for acquiring the operation log to a server; receiving the operation log returned by the server in response to the request for obtaining the operation log; acquiring a plurality of operation logs corresponding to the preset operation steps from the acquired operation logs; and determining the operated object identifications corresponding to the plurality of operation logs.
In this step, the operated object has a plurality of preset operation steps, each operation step corresponds to an operation log, and may be a complete operation step that the operated object has been preset in the test case generation server 103.
For example, according to the foregoing, the test case generation server 103 sends a request for obtaining an operation log for a preset time (e.g., the previous day) to the operation log database (i.e., the server), and the server sends the operation log for the previous day to the test case generation server 103. When the test case generation server 103 receives the operation log, it searches for an operated object identifier that meets a preset condition from the operation log, where the preset condition is a plurality of operation logs corresponding to a plurality of preset operation steps having one operated object, thereby determining the operated object identifier.
In some examples, the determining the attribute of the operated object according to the operated object identification includes: and determining the attribute of the operated object corresponding to the operated object identifier according to the corresponding relation between the operated object identifier and the operated object.
The attribute is a feature field of the operated object, for example, when an advertisement is created in a friend group, the attribute is a promotion plan type of a promotion plan layer (the type may be a contract or a bid), a fee deduction type of an advertisement group layer (the type may be a fee deduction by click or a fee deduction by exposure), a commodity type (the type may be an external link (external link), a public number attention, or an ios (apple operating system) and/or android (android operating system) application promotion), a specification type of a plain text layer (the type may be different material presentation modes corresponding to each specification), and the like.
For example, according to the foregoing, the attribute of each operated object is determined, and the operated object is searched according to the operated object identifier, so that the attribute is determined.
In some examples, as shown in fig. 2B, step 2021: the determining a first feature value and a second feature value of the feature field includes: determining the value of at least one operated object attribute; taking at least one of the values as a first characteristic value; and determining the second characteristic value according to the first characteristic value.
For example, according to the foregoing, when the operated object creates an advertisement for a friend circle, the characteristic fields of the operated object are that the attribute is a promotion plan type of a promotion plan layer (the type may be a contract or a bid), a fee deduction type of an advertisement group layer (the type may be a fee deduction by click or a fee deduction by exposure), a commodity type (the type may be an external link (external link), a public number attention, or an ios (apple operating system) and/or android (android operating system) application promotion), a specification type of a plain text layer (the type may be a material presentation mode in which each specification corresponds to a different one), and the attribute values are determined to be a contract value, a fee deduction by click, a public number attention value, and a rectangular presentation mode value, respectively; and storing the characteristic field and the value in a key-value form, determining a first characteristic value similar to a characteristic character string in an http request parameter format, and calculating the first characteristic value according to a hash algorithm to obtain a second characteristic value, wherein the hash algorithm can be an MD5 algorithm.
In some examples, as shown in fig. 2B, step 2041: the storing the test case file comprises: and storing the test case file into a preset storage area. Wherein the method 200 further comprises: and acquiring the test case file from the preset storage area, and testing the branch code according to the test case file.
Wherein, the preset storage area may be a code warehouse.
For example, according to the foregoing, the preset feature value is obtained from the operation log database, and when the second feature value does not exist in the preset feature value, it is considered that there is no problem of duplication between the generated test case and the existing test case, step 307: and synthesizing the operation log and the first characteristic value to generate a test case file. Step 308: and sending the generated test case file to a code warehouse. The generated stored test case file may be retrieved from a code repository and the test code may be tested according to the test case file.
It should be noted that the test case file may be a file, where the file includes the first feature value and a plurality of operation logs, and the operation logs belong to a plurality of corresponding operation steps of an operated object.
Further, when the second feature value exists in the preset feature values, the operation instance is not generated.
In addition, the generated test case file cannot be used in a simple direct playback manner, and the test driver in the integrated service module can complete parameter replacement of the test case in the test case file in the actual automatic test process according to the service characteristics, namely the application scenario. Similarly, taking a creation flow of creating an advertisement by a friend circle as an example, one of the most important parameters throughout the whole flow is a promotion plan ID, the ID is obtained when a promotion plan is created, and all subsequent requests need to be accompanied by the parameter as an operation object identifier, so that the same operation is performed and the operation object identifier is set in the automatic test process.
In some examples, the method 200 further comprises: receiving a message which is sent in the preset storage area and indicates that a branch code is received, wherein the message carries an acquisition address of the branch code; acquiring the branch code according to the acquisition address; adding the obtained branch codes into the main codes, compiling the updated main codes and generating a compiled file; and sending the compiled file to test equipment, and acquiring the test case to test the compiled file.
In some examples, the sending the compiled file to a testing device and obtaining the test case to test the compiled file includes: sending an instruction to the test equipment to enable the test equipment to deploy the compiled file; acquiring and operating the test case file and the test driver according to the identification of the functional module in the main code where the branch code is located, so as to send a test request to the test equipment; wherein the method 200 further comprises: and receiving a test result sent by the test equipment in response to the test request, and displaying the test result.
For example, according to the foregoing, a user accesses the code repository through a client, the client submits a branch code to the code repository through a Push or a Merge mode, after receiving the branch code, the code repository sends a message indicating that the branch code is received to a webhook interface (web hook interface), the webhook interface sends the received message to an entity server, in particular, a project work area unit in an integration service module in the entity server, and the project work area unit obtains the branch code through the Push mode according to an obtaining address in the message.
When a project working area unit in the integrated service module receives the branch code, the branch code is sent to a construction unit in the integrated service module, the construction unit merges the branch code to a corresponding trunk code, after merging, the construction unit can find a corresponding functional module according to an identifier carried by the branch code when submitting the branch code to the code management module, and compile the functional module, and when compiling is successful, a deployment flow is entered. Wherein the identifier is represented as an identifier of a functional module to which the branch code belongs.
When the integrated service module, particularly the building unit in the integrated service module, compiles the functional module successfully, the building unit sends one or more compiled functional modules to the deployment unit in the integrated service module, and sends the functional module to the test equipment through the deployment unit, for example, the test machine, the deployment unit receives the one or more compiled functional modules sent by the building unit, the deployment unit uploads the one or more compiled functional modules to the test machine through an rsync command, sends deployment and restart commands to the remote command service on the test machine, and then completes the deployment of the one or more compiled functional modules on the test machine and restarts the one or more compiled functional modules through the remote command service deployed on the test machine, thereby performing the test. When all functional modules that need to be deployed on the tester are successfully deployed and restarted, the integrated service module 401, in particular the test unit, selecting a test case file and a test driver corresponding to the identifier according to the identifier of the functional module, reading the test case file by the test driver, acquiring a required http parameter, constructing an http request, sending the constructed http request to a tester through a web service, when the deployment function module in the tester receives the http request, the http request is processed, namely responding the http request to feed back information or data, the functional module sends the fed back information or fed back data to the integrated service module, particularly, when the test unit receives the feedback information or the feedback data, the integrated service module displays the feedback information or the feedback data, that is, displays the test result.
It should be noted that the instant message communication form may be an account of the associated instant message communication client, and the notification unit sends an instant message to the account, for example, sends an instant message to the associated qq number.
In some examples, the compiling the updated subject code comprises: compiling the functional module corresponding to the identifier according to the identifier of the functional module in the main code where the branch code is located; wherein the method 200 further comprises: when the compilation fails, a message indicating that the compilation failed is issued.
For example, according to the foregoing, when the compiling fails, such as a syntax error, and the compiling fails, the building unit sends a message indicating the building failure or a message indicating the compiling failure to the notification unit, and the notification unit notifies the code developer in an email form or an instant message communication form after receiving the message, that is, sends a message indicating the compiling failure to a corresponding communication client (e.g., an email client or a chat social client), so that the code developer can handle the problem of the compiling failure.
It should be noted that, after the integrated service module receives the test case file, the test case file is stored.
In some examples, the method 200 further comprises: when the test result is received, sending the test result; and when the deployment failure is monitored, sending a message indicating the deployment failure.
For example, according to the foregoing, after the test is completed, the test unit in the integrated service module receives the feedback information or the feedback data, the test unit sends the feedback information or the feedback data, that is, the test result, to the notification unit, and the notification unit sends the test result to the corresponding client, such as the mail client and the instant messaging client, in a mail form or in an instant messaging form, so as to notify the code developer of the test result, so that the code developer can process the problem in the test result.
When the test equipment fails to deploy the functional modules, if one or more functional modules are not deployed on the test equipment, the notification unit notifies the code developer of the failure in deployment in an email form or an instant message communication form, so that the code developer can process the problem of the failure in deployment and terminate the automatic test.
In some examples, the method 200 further comprises: and acquiring and storing the information representing the identity and the safety verification information so as to enable the information representing the identity and the safety verification information to be carried when a test request is sent to the test equipment.
Wherein the acquiring and storing information representing an identity and security verification information comprises: sending a login request to a server providing login service; receiving the information representing the identity and security verification information sent by the server for providing the login service in response to the login request; and storing the information representing the identity identification and the security verification information into a database.
Wherein, the information representing the identity is a cookie field.
The security verification information is a token field for preventing CSRF attack.
For example, according to the foregoing, a cookie field related to the user identity and a token field for preventing CSRF attack in an HTTP response are acquired for an account every day by calling a public platform login interface, and the account login state information (e.g., the cookie field and the token field for preventing CSRF attack) is written into the database; when the automatic test driver is executed, the login information is read from the database according to the account number, the login information is placed in the http request, and then the http request of each test is sent to finish the test. It should be noted that, in this example, the integration service module may correspond to the integration server 101.
Wherein, the integration server 101 may send a login request to the server providing the login service; receiving the information representing the identity and security verification information (such as a cookie field and a token field for preventing CSRF attack) sent by the server for providing the login service in response to the login request; information representing the identity and security verification information is stored in a database (i.e., the account login state information (e.g., cookie field and token field for CSRF attack protection) is written into the database).
The workload of a developer for maintaining the test cases can be greatly reduced by automatic test case generation, and the requests which pass user verification in the network are used for automatic test, so that the new codes can be greatly ensured not to damage the existing functions, and new bug bugs are introduced, thereby ensuring the code quality.
Based on the above example, the present application provides a testing system, as shown in fig. 4, which can be applied to a system composed of servers, where the testing system 400 includes: an integration services module 401 and a test case generation module 402.
The test case generation module 402 obtains an operated object identifier corresponding to the operation log, and determines an attribute of the operated object according to the operated object identifier.
In some examples, the test case generating module 402 determines, according to the correspondence between the operated object identifier and the operated object, an attribute of the operated object corresponding to the operated object identifier
The test case generation module 402 determines a first characteristic value and a second characteristic value of the attribute.
In some examples, the test case generating module 402 determines a value of at least one attribute of the operated object; taking at least one of the values as a first characteristic value; and determining the second characteristic value according to the first characteristic value.
The test case generating module 402 generates a test case file according to the operation log and the first feature value when the second feature value does not exist in the preset feature value.
In some examples, the test case generating module 402 obtains a preset feature value from the operation log database, and when the second feature value does not exist in the preset feature value, it is considered that there is no problem of duplication between the generated test case and the existing test case, and then the operation log and the first feature value may be synthesized to generate the test case file.
The test case generation module 402, which combines the operation log and the first feature value into at least one file; and taking the at least one file as the test case file.
The test case generating module 402 stores the test case file and stores the second feature value in a preset feature value.
In some examples, the test case generation module 402 stores the test case file in a code management module, so that the integration service module 401 reads the test case file and tests the test code according to the test case file. And after the test case is generated, storing the second characteristic value into the operation log database so as to determine whether the corresponding second characteristic value exists in the operation log database when a new test case is generated subsequently, thereby preventing the test case from being generated repeatedly.
It should be noted that, since the specific execution steps of the test case generating module 402 have been described in detail in the foregoing, detailed description thereof is omitted here.
The integrated service module 401 receives a message indicating that a branch code is received, which is sent by the code management module, where the message carries an acquisition address of the branch code.
In some examples, the test system 400 further comprises: a code management module; the code management module receives the branch code, and sends a message indicating that the branch code is received to the integration service module 401, where the message carries an acquisition address of the branch code.
The integration service module 401 obtains the branch code according to the obtaining address.
In some examples, the test system 400 further comprises: a code management module; the code management module receives the branch code and sends a message indicating that the branch code is received, wherein the message carries an acquisition address of the branch code; the integrated service module 401 receives a message sent by the code management module and indicating that a branch code is received; and acquiring the branch code according to the acquisition address of the branch code.
The integration service module 401 adds the obtained branch code to the main code, and compiles the updated main code to generate a compiled file.
In some examples, the integration service module 401 merges the branch code into the main code, and compiles the functional module corresponding to the identifier according to the identifier of the functional module in the main code where the branch code is located.
The integration service module 401 sends the compiled file to a test device, and obtains the test case to test the compiled file.
In some examples, the integration service module 401 sends the compiled file to a test device by sending an instruction; sending an instruction to the test equipment to enable the test equipment to deploy the compiled file; acquiring and operating the test case file and the test driver according to the identification of the functional module in the main code where the branch code is located, so as to send a test request to the test equipment; and receiving a test result sent by the test equipment in response to the test request, and displaying the test result.
In some examples, the test system 400 further comprises: a code management module; the code management module receives the test case file, and sends a message indicating that the test case file is received to the integration service module 401, where the message carries an acquisition address of the test case; receiving the branch code and sending a message indicating that the branch code is received, wherein the message carries an acquisition address of the branch code; the integration service module 401 receives a message sent by the code management module and indicating that a test case file is received; acquiring the test case file according to the acquisition address of the test case to read the test case file, and testing a branch code according to the test case file; receiving a message which is sent by the code management module and indicates that the branch code is received; and acquiring the branch code according to the acquisition address of the branch code.
The code management module is a code warehouse and can also be a code management server.
For example, as described above, and as shown in FIG. 5, a user accesses a code repository through a client, step 501: the client submits a test case file or a branch code to the code repository in a Push or mesh manner, and after receiving the test case file or the branch code, the code repository sends a message indicating that the branch code is received or a message indicating that the test case file is received to a webhook interface (web hook interface), step 502: the webhook interface sends the received message to the integration service module 401, in particular to a project work area unit in the integration service module 401, and the project work area unit obtains the branch code or the test case file in a Pull mode according to the obtaining address in the message.
It should be noted that, after the integration service module 401 receives the test case file, the test case file is stored.
In some examples, the integration service module 401 compiles, according to an identifier of a functional module in the main code where the branch code is located, a functional module corresponding to the identifier; when the compilation fails, a message indicating that the compilation failed is issued.
For example, according to the above description, when the integrated service module 401, and in particular the project workspace unit in the integrated service module 401, receives the branch code, step 503: the branch codes are sent to a construction unit in the integrated service module 401, the construction unit merges the branch codes to corresponding trunk codes, after merging, the construction unit can find corresponding function modules according to identifiers carried by the branch codes when submitting the branch codes to the code management module, and compile the function modules, when compiling fails, if syntax is wrong, compiling cannot be successful, a code developer needs to be notified in an email form or an instant message communication form through the integrated service module 401, particularly a notification unit in the integrated service module 401, so that the code developer can process the problem of compiling failure, and when compiling succeeds, the deployment process is started. Wherein the identifier is represented as an identifier of a functional module to which the branch code belongs.
It should be noted that the instant message communication form may be an account of the associated instant message communication client, and the notification unit sends an instant message to the account, for example, sends an instant message to the associated qq number.
When the compiling fails, the constructing unit sends a message indicating the constructing failure or a message indicating the compiling failure to the notifying unit, and the notifying unit notifies a code developer after receiving the message.
In addition, when the building unit builds the compiled file, the functional module to which the branch code belongs has one or more associated functional modules, and in order to better test the branch code, the associated functional modules need to be compiled and deployed, so as to perform the test. In this case, the identifier may be identifiers of a plurality of functional modules. When the compiled functional modules are more, the compiling speed can be improved by adopting a parallel compiling mode. If any one of the function modules fails to be compiled, the notification unit can inform a code developer, and the automatic test is terminated at the same time.
In some examples, the integration service module 401 sends an instruction to the test device to cause the test device to deploy the compiled file; acquiring and operating the test case file and the test driver according to the identification of the functional module in the main code where the branch code is located, so as to send a test request to the test equipment; and receiving a test result sent by the test equipment in response to the test request, and displaying the test result.
For example, according to the above description, when the integration service module 401, and in particular the building block in the integration service module 401, compiles the successful function module, step 505: the building unit sends one or more compiled function modules to a deployment unit in the integrated service module 401, and sends the compiled function modules to a test device, for example, a tester, through the deployment unit, and the deployment unit receives the one or more compiled function modules sent by the building unit, step 506: the deployment unit uploads one or more compiled functional modules to the tester through an rsync command, step 507: send deploy and restart commands to the remote command service on the tester, step 508: and then, one or more compiled functional modules are deployed on the tester and restarted through the remote command service deployed on the tester, so that the test is carried out. When all the functional modules to be deployed on the tester are successfully deployed and restarted, the integrated service module 401, particularly the test unit, selects the test case file and the test driver corresponding to the identifier according to the identifier of the functional module, reads the test case file by the test driver, acquires the required http parameter, constructs an http request, step 510: the constructed http request is sent to the tester through the web service, after a deployment function module in the tester receives the http request, the http request is processed, namely, information feedback or data feedback is carried out in response to the http request, the function module sends the feedback information or the feedback data to the integrated service module 401, especially to the test unit, and when the test unit receives the feedback information or the feedback data, the integrated service module 401 displays the feedback information or the feedback data, namely, displays the test result.
It should be noted that, after the functional module is successfully deployed to the tester, step 509: the deployment unit sends a message to the test unit, and the test unit can start testing the functional module after receiving the message.
In some examples, the integration service module 401, upon receiving the test result, issues the test result; and when the deployment failure is monitored, sending a message indicating the deployment failure.
For example, according to the foregoing, after the test is finished, the test unit in the integrated service module 401 will receive the information or data fed back, and step 511: the test unit sends the feedback information or the feedback data, i.e. the test result, to the notification unit, step 512: and the notification unit is used for sending the test result to corresponding clients, such as a mail client and an instant message communication client, in a mail form or an instant message communication form, so that a code developer is notified of the test result of the time, and the code developer can process the problem in the test result.
When the test equipment fails to deploy the functional modules, if one or more functional modules are not deployed on the test equipment, the notification unit notifies the code developer of the failure in deployment in an email form or an instant message communication form, so that the code developer can process the problem of the failure in deployment and terminate the automatic test.
In some examples, the test system 400 further comprises: a login module; the login module acquires and stores information representing the identity and security verification information so that the information representing the identity and the security verification information are carried when a test request is sent to the test equipment.
The login module sends a login request to a server providing login service; receiving the information representing the identity and security verification information sent by the server for providing the login service in response to the login request; and storing the information representing the identity identification and the security verification information into a database.
Wherein, the information representing the identity is a cookie field.
The security verification information is a token field for preventing CSRF attack.
For example, according to the foregoing, taking logging in a public platform as an example, the logging in module acquires a cookie field related to a user identity and a token field for preventing CSRF attack in an HTTP response for an account by calling a public platform login interface every day, and writes the account login state information (e.g., the cookie field and the token field for preventing CSRF attack) into the database; when the automatic test driver is executed, the login information is read from the database according to the account number, the login information is placed in the http request, and then the http request of each test is sent to finish the test.
It should be noted that, for web automation test, the http request needs to contain operator identity information, after a user successfully logs in the system using an account and a password, the user sets a login state ticket, that is, login state information, in a form of cookie, and all subsequent operations of the user carry the cookie, so that the CGI interface can accurately acquire the identity of the operator without making a business layer compatible with the automation test.
For the web automation test, the CGI interface is directly accessed through the http interface, and the actual login process is not completed on the page. In order to complete the automatic test, the CGI interface may be used to mark the identity of the operator, for example, by requesting parameters or pre-embedding a code for the test account, but this method may not truly simulate the request of the user, and may not work normally even when logic verification involving a back-end service login state is performed.
In addition, if the developer accesses the code repository through the client and submits the branch code, and the client sends a Merge-Request for the branch code to the code repository, when the test result is determined, step 513: the integration service module 401 adds information indicating that the test is passed or failed to the branch code through the interface provided by the code repository according to the test result, and when other developers subsequently check the branch code through the client, the automated test result of the branch code can be seen through the data returned by the code repository, so that the developers can repair the code defect causing the automated test failure according to the information, and re-execute the test case until the branch code test is successful, thereby ensuring the quality of the submitted code.
It should be noted that the integration service module 401 may include a project workspace unit, a building unit, a deployment unit, a test unit, and a notification unit.
In addition, the aforementioned modules may correspond to one entity server, respectively, for example, the integration service module 401 may correspond to, and the instance generation module 402 may correspond to the test instance generation server 103; the plurality of modules may also correspond to at least one entity server.
In the whole automatic test system, a developer specifies a module list needing to execute the automatic test when submitting codes, the follow-up whole compiling, deploying and testing process is completed by the automatic test system, and the developer can pay attention to other work in the period until the automatic test system feeds back a test result, so that the manual intervention degree of the developer on the automatic test is greatly reduced, and the working efficiency of the developer is improved.
Based on the above example, the present application further proposes an information processing apparatus, which is applied to an entity server, and the entity server may include functions of the test case generation server 103 and the integration server 101; as shown in fig. 6, the apparatus 600 includes: a determining module 601, a generating module 602 and a storing module 603; and the functions of the modules are as follows:
the determining module 601 obtains an operated object identifier corresponding to the operation log, and determines an attribute of the operated object according to the operated object identifier.
The determining module 601 determines a first feature value and a second feature value of the attribute.
The generating module 602 is configured to generate a test case file according to the operation log and the first feature value when the second feature value does not exist in a preset feature value.
The storage module 603 stores the test case file and stores the second feature value in a preset feature value.
In some examples, the operated object has a plurality of preset operation steps, and each operation step corresponds to an operation log; wherein the determining module 601 comprises: a sending unit, configured to send an acquisition request to a server, where the acquisition request carries information indicating that an operated object identifier corresponding to a plurality of operation logs is acquired, and the operation logs correspond to the preset operation steps; and the receiving unit is used for receiving the operated object identification returned by the server in response to the acquisition request.
In some examples, the operated object has a plurality of preset operation steps, and each operation step corresponds to an operation log; wherein the determining module 601 comprises: a sending unit that sends a request for acquiring the operation log to a server; a receiving unit that receives the operation log returned by the server in response to the request for obtaining the operation log; an acquisition unit that acquires a plurality of operation logs corresponding to the plurality of preset operation steps from the acquired operation logs; and determining the operated object identifications corresponding to the plurality of operation logs.
In some examples, the determining module 601 includes: the first determining unit is used for determining the preset attribute of the operated object corresponding to the operated object identification according to the corresponding relation between the operated object identification and the operated object.
In some examples, the determining module 601 includes: the second determining unit is used for determining the value of at least one operated object attribute; taking the value as a first characteristic value; and determining the second characteristic value according to the first characteristic value.
In some examples, the generating module 602 includes: a merging unit merging the operation log and the first characteristic value into at least one file; and the generating unit is used for taking the at least one file as the test case file.
In some examples, the storage module 603 stores the test case file in a preset storage area; the obtaining module obtains the test case file from the preset storage area, and tests the branch code according to the test case file.
In some examples, the receiving module receives a message indicating that a branch code is received, where the message carries an acquisition address of the branch code, where the message is sent from the preset storage area; the acquisition module acquires the branch code according to the acquisition address; the apparatus 600 further comprises: the adding module is used for adding the obtained branch codes into the main codes and compiling the updated main codes to generate compiled files; and the sending module is used for sending the compiled file to test equipment and acquiring the test case so as to test the compiled file.
In some examples, the sending module includes a sending unit that sends an instruction to the testing device to cause the testing device to deploy the compiled file; the acquisition unit acquires and runs the test case file and the test driver according to the identification of the functional module in the main code where the branch code is located so as to send a test request to the test equipment; and the receiving module is used for receiving a test result sent by the test equipment in response to the test request and displaying the test result.
In some examples, the device 600 further comprises: the sending module is used for sending the test result when receiving the test result; and when the deployment failure is monitored, sending a message indicating the deployment failure.
In some examples, the adding module compiles a functional module corresponding to the identifier according to the identifier of the functional module in the main code where the branch code is located; and the sending module sends a message indicating that the compiling fails when the compiling fails.
In some examples, the obtaining module obtains and stores the information representing the identity and the security verification information, so that the information representing the identity and the security verification information are carried when the test request is sent to the test device.
In some examples, the obtaining module includes: a sending unit that sends a login request to a server providing a login service; the receiving unit is used for receiving the information which represents the identity and is sent by the server for providing the login service in response to the login request and the security verification information; and the storage unit is used for storing the information representing the identity and the security verification information into a database.
Fig. 7 shows a block diagram of the components of a computing device 700 in which the processing apparatus 600 is located. This computing device 700 may be a server. As shown in FIG. 7, the computing device 700 includes one or more processors (CPUs) 702, a communication module 704, a memory 706, a user interface 710, and a communication bus 708 that interconnects these components.
The processor 702 may receive and transmit data via the communication module 704 to enable network communications and/or local communications.
User interface 710 includes one or more output devices 712, including one or more speakers and/or one or more visual displays. The user interface 710 also includes one or more input devices 714, including, for example, a keyboard, a mouse, a voice command input unit or microphone, a touch screen display, a touch sensitive tablet, a gesture capture camera or other input buttons or controls, and the like.
The memory 706 may be a high-speed random access memory such as DRAM, SRAM, DDR RAM, or other random access solid state memory devices; or non-volatile memory, such as one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, or other non-volatile solid-state storage devices.
The memory 706 stores a set of instructions executable by the processor 702, including:
an operating system 716 including programs for handling various basic system services and for performing hardware related tasks;
the application 718 includes various application programs for video playing, where such application programs can implement the processing flow in the above examples, for example, the application programs may include part or all of the modules in the processing apparatus 600 shown in fig. 6, at least one of the modules 601 and 603 may store machine executable instructions, and the processor 702 can implement the functions of at least one of the modules 601 and 603 by executing the machine executable instructions in at least one of the modules 601 and 603 in the memory 706.
It should be noted that not all steps and modules in the above flows and structures are necessary, and some steps or modules may be omitted according to actual needs. The execution order of the steps is not fixed and can be adjusted as required. The division of each module is only for convenience of describing adopted functional division, and in actual implementation, one module may be divided into multiple modules, and the functions of multiple modules may also be implemented by the same module, and these modules may be located in the same device or in different devices.
The hardware modules in the embodiments may be implemented in hardware or a hardware platform plus software. The software includes machine-readable instructions stored on a non-volatile storage medium. Thus, embodiments may also be embodied as software products.
In various examples, the hardware may be implemented by specialized hardware or hardware executing machine-readable instructions. For example, the hardware may be specially designed permanent circuits or logic devices (e.g., special purpose processors, such as FPGAs or ASICs) for performing the specified operations. Hardware may also include programmable logic devices or circuits temporarily configured by software (e.g., including a general purpose processor or other programmable processor) to perform certain operations.
In addition, each example of the present application can be realized by a data processing program executed by a data processing apparatus such as a computer. It is clear that a data processing program constitutes the present application. Further, the data processing program, which is generally stored in one storage medium, is executed by directly reading the program out of the storage medium or by installing or copying the program into a storage device (such as a hard disk and/or a memory) of the data processing device. Such a storage medium therefore also constitutes the present application, which also provides a non-volatile storage medium in which a data processing program is stored, which data processing program can be used to carry out any one of the above-mentioned method examples of the present application.
The machine-readable instructions corresponding to the modules in fig. 6 may cause an operating system or the like operating on the computer to perform some or all of the operations described herein. The nonvolatile computer-readable storage medium may be a memory provided in an expansion board inserted into the computer or written to a memory provided in an expansion unit connected to the computer. A CPU or the like mounted on the expansion board or the expansion unit may perform part or all of the actual operations according to the instructions.
In addition, the devices and modules in the examples of the present application may be integrated into one processing unit, or each module may exist alone physically, or two or more devices or modules may be integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The above description is only for the purpose of illustrating the preferred embodiments of the present invention and is not to be construed as limiting the invention, and any modifications, equivalents, improvements and the like made within the spirit and principle of the present invention should be included in the scope of the present invention.

Claims (16)

1. An information processing method, characterized in that the method comprises:
acquiring an operated object identifier corresponding to an operation log, wherein the operated object has a plurality of preset operation steps, and each operation step corresponds to one operation log;
determining the preset attribute of the operated object corresponding to the operated object identifier according to the corresponding relation between the operated object identifier and the operated object;
determining a first characteristic value and a second characteristic value of the attribute;
when the second characteristic value does not exist in the preset characteristic values, generating a test case file according to the operation log and the first characteristic value;
and storing the test case file and storing the second characteristic value in a preset characteristic value.
2. The method of claim 1, wherein the obtaining of the operated object identifier corresponding to the operation log comprises:
sending an acquisition request to an operation log server, wherein the acquisition request carries information indicating that the operated object identifiers corresponding to a plurality of operation logs are acquired;
and receiving the operated object identification returned by the server in response to the acquisition request.
3. The method of claim 1, wherein the obtaining of the operated object identifier corresponding to the operation log comprises:
sending a request for acquiring the operation log to an operation log server;
receiving the operation log returned by the server in response to the request for obtaining the operation log;
acquiring a plurality of operation logs corresponding to the preset operation steps from the acquired operation logs;
and determining the operated object identifications corresponding to the plurality of operation logs.
4. The method of claim 1, further comprising:
and acquiring the preset characteristic value from an operation log database.
5. The method of claim 1, wherein determining the first eigenvalue and the second eigenvalue of the attribute comprises:
determining the value of at least one operated object attribute;
taking the value as the first characteristic value;
and determining the second characteristic value according to the first characteristic value.
6. The method of claim 1, wherein generating a test case file from the oplog and the first feature value comprises:
merging the operation log and the first characteristic value into at least one file;
and taking the at least one file as the test case file.
7. The method of claim 1, wherein storing the test case file comprises:
storing the test case file into a preset storage area;
wherein the method further comprises:
and acquiring the test case file from the preset storage area, and testing the branch code according to the test case file.
8. The method of claim 7, further comprising:
receiving a message which is sent in the preset storage area and indicates that the branch code is received, wherein the message carries an acquisition address of the branch code;
acquiring the branch code according to the acquisition address;
adding the branch code into the main code, compiling the updated main code and generating a compiled file;
and sending the compiled file to test equipment, and acquiring the test case to test the compiled file.
9. The method of claim 8, wherein sending the compiled file to a testing device and obtaining the test case to test the compiled file comprises:
sending an instruction to the test equipment to enable the test equipment to deploy the compiled file;
acquiring and operating the test case file and the test driver according to the identification of the functional module in the main code where the branch code is located, so as to send a test request to the test equipment;
wherein the method further comprises:
receiving a test result sent by the test equipment in response to the test request, and displaying the test result;
when the test result is received, sending the test result;
and when the deployment failure is monitored, sending a message indicating the deployment failure.
10. The method of claim 9, further comprising:
and acquiring and storing information representing the identity and safety verification information so as to carry the information representing the identity and the safety verification information when a test request is sent to the test equipment.
11. The method of claim 10, wherein obtaining and storing the information indicative of the identity and the security verification information comprises:
sending a login request to a server providing a login service;
receiving the information representing the identity and the security verification information sent by the server providing the login service in response to the login request;
and storing the information representing the identity identification and the security verification information into a database.
12. A test system, the system comprising: the system comprises an integration service module, a test case generation module and a code management module;
the test case generation module is used for acquiring an operated object identifier corresponding to an operation log, wherein the operated object has a plurality of preset operation steps, and each operation step corresponds to one operation log; determining the preset attribute of the operated object corresponding to the operated object identifier according to the corresponding relation between the operated object identifier and the operated object; determining a first characteristic value and a second characteristic value of the attribute; when the second characteristic value does not exist in the preset characteristic values, generating a test case file according to the operation log and the first characteristic value; storing the test case file and setting the second characteristic value in a stored characteristic value;
the integrated service module receives a message which is sent by the code management module and indicates that a branch code is received, wherein the message carries an acquisition address of the branch code; acquiring the branch code according to the acquisition address; adding the branch code into the main code, compiling the updated main code and generating a compiled file; and sending the compiled file to test equipment, and acquiring the test case to test the compiled file.
13. The system according to claim 12, wherein the code management module receives the test case file and sends a message indicating that the test case file is received to the integration service module, the message carrying an acquisition address of the test case; receiving the branch code and sending a message to the integration service module indicating that the branch code is received;
the integrated service module receives a message which is sent by the code management module and indicates that the test case file is received; and acquiring the test case file according to the acquisition address of the test case, and testing the branch code according to the test case file.
14. An information processing apparatus characterized in that the apparatus comprises:
the determining module is used for acquiring an operated object identifier corresponding to an operation log, wherein the operated object has a plurality of preset operation steps, and each operation step corresponds to one operation log; determining the preset attribute of the operated object corresponding to the operated object identifier according to the corresponding relation between the operated object identifier and the operated object;
the determining module is used for determining a first characteristic value and a second characteristic value of the attribute;
the generating module is used for generating a test case file according to the operation log and the first characteristic value when the second characteristic value does not exist in a preset characteristic value;
and the storage module is used for storing the test case file and storing the second characteristic value in a preset characteristic value.
15. A storage medium storing one or more programs, the one or more programs comprising instructions, which when executed by a computing device, cause the computing device to perform the method of any of claims 1-11.
16. A computing device comprising a memory and a processor, the memory having stored therein computer-readable instructions that, when executed by the processor, implement the method of any of claims 1 to 11.
CN201810785562.XA 2018-07-17 2018-07-17 Information processing method, system, device and storage medium Active CN110727575B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810785562.XA CN110727575B (en) 2018-07-17 2018-07-17 Information processing method, system, device and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810785562.XA CN110727575B (en) 2018-07-17 2018-07-17 Information processing method, system, device and storage medium

Publications (2)

Publication Number Publication Date
CN110727575A CN110727575A (en) 2020-01-24
CN110727575B true CN110727575B (en) 2021-04-23

Family

ID=69217474

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810785562.XA Active CN110727575B (en) 2018-07-17 2018-07-17 Information processing method, system, device and storage medium

Country Status (1)

Country Link
CN (1) CN110727575B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111581081B (en) * 2020-04-21 2022-03-22 深圳震有科技股份有限公司 Automatic test system and method
CN112486567A (en) * 2020-11-30 2021-03-12 上海瑞家信息技术有限公司 Code merging request sending method and device, electronic equipment and storage medium
CN113688025A (en) * 2021-09-07 2021-11-23 中国联合网络通信集团有限公司 Interface test method, device, equipment and storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9703675B2 (en) * 2014-08-11 2017-07-11 Microsoft Technology Licensing, Llc Structured logging and instrumentation framework
CN107766252A (en) * 2017-11-08 2018-03-06 平安科技(深圳)有限公司 Test script automated execution method, apparatus, equipment and storage medium
CN108228464A (en) * 2018-01-12 2018-06-29 浪潮通用软件有限公司 A kind of mobile application UI test frames and its implementation based on data-driven

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9703675B2 (en) * 2014-08-11 2017-07-11 Microsoft Technology Licensing, Llc Structured logging and instrumentation framework
CN107766252A (en) * 2017-11-08 2018-03-06 平安科技(深圳)有限公司 Test script automated execution method, apparatus, equipment and storage medium
CN108228464A (en) * 2018-01-12 2018-06-29 浪潮通用软件有限公司 A kind of mobile application UI test frames and its implementation based on data-driven

Also Published As

Publication number Publication date
CN110727575A (en) 2020-01-24

Similar Documents

Publication Publication Date Title
EP3842948B1 (en) Method and apparatus for testing edge computing, device, and readable storage medium
CN112074807A (en) Method and system for providing artifacts in a cloud computing environment
US20170161059A1 (en) Management of multiple application programming interface versions for development environments
CN106415480B (en) High-speed application for installation on a mobile device for enabling remote configuration of the mobile device
CN107896244B (en) Version file distribution method, client and server
US8640096B2 (en) Configuration of componentized software applications
US11561889B2 (en) Orchestration for automated performance testing
US10817267B2 (en) State machine representation of a development environment deployment process
CN110727575B (en) Information processing method, system, device and storage medium
CN111338656B (en) Method and device for installing software package to target host and computer equipment
CN106897223A (en) A kind of software kit delivery method and device based on continuous integrating
EP4246332A1 (en) System and method for serverless application testing
US10120707B2 (en) Deployment of development environments
US20170060577A1 (en) Documentation notification
EP3447635A1 (en) Application architecture generation
CN115658496A (en) Extensible Web automatic test method, system, equipment and storage medium
CN111831567A (en) Application test environment configuration method, device, system and medium
CN116501652A (en) Automatic testing method and system for sustainable integration based on SAAS (software as a service) system
US20230393825A1 (en) Automated software deployment techniques
TW201407503A (en) System and method for work schedule of cloud platform
CN107203471B (en) Joint debugging method, service platform and computer storage medium
CN116244186A (en) Operating system test management method and device and computing equipment
CN115454420A (en) Artificial intelligence algorithm model deployment system, method, equipment and storage medium
US10394534B2 (en) Framework for flexible logging of development environment deployment
CN111858302B (en) Method and device for testing small program, electronic equipment and storage medium

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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40019609

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant