Disclosure of Invention
The application provides a method, a device, equipment and a storage medium for testing the front end of a report platform, which are used for solving the problems of low test efficiency, low report coverage rate and the like of the front end of the report platform.
According to a first aspect of an embodiment of the present application, the present application provides a report platform front end testing method, where the method includes:
obtaining a test file, wherein the test file comprises test input parameters and test output parameters, the test input parameters are used for positioning report data in a first report platform, and the test output parameters are used for representing expected report data corresponding to the test input parameters; operating a first report platform according to the test input parameters, and capturing execution result information, wherein the execution result information is a result displayed by a user interface of the first report platform after the first report platform executes platform operation corresponding to the test input parameters; and generating a test result according to the consistency of the test output parameters and the execution result information.
In a possible implementation manner, the test input parameters include at least one query parameter set, and the query parameter set is used for representing parameters for performing query operation on the first report platform; and operating the first report platform according to the test input parameters and capturing execution result information, wherein the method comprises the following steps: and inquiring the first report platform according to the inquiry parameter set, and grabbing an inquiry result displayed by a user interface of the first report platform.
In one possible implementation, the query parameter set includes at least one of: report identity, report date, report size.
In a possible implementation manner, the test input parameter further includes an account identifier, where the account identifier is used to characterize an operation authority of the first reporting platform, and the method further includes: and logging in the first reporting platform according to the account identifier.
In one possible implementation manner, according to the query parameter set, querying the first report platform and capturing a query result displayed by a user interface of the first report platform, including: and inquiring the first report platform according to the operation authority corresponding to the account identifier and the inquiry parameter set, and grabbing an inquiry result displayed on a user interface of the first report platform.
In one possible implementation, the test output parameter includes comparison data, the execution result information includes a first execution result, and the method further includes: logging in the first report platform; operating the first report platform according to the test input parameters and capturing execution result information, wherein the method comprises the following steps: operating the first report platform according to the test input parameters, and capturing a first execution result, wherein the first execution result is a result displayed by a user interface of the first report platform after the first report platform executes platform operation corresponding to the test input parameters; generating a test result according to the consistency of the test output parameters and the execution result information, wherein the test result comprises: generating test data according to the first execution result; and comparing the consistency of the test data and the comparison data to generate a test result, wherein the comparison data is used for representing a corresponding second execution result after the second report platform is operated based on the test input parameters.
In one possible implementation, the method further includes: logging in the second report platform; operating the second report platform according to the test input parameters, and capturing a second execution result, wherein the second execution result is a result displayed by a client of the second report platform after the second report platform executes platform operation corresponding to the test input parameters; and generating the comparison data according to the second execution result.
In one possible implementation, comparing the consistency of the test data and the comparison data, generating a test result includes: calculating MD5 values of the test data and the comparison data; according to the consistency of MD5 values of the test data and the comparison data; and generating a test result.
In one possible implementation, the method further includes: writing the test result into the test file and/or displaying the test result.
According to a second aspect of the embodiment of the present application, the present application provides a report platform front end testing device, including:
the test input parameters are used for positioning report data in the first report platform, and the test output parameters are used for representing expected report data corresponding to the test input parameters;
The operation module is used for operating the first report platform according to the test input parameters and capturing execution result information, wherein the execution result information is a result displayed by a user interface of the first report platform after the first report platform executes platform operation corresponding to the test input parameters;
and the generating module is used for generating a test result according to the consistency of the test output parameters and the execution result information.
In a possible implementation manner, the test input parameters include at least one query parameter set, and the query parameter set is used for representing parameters for performing query operation on the first report platform; the operation module is specifically configured to: and inquiring the first report platform according to the inquiry parameter set, and grabbing an inquiry result displayed by a user interface of the first report platform.
In one possible implementation, the query parameter set includes at least one of: report identity, report date, report size.
In a possible implementation manner, the test input parameter further includes an account identifier, where the account identifier is used to characterize an operation authority of the first reporting platform, and the operation module is further configured to: and logging in the first reporting platform according to the account identifier.
In one possible implementation manner, the operation module is specifically configured to, when querying the first reporting platform according to the query parameter set and capturing a query result displayed on a user interface of the first reporting platform: and inquiring the first report platform according to the operation authority corresponding to the account identifier and the inquiry parameter set, and grabbing an inquiry result displayed on a user interface of the first report platform.
In a possible implementation manner, the test output parameter includes comparison data, the execution result information includes a first execution result, and the operation module is further configured to: logging in the first report platform; the operation module is specifically configured to, when operating the first report platform according to the test input parameter and capturing execution result information: operating the first report platform according to the test input parameters, and capturing a first execution result, wherein the first execution result is a result displayed by a user interface of the first report platform after the first report platform executes platform operation corresponding to the test input parameters; the operation module is specifically configured to, when generating a test result according to the consistency of the test output parameter and the execution result information: generating test data according to the first execution result; and comparing the consistency of the test data and the comparison data to generate a test result, wherein the comparison data is used for representing a corresponding second execution result after the second report platform is operated based on the test input parameters.
In one possible implementation manner, the operation module is further configured to: logging in the second report platform; operating the second report platform according to the test input parameters, and capturing a second execution result, wherein the second execution result is a result displayed by a client of the second report platform after the second report platform executes platform operation corresponding to the test input parameters; and generating the comparison data according to the second execution result.
In one possible implementation manner, the operation module is specifically configured to, when comparing the consistency of the test data and the comparison data to generate a test result: calculating MD5 values of the test data and the comparison data; according to the consistency of MD5 values of the test data and the comparison data; and generating a test result.
In one possible implementation manner, the generating module is further configured to: writing the test result into the test file and/or displaying the test result.
According to a third aspect of an embodiment of the present application, there is provided an electronic apparatus including: a memory, a processor, and a computer program;
wherein the computer program is stored in the memory and configured to execute, by the processor, the reporting platform front-end testing method according to any one of the first aspect of the embodiments of the present application.
According to a fourth aspect of the embodiment of the present application, there is provided a computer readable storage medium, where computer executable instructions are stored, where the computer executable instructions are used to implement the report platform front end testing method according to any one of the first aspect of the embodiment of the present application when the computer executable instructions are executed by a processor.
According to a fifth aspect of embodiments of the present application, there is provided a computer program product comprising a computer program which, when executed by a processor, implements the above first aspect and the various possible reporting platform front end testing methods of the first aspect.
According to the report platform front-end testing method, the device, the equipment and the storage medium, the test file is obtained, the test file comprises the test input parameters and the test output parameters, wherein the test input parameters are used for positioning report data in the first report platform, and the test output parameters are used for representing expected report data corresponding to the test input parameters; operating a first report platform according to the test input parameters, and capturing execution result information, wherein the execution result information is a result displayed by a user interface of the first report platform after the first report platform executes platform operation corresponding to the test input parameters; and generating a test result according to the consistency of the test output parameters and the execution result information. The operation of the test platform can be realized and the execution result information can be automatically grasped through the test input parameters in the test file, so that the automatic test of the front-end function of the report platform is realized through the comparison of the execution result information and the test output parameters in the test file, and the test efficiency of the report platform and the coverage rate of the report data in the report platform are improved.
Detailed Description
Reference will now be made in detail to exemplary embodiments, examples of which are illustrated in the accompanying drawings. When the following description refers to the accompanying drawings, the same numbers in different drawings refer to the same or similar elements, unless otherwise indicated. The implementations described in the following exemplary examples do not represent all implementations consistent with the application. Rather, they are merely examples of apparatus and methods consistent with aspects of the application as detailed in the accompanying claims.
The following explains the application scenario of the embodiment of the present application:
Fig. 1 is a schematic system architecture diagram of a reporting platform according to an embodiment of the present application, where, as shown in fig. 1, the reporting platform is illustratively operated in a cloud server, and includes reporting data related to various services. On the one hand, the cloud server can be in communication connection with other servers to provide required report data for other business systems in the banking business system, and the cloud server and the other servers can be located under the same internal local area network, and can also realize data interaction through a wide area network. On the other hand, the cloud server can also be directly connected with terminal equipment used by business personnel, namely a first terminal equipment in a communication way, such as a computer arranged on a business counter in a bank. And the bank staff realizes access to the report platform by operating the first terminal equipment, so as to realize operations such as checking, modifying, adding, deleting and the like of report data. In one aspect, the cloud server running the reporting platform is also in communication connection with a terminal device used by the developer, i.e., a second terminal device. By operating the first terminal equipment, a developer can modify and test related functions, architecture and the like of the report platform, ensure that the related functions of the report platform can work normally and provide report data service for other servers or terminals.
In the prior art, after the report platform is updated, upgraded or modified, the report platform must be tested by a testing means, however, the traditional testing method is completely dependent on pure manual execution to verify whether the front-end function of the report platform is correct. For example, the report platform is manually accessed and logged through the second terminal equipment, then related report data under each function of the report platform are operated one by one, and the validity of each function and the accuracy of the corresponding report data are determined. However, in general, the report data in the report platform is huge in quantity, and only a sampling test method can be adopted for manual test, and part of report data is selected for verification, so that the problems of low test efficiency, low report coverage rate and the like are caused.
The following describes the technical scheme of the present application and how the technical scheme of the present application solves the above technical problems in detail with specific embodiments. The following embodiments may be combined with each other, and the same or similar concepts or processes may not be described in detail in some embodiments. Embodiments of the present application will be described below with reference to the accompanying drawings.
Fig. 2 is a flowchart of a report platform front end testing method according to an embodiment of the present application, which is applied to a terminal device, where the terminal device is in communication connection with a cloud server running a first report platform. As shown in fig. 2, the method for testing the front end of the first reporting platform provided in this embodiment includes the following steps:
Step S101, a test file is obtained, wherein the test file comprises test input parameters and test output parameters, the test input parameters are used for positioning report data in the first report platform, and the test output parameters are used for representing expected report data corresponding to the test input parameters.
The terminal device may be, for example, a device for testing the first reporting platform, such as a computer. The terminal equipment accesses the first report platform through a client or a browser (CS architecture or BS architecture), so that the operation of the first report platform is realized, and response information returned by the first report platform is obtained.
Further, the test file may be a script file for defining a flow of testing the first reporting platform. When the test file is executed at one side of the terminal equipment, the terminal equipment operates the first report platform according to the test input parameters in the test file, for example, executes the 'query' or 'screening' function of the first report platform. The first report platform responds to the operation on one side of the terminal equipment and returns a corresponding operation result, namely report data corresponding to the operation. The test output parameters are expected report data which is contained in the test file and is preset and corresponds to the test input parameters. The test file is equivalent to a test case for testing the front end of the test platform, the test input parameters and the test output parameters are information set in pairs, and the test of the related functions and report data of the first report platform can be realized by comparing the test output parameters with the operation results returned by the first report platform corresponding to the test input parameters.
Step S102, operating the first report platform according to the test input parameters, and capturing execution result information, wherein the execution result information is a result displayed by a user interface of the first report platform after the first report platform executes platform operation corresponding to the test input parameters.
After the terminal equipment obtains the test file, the first report platform can be operated through a preset automatic test tool according to the test input parameters in the test file, an operation result returned from the cloud server running the first report platform is obtained, and the operation result is displayed on a user interface of the first report platform of the terminal equipment. And capturing the operation result displayed on the user interface of the first reporting platform of the terminal equipment to obtain execution result information describing the operation result corresponding to the test input parameter.
The automated testing tool is Selenium, selenium is a tool for testing a Web application program, and Selenium testing can be directly affected in a browser to simulate operation of a user, so as to implement a testing process based on a user interface, and a specific use method of Selenium is known to those skilled in the art and is not described herein.
Step S103, generating a test result according to the consistency of the test output parameters and the execution result information.
The test output parameter is, for example, a predicted report data expected to be output after the first report platform is operated according to the preset data processing logic of the first report platform based on the test input parameter, and after execution result information is obtained, because the execution result information is a response result obtained after the first report platform is operated and tested according to the test input parameter, if the execution result information output by the first report platform is consistent with the test output parameter according to the preset data processing logic of the first report platform. Therefore, according to the consistency of the test output parameters and the execution result information, whether the data processing logic of the first report platform accords with the expectations or not, namely the test result can be judged. Specifically, if the test output parameters are consistent with the execution result information, the data processing logic of the first report platform accords with the expectation, namely the test of the first report platform passes; otherwise, if the test output parameters are inconsistent with the execution result information, the data processing logic of the first report platform is not in accordance with the expectation, that is, the test of the first report platform passes.
The method comprises the steps that a test file is obtained, wherein the test file comprises test input parameters and test output parameters, the test input parameters are used for positioning report data in a first report platform, and the test output parameters are used for representing expected report data corresponding to the test input parameters; operating the first report platform according to the test input parameters, and capturing execution result information, wherein the execution result information is a result displayed by a user interface of the first report platform after the first report platform executes platform operation corresponding to the test input parameters; and generating a test result according to the consistency of the test output parameters and the execution result information. The operation of the test platform can be realized and the execution result information can be automatically grasped through the test input parameters in the test file, so that the automatic test of the front-end function of the report platform is realized through the comparison of the execution result information and the test output parameters in the test file, and the test efficiency of the report platform and the coverage rate of the report data in the report platform are improved.
Fig. 3 is a flowchart of a report platform front end testing method according to another embodiment of the present application, as shown in fig. 3, where the report platform front end testing method according to this embodiment further refines step S102 on the basis of the report platform front end testing method according to the embodiment shown in fig. 2. The report platform front end testing method provided by the embodiment comprises the following steps:
Step S201, a test file is obtained, wherein the test file comprises test input parameters and test output parameters, the test input parameters are used for positioning report data in the first report platform, and the test output parameters are used for representing expected report data corresponding to the test input parameters.
Illustratively, the test input parameters include at least one query parameter set, where the query parameter set is used to characterize parameters for performing a query operation on the first reporting platform; wherein the query parameter set is a relevant parameter for use in the course of a query operation, and the query parameter set may comprise a combination of a plurality of parameters. Parameters such as report identity, report date, report size.
Illustratively, the test input parameters further include an account identifier, where the account identifier is used to characterize the operation authority of the first reporting platform. In the application scenario of the banking system, for the report data of the report platform, the account identifier is not opened to all users in terms of safety and compliance, i.e. the account identifier has corresponding operation authority, and only the report data in the corresponding access authority can be operated.
Step S202, logging in a first report platform according to the account identification.
Step S203, according to the operation authority and the query parameter set corresponding to the account identification, the first report platform is queried, and the query result displayed on the user interface of the first report platform is captured.
Illustratively, after logging in the first reporting platform according to the account identifier in the test input parameters, the first reporting platform determines the query authority corresponding to the account identifier, for example, a range of viewing report data, and more specifically, for example, the account identifier a can only view the a-class report data. Therefore, when the first report platform returns the query result corresponding to the test input parameter, only the query result corresponding to the operation authority is returned. The implementation manner of capturing the query result displayed by the user interface of the first report platform may be implemented by an automated test program, which has been described in detail in the foregoing embodiments, and will not be described herein again.
Step S204, according to the consistency of the test output parameters and the query result, a test result is generated.
Further, when the first report platform returns an operation result, the query result displayed by the user interface is grabbed, and the query result is returned after the query operation is performed based on the account identification. The method is equivalent to testing the authority management function of the first report platform. And comparing the test output parameters with the query results, so that the test of the query function of the first report platform based on authority management is realized, the test effect of the first report platform is improved, and the safety and stability of the first report platform are further improved.
Step S205, writing the test result into the test file.
The test results are written into the test files after the test results are generated, and report data covered by the test files are limited because the test results are generated by the test files which are correspondingly input, so that a large number of test files are required to be read in during the test of the test platform, and the high coverage test of the report platform is realized. And after the result test file is obtained, the test file contains the test result, if the test result indicates that the test corresponding to the test file passes, the test file can be skipped, and the next test file is tested, so that repeated tests are avoided, and the test efficiency is improved.
In this embodiment, the implementation manner of step S201 is the same as the implementation manner of step S101 in the embodiment shown in fig. 2 of the present application, and will not be described in detail here.
Fig. 4 is a flowchart of a report platform front end testing method according to another embodiment of the present application, as shown in fig. 4, the report platform front end testing method according to this embodiment adds steps of testing and comparing a second report platform based on the report platform front end testing method according to the embodiment shown in fig. 2, and the report platform front end testing method according to this embodiment may be applied to an application scenario of a report platform reconfiguration test, where the report platform front end testing method according to this embodiment includes the following steps:
Step S301, logging in a second report platform.
Step S302, operating the second report platform according to the test input parameters, and capturing a second execution result, wherein the second execution result is a result displayed by a client of the second report platform after the second report platform executes platform operation corresponding to the test input parameters.
Step S303, generating comparison data according to the second execution result.
The second reporting platform is illustratively the reporting platform before being reconfigured with the first reporting platform. Specifically, the report platform front end testing method provided by the embodiment is applied to the regression testing scene after the reconstruction of the second report platform. The reconstruction refers to modifying and replacing some modules, algorithms, architectures and the like in the report platform on the premise of not changing the main functions of the report platform and corresponding stored report data, so as to improve the performance of the report platform. Specifically, after the second reporting platform is reconstructed, a first reporting platform is generated, and the reporting data stored in the first reporting platform is consistent with the reporting data stored in the second reporting platform.
The second report platform is logged in, and the second report platform is operated according to the test input parameters, for example, report data corresponding to the test input parameters is queried, a second execution result returned by the second report platform is captured, and comparison data is generated by the second execution result, so that the comparison test is performed between the first report platform and the first report platform after the reconstruction. The process of generating the second execution result is similar to the process of generating the first test result corresponding to the first test platform based on the test input parameter in the above embodiment, and will not be described herein again, but reference may be made to the related description in the above embodiment.
The comparison data may include one or more second execution results, which are generated after the second execution results are locally stored. The specific data format and manner of generation of the comparison data is not limited herein, nor is it specifically exemplified.
Step S304, a test file is obtained, wherein the test file comprises test input parameters and comparison data.
The test input parameters in the steps and the corresponding comparison data are preset after the comparison data are obtained, and a test file is generated and used for testing the reconstructed first report platform so as to verify whether the first report platform can achieve the same result.
Step S305, logging in the first report platform.
Step S306, operating the first report platform according to the test input parameters, and capturing a first execution result, wherein the first execution result is a result displayed by a user interface of the first report platform after the first report platform executes platform operation corresponding to the test input parameters.
Step S307, generating test data according to the first execution result.
For example, the test data may include one or more first execution results after the comparison data stores the first execution results locally. The specific data format and generation manner of the comparison data are not limited herein, and are not described in detail.
And step 308, comparing the consistency of the test data and the comparison data, and generating a test result, wherein the comparison data is used for representing a corresponding second execution result after the second report platform is operated based on the test input parameters.
In one possible implementation, comparing the test data to consistency of the comparison data, generating a test result includes: calculating MD5 values of the test data and the comparison data; consistency of MD5 values according to the test data and the comparison data; and generating a test result. Specifically, for example, the test data and the comparison data each include a plurality of report files, and the report files and the comparison files are subjected to preprocessing operations, such as decimation, file alignment, and the like. And then MD5 value calculation and comparison are carried out on the report files in each pair of test data and the report files in the comparison data. Optionally, if the MD5 values are not equal, continuing to compare the file contents one by one and marking the fields with inconsistent data in the file; and finally, writing the comparison result back into the file so as to facilitate manual intervention analysis.
Fig. 5 is a schematic structural diagram of a report platform front end testing device according to an embodiment of the present application, which is applied to a terminal device, and as shown in fig. 5, the report platform front end testing device 4 provided in this embodiment includes:
the obtaining module 41 is configured to obtain a test file, where the test file includes a test input parameter and a test output parameter, the test input parameter is used to locate report data in the first report platform, and the test output parameter is used to characterize expected report data corresponding to the test input parameter.
And the operation module 42 is configured to operate the first reporting platform according to the test input parameters, and capture execution result information, where the execution result information is a result displayed on a user interface of the first reporting platform after the first reporting platform executes the platform operation corresponding to the test input parameters.
The generating module 43 is configured to generate a test result according to the consistency of the test output parameter and the execution result information.
In one possible implementation, the test input parameters include at least one query parameter set, where the query parameter set is used to characterize parameters for performing a query operation on the first reporting platform; the operation module 42 is specifically configured to: and inquiring the first report platform according to the inquiry parameter set, and grabbing an inquiry result displayed by a user interface of the first report platform.
In one possible implementation, the query parameter set includes at least one of: report identity, report date, report size.
In one possible implementation, the test input parameters further include an account identifier, where the account identifier is used to characterize an operation right to the first reporting platform, and the operation module 42 is further configured to: and logging in the first report platform according to the account identification.
In one possible implementation manner, the operation module 42 is specifically configured to, when querying the first reporting platform according to the query parameter set and grabbing the query result displayed on the user interface of the first reporting platform: and inquiring the first report platform according to the operation authority and the inquiry parameter set corresponding to the account identifier, and grabbing an inquiry result displayed on a user interface of the first report platform.
In one possible implementation, the test output parameters include comparison data, the execution result information includes a first execution result, and the operation module 42 is further configured to: logging in a first report platform; the operation module 42 is specifically configured to, when operating the first reporting platform according to the test input parameters and capturing the execution result information: operating the first report platform according to the test input parameters, and capturing a first execution result, wherein the first execution result is a result displayed by a user interface of the first report platform after the first report platform executes platform operation corresponding to the test input parameters; the operation module 42 is specifically configured to, when generating a test result according to the consistency of the test output parameter and the execution result information: generating test data according to the first execution result; and comparing the consistency of the test data and the comparison data to generate a test result, wherein the comparison data is used for representing a corresponding second execution result after the second report platform is operated based on the test input parameters.
In one possible implementation, the operation module 42 is further configured to: logging in a second report platform; operating the second report platform according to the test input parameters, and capturing a second execution result, wherein the second execution result is a result displayed by a client of the second report platform after the second report platform executes platform operation corresponding to the test input parameters; and generating comparison data according to the second execution result.
In one possible implementation, the operation module 42 is specifically configured to, when comparing the consistency of the test data and the comparison data, generate a test result: calculating MD5 values of the test data and the comparison data; consistency of MD5 values according to the test data and the comparison data; and generating a test result.
In one possible implementation, the generating module 43 is further configured to: writing the test result into the test file and/or displaying the test result.
Wherein the acquisition module 41, the operation module 42 and the generation module 43 are connected in sequence. The report platform front end testing device 4 provided in this embodiment may execute the technical scheme of the method embodiment shown in fig. 2-4, and its implementation principle and technical effect are similar, and will not be described herein again.
Fig. 6 is a schematic diagram of an electronic device according to an embodiment of the present application, as shown in fig. 6, where the electronic device provided in the embodiment includes: memory 51, processor 52 and computer program.
The computer program is stored in the memory 51 and is configured to be executed by the processor 52 to implement the report platform front end testing method provided in any of the embodiments corresponding to fig. 2-4 of the present application.
Wherein the memory 51 and the processor 52 are connected by a bus 53.
The relevant descriptions and effects corresponding to the steps in the embodiments corresponding to fig. 2-4 may be understood correspondingly, and are not described in detail herein.
An embodiment of the present application provides a computer readable storage medium having a computer program stored thereon, where the computer program is executed by a processor to implement the report platform front end testing method provided in any of the embodiments corresponding to fig. 2 to 4 of the present application.
The computer readable storage medium may be, among other things, ROM, random Access Memory (RAM), CD-ROM, magnetic tape, floppy disk, optical data storage device, etc.
An embodiment of the present application provides a computer program product, which includes a computer program, where the computer program when executed by a processor implements a report platform front end testing method provided by any of the embodiments corresponding to fig. 2 to fig. 4 of the present application.
In the several embodiments provided by the present application, it should be understood that the disclosed apparatus and method may be implemented in other manners. For example, the apparatus embodiments described above are merely illustrative, e.g., the division of modules is merely a logical function division, and there may be additional divisions of actual implementation, e.g., multiple modules or components may be combined or integrated into another system, or some features may be omitted, or not performed. Alternatively, the coupling or direct coupling or communication connection shown or discussed with each other may be an indirect coupling or communication connection via some interfaces, devices or modules, which may be in electrical, mechanical, or other forms.
Other embodiments of the application will be apparent to those skilled in the art from consideration of the specification and practice of the application disclosed herein. This application is intended to cover any variations, uses, or adaptations of the application following, in general, the principles of the application and including such departures from the present disclosure as come within known or customary practice within the art to which the application pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the application being indicated by the following claims.
It is to be understood that the application is not limited to the precise arrangements and instrumentalities shown in the drawings, which have been described above, and that various modifications and changes may be effected without departing from the scope thereof. The scope of the application is limited only by the appended claims.