CN108470000B - Automatic testing method, system and medium for communication terminal software - Google Patents

Automatic testing method, system and medium for communication terminal software Download PDF

Info

Publication number
CN108470000B
CN108470000B CN201810181050.2A CN201810181050A CN108470000B CN 108470000 B CN108470000 B CN 108470000B CN 201810181050 A CN201810181050 A CN 201810181050A CN 108470000 B CN108470000 B CN 108470000B
Authority
CN
China
Prior art keywords
test
result
module
neural network
network model
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
CN201810181050.2A
Other languages
Chinese (zh)
Other versions
CN108470000A (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.)
Ringslink Xiamen Network Communication Technologies Co ltd
Original Assignee
Ringslink Xiamen Network Communication Technologies 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 Ringslink Xiamen Network Communication Technologies Co ltd filed Critical Ringslink Xiamen Network Communication Technologies Co ltd
Priority to CN201810181050.2A priority Critical patent/CN108470000B/en
Publication of CN108470000A publication Critical patent/CN108470000A/en
Application granted granted Critical
Publication of CN108470000B publication Critical patent/CN108470000B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

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

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)
  • Telephonic Communication Services (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The invention discloses a method for automatically testing communication terminal software, which comprises the following steps: training a neural network model for software automatic testing; the automatic test module acquires a test file and generates a test step according to a test case corresponding to the test file; testing the communication terminal according to the testing step to obtain an actual result, and transmitting the testing step and the actual result to the neural network model; the neural network model takes the testing step as input and outputs the expected result; judging whether the actual result is consistent with the expected result; if yes, the test is successful; if the test fails, the neural network model sends the expected result to the automatic test module, and the automatic test module performs refinement verification on possible reasons of the test failure to generate a refinement verification result. The invention simulates the operation of the communication terminal software through the automatic test module, monitors the running state of the communication terminal software, and combines the prediction result of the neural network model to analyze and compare so as to realize the automatic test of the communication terminal software.

Description

Automatic testing method, system and medium for communication terminal software
Technical Field
The invention relates to the technical field of communication software testing, in particular to an automatic testing method, system and medium for communication terminal software.
Background
Communication terminals have become an indispensable communication tool in daily life. With the rapid development of communication terminal devices, the corresponding software version iterates increasingly frequently. With the consequent massive software testing requirements.
Currently, in the field of communication terminal software testing, a manual testing mode is mostly adopted to verify a software version. The communication terminal to be tested is manually subjected to environment configuration, test result analysis and the like to check whether the software version function can be realized or not and whether the BUG exists or not. This test mode requires great labor cost, low efficiency, and requires a tester to have good problem analysis capability.
Disclosure of Invention
The invention aims to provide a method, a system and a medium for automatically testing a communication terminal, which can realize the automatic test of communication terminal software and reduce the labor cost required by the software test.
In order to solve the technical problems, the invention adopts the following technical scheme:
a method for automatically testing communication terminal software includes:
Training a neural network model for software automatic testing;
The automatic test module acquires a test file and generates a test step according to the test file;
The automatic test module tests the communication terminal according to the test step to obtain an actual test result, and transmits the test step and the actual test result to the neural network model;
the neural network model takes the testing step as an input value and outputs an expected testing result;
the neural network model judges whether the actual test result is consistent with the expected test result;
If yes, judging that the test is successful;
If not, judging that the test fails, and sending the expected test result to an automatic test module by the neural network model, wherein the automatic test module performs refinement verification on the possible reasons of the test failure to generate a refinement verification result.
Further, the training of the neural network model for software automatic test is specifically as follows:
Selecting a training sample set from a test sample set, and training according to samples included in the training sample set to obtain a neural network model;
The sample includes a test step and a test result,
Taking the test step as input according to the neural network model, and outputting an expected result;
Determining whether the expected result is consistent with the test result,
And feeding back and updating the neural network model according to the expected result inconsistent with the test result and the corresponding test step.
Further, the method further comprises: and establishing a refinement verification database for storing the refinement verification result and the corresponding test step.
Further, the automatic test module performs refinement verification on the possible reasons of the test failure to generate a refinement verification result, and then the method further comprises the following steps:
The automatic test module transmits the refined verification result to a neural network model, and the neural network model judges whether the refined verification result is consistent with the expected result or not;
if yes, determining that the neural network model is successfully predicted, establishing the correlation between the testing step and the refinement verification result, and storing the correlation in the refinement verification database;
If not, determining that the neural network model fails to predict, establishing the association and storage of the expected result corresponding to the test step and the refined verification result, notifying the operator to analyze the failure cause, and updating the neural network model according to the analysis result.
Further, the generating a test step according to the test file, and then further includes:
The automatic test module judges whether the test step stores a corresponding refinement verification result in the refinement verification database;
If yes, the automatic test module performs refinement verification;
if the refinement verification fails, the test ends,
If the refinement verification is successful, continuing the step of testing the communication terminal by the automatic test module according to the test step;
if not, continuing the step of testing the communication terminal by the automatic testing module according to the testing step.
Further, the automatic test module obtains a test file, specifically:
the monitoring module monitors a file system of the test file release server in real time;
when the monitoring module detects that the file system is newly added or changed, downloading the test file to a local place;
and sending the local path corresponding to the test file to an automatic test module.
Correspondingly, the invention also discloses a system for automatically testing the communication terminal software, which comprises the following steps: the system comprises an automatic test module, a neural network module, a browser driving module and a system driving module; the automatic test module is respectively and electrically connected with the browser driving module, the system driving module and the neural network module, and is used for generating corresponding test steps according to the received test files, acquiring actual test results after the system driving module tests according to the test steps, and carrying out refinement verification on the test steps when expected results generated by the neural network model according to the test steps are inconsistent with the actual test results to generate refinement verification results; the neural network module is used for generating a neural network model according to the training sample set and updating the neural network model according to the test result; the browser driving module is used for driving the web browser.
Further, the system further comprises: the monitoring module and the notification module; the monitoring module is electrically connected with the automatic test module and is used for monitoring the file change condition of the version release server; the notification module is electrically connected with the neural network module and is used for acquiring an actual test result, storing the actual test result in real time and notifying the actual test result correspondingly.
Correspondingly, the invention also discloses a computer readable storage medium, on which a computer program is stored, which program, when being executed by a processor, implements the steps of a method for automatically testing communication terminal software according to any one of claims 1 to 7.
The invention has the beneficial effects that: the method comprises the steps of training a neural network model for automatic testing, comparing and analyzing according to an actual test result of the automatic testing of software and an expected result generated by the neural network model, and carrying out refinement verification through an automatic module when the actual test result is inconsistent with the expected result. The automatic test of the communication terminal software can be realized, so that the labor cost required by the test of the communication terminal software is reduced.
Drawings
Fig. 1 is a schematic flow chart of a method for testing communication terminal software according to the present invention;
FIG. 2 is a schematic flow chart of an embodiment of the present invention;
fig. 3 is a schematic structural diagram of a communication terminal software testing system disclosed in the present invention.
Detailed Description
Exemplary embodiments of the present invention are described in detail below with reference to the accompanying drawings. The description of the exemplary embodiments is presented for purposes of illustration only and is in no way limiting of the invention, its application, or use.
The most critical concept of the invention is as follows: and simulating to operate the communication terminal through the automatic test module, monitoring the running process of the communication terminal software, analyzing the result, and combining the test result prediction of the neural network model to realize the automatic test of the communication terminal software.
Examples
Referring to fig. 1 and 2, the embodiment provides a specific implementation scenario of a communication terminal software testing method, which includes:
And forming a test sample set through accumulation of daily work, wherein the test sample set comprises test steps and test results corresponding to the test cases. And forming a training sample set according to the test sample set in a file format which can be identified by the neural network model, and training according to the samples in the training sample set to obtain a reference model of the neural network model. Preferably, in the training process of the neural network model, taking a test step in a test sample as an input according to the reference model, and outputting an expected result; and judging whether the expected result is consistent with the test result in the test sample. And updating and adjusting the reference model according to the expected result inconsistent with the test result and the corresponding test step. And taking the reference model with the output expected result and the test result of which the coincidence rate reaches a threshold value as a neural network model for software automatic test.
A refinement verification database is established for storing refinement verification results generated by the automatic test module and test steps corresponding to the refinement verification results. Wherein the refinement verification is a refinement test of the test step. For example, when software is upgraded by tftp, the automatic test module firstly inputs the tftp address, and then upgrades the software, which belongs to verification of functionality. The refinement verification is a refinement test, for example, whether the tftp server is reachable, whether the file is downloaded successfully, whether the device performs version programming, and the like, and the specific error step of failure of the software test is judged through the refinement verification.
And then, the monitoring module monitors the file system of the test file release server in real time, when the monitoring module detects that the file system is newly added or changed, the updated test file is downloaded to the local, and the local path corresponding to the test file is sent to the automatic test module, so that the automatic test module is triggered to perform automatic test.
After the automatic test module acquires the local path corresponding to the test file, the automatic test module traverses the test file supported by the communication terminal. The test file comprises a software upgrade file required by the automatic test of the communication terminal, and a test mode and a test step corresponding to the upgrade file. The automatic test module determines a test step according to the test file, and searches the refinement verification database according to the test step. And judging whether the testing step has stored the corresponding refinement verification result. If yes, the automatic test module performs refinement verification. If the actual verification result of the refinement verification is inconsistent with the stored refinement verification result, judging that the refinement verification fails, and ending the test. The monitoring module continues to monitor the version release server and waits for the next version test. If the actual verification result of the refinement verification is consistent with the stored refinement verification result, judging that the refinement verification is successful, and starting to automatically test the software of the communication terminal by the automatic test module; if the automatic test module does not find the corresponding refined verification result according to the test steps, the automatic software test of the communication terminal is directly started.
And after the communication terminal completes the software test, outputting a software test result to the automatic test module. After the automatic test module obtains the actual test result, the test step and the actual test result are transmitted to the neural network model. The neural network model takes the testing step as an input value and outputs an expected result. And judging whether the actual test result is consistent with the expected result. If yes, judging that the test is successful, and ending the automatic test of the communication terminal software; if not, judging that the test fails, sending an expected test result to an automatic test module by the neural network model, and carrying out refinement verification on the possibility of the test failure by the automatic test module, and generating a refinement verification result. The automated test module then sends the refined validation result to the neural network model.
After the neural network model acquires the refinement verification result, judging whether the refinement verification result is consistent with the expected result; if yes, judging that the test is successful, establishing a correlation between the test step and the refinement verification result, and storing the correlation in a refinement verification database; if not, establishing the association between the expected test result corresponding to the test step and the refinement verification result and storing the association. Meanwhile, notifying a person to analyze the reason of the failure of the prediction of the automatic test neural network model of the software, and updating and adjusting the neural network model according to the analysis result.
Compared with the prior art, the automatic testing method for the communication terminal software can realize automatic testing of the communication terminal software function, and reduces the labor cost required by the communication terminal software function testing.
The foregoing description is only illustrative of the present invention and is not intended to limit the scope of the invention, and all equivalent changes made by the specification and drawings of the present invention, or direct or indirect application in the relevant art, are included in the scope of the present invention.

Claims (5)

1. A method for automatically testing communication terminal software includes:
Training a neural network model for software automatic testing;
The automatic test module acquires a test file and generates a test step according to the test file;
The automatic test module tests the communication terminal according to the test step to obtain an actual test result, and transmits the test step and the actual test result to the neural network model;
the neural network model takes the testing step as an input value and outputs an expected testing result;
the neural network model judges whether the actual test result is consistent with the expected test result;
If yes, judging that the test is successful;
If not, judging that the test fails, and sending the expected test result to an automatic test module by the neural network model, wherein the automatic test module performs refinement verification on the possible reasons of the test failure to generate a refinement verification result;
The training of the neural network model for software automatic test specifically comprises the following steps: selecting a training sample set from a test sample set, and training according to samples included in the training sample set to obtain a neural network model; the sample comprises a test step and a test result, the test step is taken as input according to the neural network model, and an expected result is output; judging whether the expected result is consistent with the test result, and feeding back and updating a neural network model according to the expected result inconsistent with the test result and the corresponding test step;
The automatic test module obtains a test file, specifically: the monitoring module monitors a file system of the test file release server in real time; when the monitoring module detects that the file system test file is newly added or changed, downloading the test file to a local place; sending a local path corresponding to the test file to an automatic test module;
further comprises: establishing a refinement verification database for storing the refinement verification result and the corresponding test step;
The automatic test module performs refinement verification on the possible reasons of the test failure to generate a refinement verification result, and then the automatic test module further comprises:
The automatic test module transmits the refined verification result to a neural network model, and the neural network model judges whether the refined verification result is consistent with the expected result or not;
if yes, determining that the neural network model is successfully predicted, establishing the correlation between the testing step and the refinement verification result, and storing the correlation in the refinement verification database;
If not, determining that the neural network model fails to predict, establishing the association and storage of the expected result corresponding to the test step and the refined verification result, notifying the operator to analyze the failure cause, and updating the neural network model according to the analysis result.
2. The automatic test method of communication terminal software according to claim 1, wherein the step of generating the test file further comprises:
The automatic test module judges whether the test step stores a corresponding refinement verification result in the refinement verification database;
If yes, the automatic test module performs refinement verification;
if the refinement verification fails, the test ends,
If the refinement verification is successful, continuing the step of testing the communication terminal by the automatic test module according to the test step;
if not, continuing the step of testing the communication terminal by the automatic testing module according to the testing step.
3. The automatic test system for communication terminal software according to claim 1, comprising: the system comprises an automatic test module, a neural network module, a browser driving module and a system driving module; the automatic test module is respectively and electrically connected with the browser driving module, the system driving module and the neural network module, and is used for generating corresponding test steps according to the received test files, acquiring actual test results after the system driving module tests according to the test steps, and carrying out refinement verification on the test steps when expected results generated by the neural network model according to the test steps are inconsistent with the actual test results to generate refinement verification results; the neural network module is used for generating a neural network model according to the training sample set and updating the neural network model according to the test result; the browser driving module is used for driving the web browser.
4. A communication terminal software automatic test system of a communication terminal software automatic test method according to claim 3, further comprising: the monitoring module and the notification module; the monitoring module is electrically connected with the automatic test module and is used for monitoring the file change condition of the version release server; the notification module is electrically connected with the neural network module and is used for acquiring an actual test result, storing the actual test result in real time and notifying the actual test result correspondingly.
5. A computer-readable storage medium, on which a computer program is stored, characterized in that the program, when being executed by a processor, implements the steps of a method for automatically testing communication terminal software according to any one of claims 1 to 2.
CN201810181050.2A 2018-03-06 2018-03-06 Automatic testing method, system and medium for communication terminal software Active CN108470000B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810181050.2A CN108470000B (en) 2018-03-06 2018-03-06 Automatic testing method, system and medium for communication terminal software

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810181050.2A CN108470000B (en) 2018-03-06 2018-03-06 Automatic testing method, system and medium for communication terminal software

Publications (2)

Publication Number Publication Date
CN108470000A CN108470000A (en) 2018-08-31
CN108470000B true CN108470000B (en) 2024-05-03

Family

ID=63264169

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810181050.2A Active CN108470000B (en) 2018-03-06 2018-03-06 Automatic testing method, system and medium for communication terminal software

Country Status (1)

Country Link
CN (1) CN108470000B (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109636786B (en) * 2018-12-11 2022-11-22 嘉楠明芯(北京)科技有限公司 Verification method and device of image recognition module
CN111026664B (en) * 2019-12-09 2020-12-22 遵义职业技术学院 Program detection method and detection system based on ANN and application
CN111143220B (en) * 2019-12-27 2024-02-27 中国银行股份有限公司 Training system and method for software test
CN111178512B (en) * 2019-12-31 2023-04-18 中科南京人工智能创新研究院 Device operation neural network test method and device
CN112395205B (en) * 2020-12-03 2024-04-26 中国兵器工业信息中心 Software testing system and method
CN115543773A (en) * 2022-08-17 2022-12-30 睿智合创(北京)科技有限公司 Automatic comparison method for test results

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6587995B1 (en) * 2000-04-19 2003-07-01 Koninklijke Philips Electronics N.V. Enhanced programmable core model with integrated graphical debugging functionality
CN101556550A (en) * 2009-05-22 2009-10-14 北京星网锐捷网络技术有限公司 Analysis method for automatic test log and device
CN105843743A (en) * 2016-04-11 2016-08-10 南京邮电大学 Method for verifying correctness of actual output result of special automatic test case
CN106502895A (en) * 2016-10-21 2017-03-15 郑州云海信息技术有限公司 A kind of automatic test information generation device and method
CN107273286A (en) * 2017-06-02 2017-10-20 携程计算机技术(上海)有限公司 For the scene automatic test platform and method of task application

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6587995B1 (en) * 2000-04-19 2003-07-01 Koninklijke Philips Electronics N.V. Enhanced programmable core model with integrated graphical debugging functionality
CN101556550A (en) * 2009-05-22 2009-10-14 北京星网锐捷网络技术有限公司 Analysis method for automatic test log and device
CN105843743A (en) * 2016-04-11 2016-08-10 南京邮电大学 Method for verifying correctness of actual output result of special automatic test case
CN106502895A (en) * 2016-10-21 2017-03-15 郑州云海信息技术有限公司 A kind of automatic test information generation device and method
CN107273286A (en) * 2017-06-02 2017-10-20 携程计算机技术(上海)有限公司 For the scene automatic test platform and method of task application

Also Published As

Publication number Publication date
CN108470000A (en) 2018-08-31

Similar Documents

Publication Publication Date Title
CN108470000B (en) Automatic testing method, system and medium for communication terminal software
CN109302522B (en) Test method, test device, computer system, and computer medium
CN107688530B (en) Software testing method and device
CN111459794A (en) Communication network testing method, device, computer equipment and storage medium
CN109740222B (en) Testing device and system for automobile networking scene
CN106598835B (en) Application testing method, device and system
CN111045944A (en) Regression testing method, device and system and computer readable storage medium
CN111913886A (en) Mobile phone APP automatic test method, device, equipment and storage medium
CN103973858B (en) The Auto-Test System of mobile terminal
CN111786855B (en) Network card pressure testing method and device, electronic equipment and storage medium
CN111026645A (en) User interface automatic testing method and device, storage medium and electronic equipment
CN108306787B (en) Application monitoring method and related equipment
CN110031746B (en) Chip test remote monitoring method and device, computer equipment and storage medium
CN110908702B (en) Version switching method, version switching device, computer equipment and storage medium
CN103678130A (en) Automated performance test method and platform
WO2019114209A1 (en) Automatic testing and analysis method, automatic testing and analysis system, application server and computer-readable storage medium
CN112241360A (en) Test case generation method, device, equipment and storage medium
CN112540924A (en) Interface automation test method, device, equipment and storage medium
CN112286825A (en) Screen testing method and device for intelligent cabin and electronic equipment
CN112835808A (en) Interface testing method and device, computer equipment and storage medium
CN111338951A (en) Wireless intelligent household appliance detection method and system
KR20150025106A (en) Verification apparatus, terminal device, system, method and computer-readable medium for monitoring of application verification result
CN111399862A (en) Batch installation method and device of Windows missing driver and computer equipment
CN108540344B (en) Router upgrading test method and system
CN112770108B (en) Performance test method, device and system and computer readable 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
GR01 Patent grant
GR01 Patent grant