WO2020143313A1 - 代码修改方法及装置、计算机可读介质及电子设备 - Google Patents

代码修改方法及装置、计算机可读介质及电子设备 Download PDF

Info

Publication number
WO2020143313A1
WO2020143313A1 PCT/CN2019/118079 CN2019118079W WO2020143313A1 WO 2020143313 A1 WO2020143313 A1 WO 2020143313A1 CN 2019118079 W CN2019118079 W CN 2019118079W WO 2020143313 A1 WO2020143313 A1 WO 2020143313A1
Authority
WO
WIPO (PCT)
Prior art keywords
difference
modification
software version
upgrade
indicator
Prior art date
Application number
PCT/CN2019/118079
Other languages
English (en)
French (fr)
Inventor
陈珍妮
Original Assignee
平安科技(深圳)有限公司
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 平安科技(深圳)有限公司 filed Critical 平安科技(深圳)有限公司
Publication of WO2020143313A1 publication Critical patent/WO2020143313A1/zh

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Definitions

  • the present disclosure relates to the field of computer technology, and in particular, to a code modification method and apparatus, a computer-readable medium, and electronic equipment.
  • the purpose of the present disclosure is to provide a code modification method and related equipment, and to at least to a certain extent solve the problems of modifying the code when the software fails the test after the upgrade depends on manual judgment, the accuracy is not high, and the process is long.
  • a code modification method which includes: separately running sample data on the current software version after the software upgrade and the predecessor software version before the upgrade to obtain the first indicator results corresponding to the current software version respectively And the second index result corresponding to the previous software version; according to the difference between the first index result and the second index result, determine whether the upgrade is successful; if the upgrade is unsuccessful, determine the code range corresponding to the difference, As a range that requires modification of the current software version.
  • a code modification device including: a data operation module for running sample data on the current software version after the software upgrade and the predecessor software version before the upgrade, respectively to obtain the corresponding The first index result and the second index result corresponding to the previous software version; the upgrade success determination module is used to determine whether the upgrade is successful according to the difference between the first index result and the second index result; the code range is determined The module is used to determine the code range corresponding to the difference if the upgrade is unsuccessful, as a range that requires modification of the current software version.
  • a computer non-volatile readable storage medium on which a computer program is stored, and when the program is executed by a processor, the code modification method as in the foregoing embodiment is implemented.
  • an electronic device including: one or more processors; a storage device for storing one or more programs, when the one or more programs are executed by the one or more processors When the one or more processors implement the code modification method as described above.
  • the difference between the result of the first indicator and the result of the second indicator determines whether the upgrade is successful, and if the upgrade is unsuccessful, a code range corresponding to the difference is determined as the range that requires modification to the current software version.
  • the difference between the result of the first indicator and the result of the second indicator is often closely related to the range of code that needs to be modified.
  • the difference between the result of the first indicator and the result of the second indicator is relatively similar, the problems encountered in the upgrade are similar, so to solve this problem, the scope in the code needs to be modified to be similar.
  • the test result and the modification can be more matched, overcoming the problems in the prior art that when the software fails the test after the software upgrade to modify the code, which depends on manual judgment, the accuracy is not high, and the process is long, the upgrade fails After the code modification is automated, and the accuracy is high.
  • FIG. 1 schematically shows a flowchart of a code modification method in an exemplary embodiment of the present disclosure
  • FIG. 2 shows a flowchart of steps in FIG. 1 to determine the code range corresponding to the difference as a range that requires modification of the current software version;
  • FIG. 3 is a flowchart illustrating steps for determining a code range corresponding to the difference as a range requiring modification to the current software version according to another embodiment
  • FIG. 5 is a flowchart of an embodiment in which steps of determining a modification mode corresponding to the difference as a way to modify the current software version are required;
  • FIG. 6 is a flowchart of another embodiment of a step of determining a modification mode corresponding to the difference as a way to modify the current software version
  • FIG. 7 is a schematic block diagram of a code modification device according to an embodiment
  • FIG. 8 shows a schematic structural diagram of a computer system suitable for implementing an electronic device according to an embodiment of the present disclosure
  • FIG. 9 schematically shows a schematic diagram of a computer non-volatile readable storage medium according to some embodiments of the present disclosure.
  • Example embodiments will now be described more fully with reference to the drawings.
  • the example embodiments can be implemented in various forms, and should not be construed as being limited to the examples set forth herein; on the contrary, providing these embodiments makes the present disclosure more comprehensive and complete, and fully conveys the concept of the example embodiments For those skilled in the art.
  • FIG. 1 is a flowchart of a code modification method according to an embodiment.
  • the execution subject of the method may be a server, a client, etc. with software analysis and software testing functions.
  • the code modification method includes steps S110-S130:
  • step S110 run sample data on the current software version after the software upgrade and the previous software version before the upgrade to obtain the first index result corresponding to the current software version and the second index result corresponding to the previous software version, respectively .
  • Software upgrade refers to the improvement of the function and performance of the software by transforming its code.
  • the current software version refers to the software version after the software upgrade.
  • the pre-order software version refers to the software version before the software upgrade.
  • the data used in the test is called sample data.
  • the sample data may be the operating data of financial products (such as stocks, securities, etc.), such as the rise and fall curve graphs.
  • the index refers to a metric used to evaluate the performance of the upgraded software.
  • the indicators can be the open interest rate, the rate of change, etc.
  • the indicator result is the specific value after the indicator test.
  • the first index result refers to the specific value of the index output by the software version after running the sample data in the upgraded software version.
  • the first indicator result is, for example, the operating data of the financial products (such as stocks, securities, etc.), the rise and fall curve charts, etc., are put into the upgraded financial analysis system, and the position ratio output by the financial analysis system Specific values for measures such as change rate.
  • the second indicator result refers to the specific value of the indicator output by the software version after running the sample data in the software version before the upgrade.
  • the second indicator result can be the operating data of financial products (such as stocks, securities, etc.), such as the rise and fall curve charts, etc., after being put into the financial analysis system before the upgrade, the position ratio output by the financial analysis system , Specific values such as rise and fall rate.
  • the analysis of the sample data (such as the analysis in the financial analysis system) can obtain the specific value of the indicator, that is, the indicator result.
  • step S120 according to the difference between the first index result and the second index result, it is determined whether the upgrade is successful.
  • the results of the first indicator and the results of the second indicator may be numeric or string-shaped.
  • the results of the first indicator and the results of the second indicator are numeric (such as the position ratio, the rate of change, etc.)
  • the difference between the results of the first indicator and the results of the second indicator refers to the difference between the results of the first indicator minus the results of the second indicator .
  • the results of the first indicator and the results of the second indicator are character strings (such as suggested purchase levels, holding performance, etc.)
  • the difference between the results of the first indicator and the results of the second indicator refers to the meaning of the results of the first indicator and the second indicator The closeness of the meaning of the result.
  • the recommended purchase level is "high” and the recommended purchase level is “low”, which means that the meanings are far from each other; while the holding performance is "excellent” and "good”, the meanings are similar.
  • the difference between the first index result and the second index result can be determined by looking up the table. For each possible combination of the first index result and the second index result, the table lists the differences corresponding to the combination. Therefore, you can search for the first index result and the second index result based on This table determines the difference between the first index result and the second index result.
  • step S120 includes: determining whether the difference between the first indicator result and the second indicator result is less than a preset threshold; if the first indicator result and the second If the difference between the index results is less than the preset threshold, it is determined that the upgrade was successful, otherwise, it is determined that the upgrade failed.
  • the preset threshold is the result value of the indicator that is set in advance and may fail if it is upgraded.
  • the difference between the first index result and the second index result is greater than or equal to the preset threshold, it means that the performance of this software has changed a lot after the upgrade.
  • the results of the indicators are very different. Therefore, it should be determined that there is a problem with the upgrade at this time, and the upgrade is unsuccessful, otherwise, the upgrade is successful.
  • step S120 includes:
  • the index result and difference correspondence table stores any two indicators The result and the corresponding difference; if the obtained difference meets the predetermined conditions, it is determined that the upgrade is successful, otherwise, it is determined that the upgrade fails.
  • the index result and difference correspondence table stores any two kinds of index results and corresponding difference tables, for example, as shown in Table 1.
  • the predetermined condition refers to a rule. After the difference between the obtained first index result and the second index result is substituted into the rule, if the rule is met, the difference is considered to satisfy the predetermined condition. For example, the predetermined condition is "the difference is medium or small”. If the obtained difference is "medium”, the predetermined condition is satisfied and the upgrade is successful. If the difference obtained is "big”, the upgrade is unsuccessful.
  • the first indicator result may include a first test value corresponding to multiple indicators
  • the second indicator result may include a second test value corresponding to multiple indicators.
  • the difference may therefore include a difference corresponding to multiple indicators.
  • multiple indicators include the open interest rate and the rate of change.
  • the first indicator result includes the first indicator result of the open interest rate and the first indicator result of the change rate
  • the second indicator result includes the second indicator result of the open interest rate and the second indicator result of the change rate
  • the difference includes the difference of the open interest rate And the rate of change.
  • Results of the first indicator Second indicator result difference high high small high in in high low Big in high in in in in small in low in ... ... ...
  • step S120 may include: performing indicator difference authentication on the difference between the first indicator result and the second indicator result of each indicator; if the first indicator result and the first The difference in the indicator results of the two indicators is certified successfully, and the upgrade will be determined to be successful. Otherwise, the upgrade will be determined to be unsuccessful.
  • Index difference certification refers to whether the difference between the first index result and the second index result of each index is acceptable for the upgrade effect.
  • step S130 if the upgrade is unsuccessful, the code range corresponding to the difference is determined as the range requiring modification to the current software version.
  • the code of the current software version needs to be further modified to make the upgrade successful.
  • the code range corresponding to the difference is determined as the range that the current software version needs to be modified.
  • the code range can be expressed by the index number of the code. Since each code segment in the software has an index number, the index number can be used to indicate the code range. For example, index number 3-5 represents the code segment corresponding to index number 3-the code segment corresponding to index number 5.
  • determining the code range corresponding to the difference as the range that needs to be modified for the current software version includes:
  • Step S210 Find a modification log matching the difference from the modification log library.
  • Each modification log in the modification log library has the first data obtained by running sample data on the software version after the previous upgrade and the software version before the upgrade. The difference between the result of the first indicator and the result of the second indicator, and the code range corresponding to the difference.
  • the code range is the range where the user has historically modified the code in order to eliminate the difference;
  • Step S220 The found modification log appears The code range with the highest number of times is determined as the range that needs to be modified for the current software version.
  • the modification log refers to the difference between the first indicator result obtained by running the sample data on the upgraded software version and the second indicator result obtained from running the sample data on the software version before the upgrade, And a record of the modified code range to eliminate this difference.
  • the modification log library is used to store modification logs.
  • the modification log may include the modification log of the user terminal.
  • the modification log may include the modification log of the server administrator or the modification logs of the users running on all terminals.
  • the method includes the following steps before step S110: historically, after each upgrade of the software code, run sample data on the upgraded software version and the pre-upgrade software version separately to separately Obtain the first indicator result and the second indicator result; receive the user's modification of the software code; from the received modification, obtain the modification range of the software code, and the difference between the first indicator result and the second indicator result Correspondence is stored in the modification log library.
  • sample data is run on the upgraded software version and the software version before the upgrade to obtain the first index result and the second index result, respectively.
  • the user feels that the difference is small and does not want to eliminate it, so the code of the software will not be modified. In this way, no new modification log will be generated.
  • the user feels that the difference is large, and if he wants to eliminate it, he will modify the code of the software.
  • the range of the modified code can be obtained, and the range can be represented by an index number. For example, the code modified by the user is concentrated in the code segment corresponding to the index number 3-5, so the modified code range is the index number 3-5.
  • Finding a modification log that matches the difference in the modification log library refers to finding a modification log that is equal to the difference and the difference between the first indicator result and the second indicator result stored in the modification log library. There may have been multiple revisions of the same difference in history, and these multiple revisions will generate multiple revision logs. The difference between the result of the first indicator and the result of the second indicator in the multiple modification logs is the same, but the code range of the corresponding modification may be different. At this time, you can determine the range of codes that appear most frequently in the found modification log as the range that needs to be modified for the current software version.
  • the code ranges are "index number 3" -5", “index number 1-2”, “index number 3-5", because index number 3-5 is the most frequent, so the index number 3-5 is determined as the range that needs to be modified for the current software version .
  • This embodiment determines the current code range that needs to be modified based on the history of the same difference between the first indicator result and the second indicator result, to ensure the objectivity of determining the modified code range (Because it has been done historically), it has automated the determination of the modified code range.
  • the first indicator result includes first test values corresponding to multiple indicators
  • the second indicator result includes test values corresponding to multiple indicators
  • the difference includes differences corresponding to multiple indicators
  • each indicator corresponds to multiple indicators
  • the difference between the first indicator result and the second indicator result is recorded in the modification log.
  • Each modification log also records the modification range corresponding to the modification made by the user in the history considering the differences of these different indicators. Since step S320 determines a code range for each indicator, in step S330, the intersection or union of them is taken as the range that needs to be modified for the current software version. For example, for the open interest rate, the determined code range is index number 3-5; for the ups and downs rate, the determined code range is index number 4-6.
  • the determined code range is index number 4-5. If the union is taken, the determined code range is index number 3-6. This embodiment can ensure the objectivity of determining the modified code range under the condition of multiple indicators, and realize the automatic determination of the modified code range.
  • the method further includes: step S140, determining a modification mode corresponding to the difference as a way to modify the current software version.
  • the modification method refers to a method for modifying the code of the software, such as adding a judgment branch, deleting a judgment branch, adding a loop statement, and deleting a loop statement.
  • determining the modification mode corresponding to the difference as a way to modify the current software version includes the following steps: Step S510, searching for a modification log matching the difference from the modification log library, Each modification log in the modification log library has the difference between the first indicator result and the second indicator result obtained by running sample data on the software version after the previous upgrade and the software version before the upgrade, and The modification mode corresponding to the difference.
  • the modification mode is the way in which the user has historically modified the code in order to eliminate the difference;
  • Step S520 Determine the modification mode with the most occurrences in the found modification log as the way to modify the current software version .
  • the method includes the following steps before step S110: each time in the history of the software code upgrade, the software version after the upgrade and the software version before the upgrade Run the sample data to obtain the first index result and the second index result; receive the user's modification of the software code; from the received modification, obtain the modification method of the software code, and the first indicator result, The difference of the second indicator result is stored in the modification log library.
  • Finding the modification log matching the difference in the modification log library refers to that the difference between the stored first indicator result and the first indicator result is exactly the difference modification log. There may have been multiple revisions of the same difference in history. These multiple revisions will generate multiple revision logs. The difference between the result of the first indicator and the result of the second indicator in the multiple modification logs is the same, but the modification method of the corresponding modification may be different. At this time, the modification method with the most occurrences in the found modification log may be determined as the method requiring modification to the current software version.
  • This embodiment determines the current modification method that needs to be modified according to the historical modification method of the same first indicator result and the second indicator result, which ensures the objectivity of determining the modification method (because historically This is done), which realizes the automatic determination of the modification method.
  • the first index result includes first test values corresponding to multiple indicators
  • the second index result includes second test values corresponding to multiple indicators
  • the difference includes multiple index corresponding to
  • determine the modification mode corresponding to the discrepancy as a way to modify the current software version including: S610.
  • For the discrepancy corresponding to each indicator find the revision log matching the discrepancy from the revision log library ,
  • Each modification log in the modification log library has a first test value corresponding to multiple indicators obtained by running sample data on the software version after the previous upgrade and the software version before the upgrade, and multiple indicators The respective differences between the corresponding second test values and the modification method corresponding to the differences corresponding to the multiple indicators.
  • the modification method is the way in which users historically modify the code to eliminate the difference; S620. For each indicator, Determine the most frequent modification method in the found modification log; S630. Calculate the intersection or union of the code ranges determined for multiple indicators as a way to modify the current software version.
  • step S610 different from the embodiment of FIG. 5, in each modification log in the modification log library, instead of recording a difference between the results of the first indicator and the results of the second indicator, instead of focusing on multiple indicators, each The difference between the first indicator result and the second indicator result corresponding to the indicator is recorded in the modification log.
  • Each modification log also records the modification method that comprehensively considers the differences of these different indicators, and the modifications made by users in history.
  • step S630 since in step S620, a modification mode is determined for each indicator, and taking the intersection or union of them can be used as a way to modify the current software version.
  • the determined modification method is to increase the judgment branch; for the indicator of the rise and fall rate, the determined code range is to increase the loop statement and increase the judgment branch. If the intersection is taken, the determined modification method is to increase the judgment branch. If the union is taken, the determined code range is to increase the loop statement and increase the judgment branch.
  • This embodiment can ensure the objectivity of determining the modification method under the condition of multiple indicators, and realize the automatic determination of the modification method. Automation determines the scope and method of the code that needs to be modified, and it is easy to modify the code of the software, and the problem of customer service upgrade failure.
  • FIG. 7 is a block diagram of a code modification apparatus 700 according to an embodiment, including: a data running module 701 configured to run sample data on a current software version after software upgrade and a pre-upgrade software version before upgrade, respectively, to obtain separately The first index result corresponding to the current software version and the second index result corresponding to the previous software version; the upgrade success determination module 702 is configured to determine whether the upgrade is successful according to the difference between the first index result and the second index result; the code range is determined Module 703 is configured to determine the code range corresponding to the difference if the upgrade is unsuccessful, as a range that needs to be modified for the current software version.
  • a data running module 701 configured to run sample data on a current software version after software upgrade and a pre-upgrade software version before upgrade, respectively, to obtain separately The first index result corresponding to the current software version and the second index result corresponding to the previous software version
  • the upgrade success determination module 702 is configured to determine whether the upgrade is successful according to the difference between the first index result and the second index result
  • the first index result and the second index result are numerical values
  • the upgrade success determination module 702 is configured to: if the difference between the first index result and the second index result is less than a preset threshold, determine the upgrade success, otherwise, It is determined that the upgrade failed.
  • the code range determination module 703 is configured to: find a modification log matching the difference from the modification log library, and each modification log in the modification log library has the software version after the previous upgrade and the upgrade In the previous software version, the difference between the first indicator result and the second indicator result obtained by running the sample data, and the code range corresponding to the difference, the code range is the range in which the user historically modified the code to eliminate the difference; The code range with the most occurrences in the found modification log is determined as the range that needs to be modified for the current software version.
  • the first indicator result includes first test values corresponding to multiple indicators
  • the second indicator result includes second test values corresponding to multiple indicators
  • the difference includes differences corresponding to multiple indicators.
  • the code range determination module 703 is configured to: for the difference corresponding to each indicator, find the modification log matching the difference from the modification log library.
  • Each modification log in the modification log library has the software version and The software version before the second upgrade respectively runs the sample data to obtain the respective differences between the first test values corresponding to multiple indicators and the second test values corresponding to multiple indicators, and the differences corresponding to the multiple indicators Corresponding code range.
  • the code range is the range in which users have historically modified the code in order to eliminate the difference. For each indicator, determine the code range with the most occurrences in the modification log found; calculate the code range determined for multiple indicators Intersection or union, as the scope of the need to modify the current software version.
  • the device further includes: a modification mode determination module, configured to determine a modification mode corresponding to the difference as a way to modify the current software version.
  • the modification mode determination module is configured to: find a modification log that matches the difference from the modification log library, and each modification log in the modification log library has the software version after the previous upgrade and before the upgrade
  • the modification method is the way that users historically modify the code to eliminate the difference; The most frequent modification method in the found modification log is determined as the method that requires modification to the current software version.
  • the first indicator result includes first test values corresponding to multiple indicators
  • the second indicator result includes second test values corresponding to multiple indicators
  • the difference includes differences corresponding to multiple indicators.
  • the modification method determines that the module is configured to: for the difference corresponding to each indicator, find the modification log matching the difference from the modification log library.
  • Each modification log in the modification log library has the software version and the time after the previous upgrade.
  • the software version before the upgrade respectively runs the sample data to obtain the respective differences between the first test values corresponding to the multiple indicators and the second test values corresponding to the multiple indicators, and the differences corresponding to the multiple indicators
  • the modification method is the way that users historically modify the code in order to eliminate the difference; for each indicator, determine the modification method with the most occurrences in the modification log found; calculate the intersection of the code methods determined for multiple indicators Or union, as a way to modify the current software version.
  • the electronic device 800 of the embodiment of the present disclosure is described below with reference to FIG. 8.
  • the electronic device 800 shown in FIG. 8 is only an example, and should not bring any limitation to the function and use range of the embodiments of the present disclosure.
  • the electronic device 800 is represented in the form of a general-purpose computing device.
  • the electronic device 800 includes a central processing unit (CPU) 801, which can execute various appropriate according to a program stored in a read only memory (ROM) 802 or a program loaded from a storage section 808 into a random access memory (RAM) 803 Actions and processing.
  • ROM read only memory
  • RAM random access memory
  • various programs and data required for system operation are also stored.
  • the CPU 801, ROM 802, and RAM 803 are connected to each other through a bus 804.
  • An input/output (I/O) interface 805 is also connected to the bus 804.
  • the following components are connected to the I/O interface 805: an input section 806 including a keyboard, a mouse, etc.; an output section 807 including a liquid crystal display (LCD), etc., and a speaker; a storage section 808 including a hard disk, etc.;
  • the communication section 809 performs communication processing via a network such as the Internet.
  • the driver 810 is also connected to the I/O interface 805 as needed.
  • a removable medium 811 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like, is installed on the drive 810 as necessary, so that the computer program read out therefrom is installed into the storage section 808 as necessary.
  • embodiments of the present disclosure include a computer program product that includes a computer program carried on a computer-readable medium, the computer program containing program code for performing the method shown in the flowchart.
  • the computer program may be downloaded and installed from the network through the communication section 809, and/or installed from the removable medium 811.
  • CPU central processing unit
  • the present application also provides a computer non-volatile readable storage medium, which may be included in the electronic device described in the foregoing embodiment; or It exists alone without being assembled into the electronic device.
  • the computer non-volatile readable storage medium carries one or more programs 900, and when the one or more programs 900 are executed by one of the electronic devices, the electronic device is implemented as described above
  • the code modification method in. For example, implement the steps shown in Figure 1-6.
  • the computer non-volatile readable storage medium may be an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or device, or any combination of the above. More specific examples of computer non-volatile readable storage media may include: electrical connection with one or more wires, portable computer disk, hard disk, random access memory (RAM), read only memory (ROM), erasable Programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination of the foregoing.
  • the example embodiments described here can be implemented by software, or can be implemented by software in combination with necessary hardware. Therefore, the technical solution according to the embodiments of the present disclosure may be embodied in the form of a software product, which may be stored in a computer non-volatile readable storage medium (which may be a CD-ROM, U disk, mobile hard disk, etc.) Or on the network, several instructions are included to cause a computing device (which may be a personal computer, server, touch terminal, or network device, etc.) to perform the method according to the embodiments of the present disclosure.
  • a computer non-volatile readable storage medium which may be a CD-ROM, U disk, mobile hard disk, etc.
  • a computing device which may be a personal computer, server, touch terminal, or network device, etc.

Abstract

一种代码修改方法及装置、计算机可读介质及电子设备,该代码修改方法包括:在软件升级后的当前软件版本和升级前的前序软件版本上分别运行样本数据,以分别获取所述当前软件版本对应的第一指标结果以及所述前序软件版本对应的第二指标结果(S110);根据所述第一指标结果与所述第二指标结果的差异,确定升级是否成功(S120);如果升级不成功,确定与该差异对应的代码范围,作为需要对所述当前软件版本进行修改的范围(S130)。在一定程度上克服当软件升级后的测试失败时对代码进行修改依赖于人工判断,准确度不高,流程长的问题。

Description

代码修改方法及装置、计算机可读介质及电子设备
本申请要求2019年1月11日递交、发明名称为“代码修改方法及装置、计算机可读介质及电子设备”的中国专利申请CN201910025596.3的优先权,在此通过引用将其全部内容合并于此。
技术领域
本公开涉及计算机技术领域,具体涉及一种代码修改方法及装置、计算机可读介质及电子设备。
背景技术
在对软件升级进行测试的过程中,对于每一次升级,均要进行大量的测试。如果测试表明升级失败,则需要进一步修改代码,使得升级成功。例如,在对金融数据分析软件进行升级的过程中,开发者需要对修改的代码进行测试,并根据测试结果是否成功进一步修改代码,使得金融数据分析软件能够运行稳定。发明人意识到:在代码修改后,根据测试结果进行进一步修改的过程是十分繁杂的,需要开发人员不断的人工确定代码修改范围及方式,但由于开发人员对于不同测试结果的分析不同,判断的结果也会不同,因此可能会造成测试结果与修改不匹配,进而导致大量测试需要重复执行,使用的测试用例增多,测试流程变长。
发明内容
本公开的目的在于提供一种代码修改方法及相关设备,进而至少在一定程度上解决当软件升级后的测试失败时对代码进行修改依赖于人工判断,准确度不高,流程长的问题。
第一方面,提供了一种代码修改方法,包括:在软件升级后的当前软件版本和升级前的前序软件版本上分别运行样本数据,以分别获取所述当前软件版本对应的第一指标结果以及所述前序软件版本对应的第二指标结果;根据所述第一指标结果与所述第二指标结果的差异,确定升级是否成功;如果升级不成功,确定与该差异对应的代码范围,作为需要对所述当前软件版本进行修改的范围。
第二方面,提供了一种代码修改装置,包括:数据运行模块,用于在软件升级后的当前软件版本和升级前的前序软件版本上分别运行样本数据,以分别获取当前软件版本对应的第一指标结果以及所述前序软件版本对应的第二指标结果;升级成功确定模块,用于根据所述第一指标结果与所述第二指标结果的差异,确定升级是否成功;代码范围确定模块, 用于如果升级不成功,确定与该差异对应的代码范围,作为需要对所述当前软件版本进行修改的范围。
第三方面,提供了一种计算机非易失性可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上述实施例中的代码修改方法。
第四方面,提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上述的代码修改方法。
本公开实施例提供的技术方案可以带来以下有益效果:
在软件升级后的当前软件版本和升级前的前序软件版本上分别运行样本数据,以分别获取当前软件版本对应的第一指标结果以及所述前序软件版本对应的第二指标结果,根据所述第一指标结果与所述第二指标结果的差异,确定升级是否成功,如果升级不成功,确定与该差异对应的代码范围,作为需要对所述当前软件版本进行修改的范围。实践中,第一指标结果与所述第二指标结果的差异往往与代码需要修改的范围非常相关。当第一指标结果与所述第二指标结果的差异比较类似时,其升级遇到的问题是类似的,因此为解决这个问题需要修改代码中的范围也是类似的。通过上述的过程,能够使得测试结果与修改更加匹配,克服现有技术中当软件升级后的测试失败时对代码进行修改依赖于人工判断,准确度不高,流程长的问题,实现了升级失败后代码修改的自动化,且准确度高。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示意性示出本公开示例性实施例中一种代码修改方法的流程图;
图2示出图1中确定与该差异对应的代码范围,作为需要对当前软件版本进行修改的范围的步骤的流程图;
图3是根据另一个实施例示出的确定与该差异对应的代码范围,作为需要对当前软件版本进行修改的范围的步骤的流程图;
图4是根据另一实施例示出的一种代码修改方法的流程图;
图5是确定与该差异对应的修改方式,作为需要对当前软件版本进行修改的方式的步骤在一实施例中的流程图;
图6是确定与该差异对应的修改方式,作为需要对当前软件版本进行修改的方式的步骤在另一实施例中的流程图;
图7是根据一实施例示出的一种代码修改装置的模块示意图;
图8示出了适于用来实现本公开实施例的电子设备的计算机系统的结构示意图;
图9示意性示出了根据本公开的一些实施例的计算机非易失性可读存储介质的示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
图1是根据一实施例示出的代码修改方法的流程图。该方法的执行主体可以是具有软件分析、软件测试功能的服务器、客户端等。该代码修改方法包括步骤S110-S130:
在步骤S110中,在软件升级后的当前软件版本和升级前的前序软件版本上分别运行样本数据,以分别获取当前软件版本对应的第一指标结果以及前序软件版本对应的第二指标结果。
软件升级是指通过对软件的代码进行改造实现其功能、性能上的提升。当前软件版本是指软件升级后的软件版本。前序软件版本是指软件升级前的软件版本。尽管升级是为了获得软件功能、性能上的提升,但实践中并不总是能够获得软件功能、性能上的提升,因此每次升级后需要进行测试。测试时采用的数据叫做样本数据。在金融分析软件的测试中,样本数据可以是金融产品(例如股票、证券等)的运行数据,例如涨跌曲线图等。
指标是指评价升级后软件的性能所用的度量。例如在金融分析软件中,指标可以是持仓率、涨跌率等。指标结果是该指标测试后的具体数值。第一指标结果是指在升级后的软件版本中运行样本数据后软件版本输出的指标的具体数值。在金融分析系统中,第一指标 结果例如是将金融产品(例如股票、证券等)的运行数据、涨跌曲线图等等投入升级后的金融分析系统后,由金融分析系统输出的持仓率、涨跌率等度量的具体数值。
第二指标结果是指在升级前的软件版本中运行样本数据后软件版本输出的指标的具体数值。在金融分析系统中,第二指标结果可以是将金融产品(例如股票、证券等)的运行数据,例如涨跌曲线图等等投入升级前的金融分析系统后,由金融分析系统输出的持仓率、涨跌率等度量的具体数值。也就是说,对样本数据的分析(如输入金融分析系统中分析)可以得到指标的具体数值,也就是指标结果。
在步骤S120中,根据第一指标结果与第二指标结果的差异,确定升级是否成功。
第一指标结果和第二指标结果有可能是数值型的,也有可能是字符串型的。当第一指标结果和第二指标结果是数值型(例如持仓率、涨跌率等)时,第一指标结果与第二指标结果的差异是指第一指标结果减去第二指标结果的差。当第一指标结果和第二指标结果是字符串型(例如建议购买等级、持有性能等)时,第一指标结果与第二指标结果的差异是指第一指标结果的含义和第二指标结果的含义的接近程度。例如,建议购买等级为“高”和建议购买等级为“低”,其含义相差较远;而持有性能为“优秀”和“良好”,其含义相差较近。对于字符串型指标结果,第一指标结果和第二指标结果的差异可以通过查表的方式确定。该表中针对每种可能的第一指标结果和第二指标结果的组合,都列出了与该组合对应的差异,因此,可以通过基于数值型的第一指标结果和第二指标结果,查找该表,确定第一指标结果与第二指标结果的差异。
在一实施例中,第一指标结果与第二指标结果为数值型,步骤S120包括:判断第一指标结果和第二指标结果的差值是否小于预设阈值;如果第一指标结果与第二指标结果的差值小于预设阈值,则确定升级成功,反之,则确定升级失败。
预设阈值是预先设置的超过它升级就有可能失败的指标结果值。当第一指标结果与第二指标结果的差大于或等于预设阈值,则说明升级后这个软件的性能发生了很大的变化。同样的样本数据投入后产生的指标结果差异很大,因此应认定此时的升级有问题,升级不成功,反之,升级成功。
在一实施例中,第一指标结果与第二指标结果为字符串型,步骤S120包括:
根据第一指标结果和第二指标结果查找指标结果与差异对应关系表,得到与第一指标结果和第二指标结果的组合对应的差异,指标结果与差异对应关系表对应存储着任意两种指标结果和所对应的差异;如果得到的差异满足预定条件,则确定升级成功,反之,则确定升级失败。
指标结果与差异对应关系表存储着任意两种指标结果和所对应的差异的表,例如,如表1所示。预定条件是指一个规则,将得到的第一指标结果和第二指标结果的差异代入该规则后,如果符合该规则,则认为该差异满足该预定条件。例如,预定条件是“该差异是中或小”,如果得到的差异是“中”,则满足该预定条件,升级成功。如果得到的差异是“大”,则升级不成功。
另外,第一指标结果可能包括多个指标对应的第一测试值,第二指标结果可能包括多个指标对应的第二测试值,差异因此可能包括多个指标对应的差异。例如,多个指标包括持仓率和涨跌率。第一指标结果包括持仓率的第一指标结果和涨跌率的第一指标结果,第二指标结果包括持仓率的第二指标结果和涨跌率的第二指标结果,差异包括持仓率的差异和涨跌率的差异。
第一指标结果 第二指标结果 差异
…… …… ……
表1 指标结果与差异对应关系表
在差异包括多个指标对应的差异的情况下,步骤S120可以包括:对每个指标的第一指标结果和第二指标结果的差异进行指标差异认证;如果每个指标的第一指标结果和第二指标结果的差异的指标差异认证都认证成功,将确定升级成功,否则,确定升级不成功。指标差异认证是指对每个指标的第一指标结果和第二指标结果的差异是否对于升级效果来说可接受的判断。
在步骤S130中,如果升级不成功,确定与该差异对应的代码范围,作为需要对当前软件版本进行修改的范围。
若升级不成功,需要对当前软件版本的代码进行进一步修改,使得升级成功。为了进行这种修改,首先要获得需要修改当前软件版本的修改的范围。因此,确定与该差异对应的代码范围,作为当前软件版本需要进行修改的范围。代码范围可以用代码的索引号来表示。由于软件中各代码段都有索引号,用索引号就可以表示代码范围。例如,索引号3-5 表示索引号3对应的代码段-索引号5对应的代码段。
在一个实施例中,如图2所示,确定与该差异对应的代码范围,作为需要对当前软件版本进行修改的范围,包括:
步骤S210、从修改日志库中查找与差异匹配的修改日志,修改日志库中的每条修改日志具有对历史上一次升级后的软件版本和该次升级之前的软件版本分别运行样本数据得到的第一指标结果、以及第二指标结果之间的差异、以及与该差异对应的代码范围,代码范围是历史上用户为了消除该差异而修改代码的范围;步骤S220、将查找到的修改日志中出现次数最多的代码范围确定为需要对当前软件版本进行修改的范围。
修改日志是指针对软件的代码进行的每一次升级,对升级后的软件版本运行样本数据得到的第一指标结果、对升级前的软件版本运行样本数据得到的第二指标结果之间的差异、以及为了消除该差异修改的代码范围的记录。修改日志库用于存放修改日志。在软件只运行在一台用户终端上时,修改日志可以包括该用户终端的修改日志。在软件是中心化运行,即运行在多个终端,由一台中心化的服务器维护时,修改日志可以包括服务器的管理员的修改日志,也可以包括运行在的所有终端的用户的修改日志。
在一实施例中,该方法在步骤S110之前包括以下的步骤:在历史上每次对软件的代码进行升级后,在升级后的软件版本和升级前的软件版本上分别运行样本数据,以分别获得第一指标结果、以及第二指标结果;接收用户对软件的代码进行的修改;从接收到的修改中,获取对软件的代码的修改范围,与第一指标结果、第二指标结果的差异对应存储在修改日志库中。
在历史上每次对软件进行升级后,在升级后的软件版本和升级前的软件版本上分别运行样本数据,以分别获得第一指标结果、以及第二指标结果。这样,第一指标结果和第二指标结果之间就会有一个差异。面对该差异,有可能用户觉得差异较小,不想消除它,就不会对软件的代码进行修改。这样,就不会产生新的修改日志。但也有可能用户觉得该差异较大,想消除它,就会修改软件的代码。此时,从接收到的修改中,就能获取到其修改的代码的范围,该范围可以用索引号表示。例如,用户修改的代码集中在索引号3-5对应的代码段,因此,修改的代码范围是索引号3-5。
在修改日志库中查找与差异匹配的修改日志是指查找存储在修改日志库中的第一指标结果与第二指标结果的差异与差异相等的修改日志。历史上可能多次针对同一差异进行过修改,这多次修改会产生多个修改日志。这多个修改日志中的第一指标结果和第二指标结果的差异是一样的,但对应的修改的代码范围可能不同。这时,可以将查找到的修改日 志中出现次数最多的代码范围确定为需要对当前软件版本进行修改的范围。
例如,面对第一指标结果和第二指标结果的差异为“大”的情况,历史上可能做过3次修改,因此有3条匹配的修改日志,其中的代码范围分别是“索引号3-5”、“索引号1-2”、“索引号3-5”,由于索引号3-5是出现次数最多,因此,将索引号3-5确定为需要对当前软件版本进行修改的范围。
该实施例根据历史上面对同样的第一指标结果和第二指标结果的差异时用户做出的修改的代码范围,来确定当前需要修改的代码范围,保证了确定修改的代码范围的客观性(因为历史上是这样做的),实现了自动化确定修改的代码范围。
在另一实施例中,如图3所示,在第一指标结果包括多个指标对应的第一测试值,第二指标结果包括多个指标对应的测试值,差异包括多个指标对应的差异的情况下,确定与该差异对应的代码范围,作为需要对当前软件版本进行修改的范围,包括:
S310、针对每个指标对应的差异,从修改日志库中查找与差异匹配的修改日志,修改日志库中的每条修改日志具有对历史上一次升级后的软件版本和该次升级之前的软件版本分别运行样本数据得到的与多个指标对应的第一测试值、以及与多个指标对应的第二测试值之间的各自的差异、以及与该多个指标对应的差异对应的代码范围,代码范围是历史上用户为了消除该差异而修改代码的范围;S320、针对每个指标,确定查找到的修改日志中出现次数最多的代码范围;S330、计算针对多个指标确定的代码范围的交集或并集,作为需要对当前软件版本进行修改的范围。
与图2的实施例不同的是,步骤S310中修改日志库中的每条修改日志中,不是记载一个第一指标结果和第二指标结果的差异,而是针对多个指标,将各个指标对应的第一指标结果和第二指标结果的差异都记录在修改日志中。每个修改日志还记录了综合考虑这些不同指标的差异,历史上用户进行的修改对应的修改范围。由于步骤S320针对每个指标确定了一个代码范围,在步骤S330中,取它们的交集或并集,作为需要对当前软件版本进行修改的范围。如,针对持仓率,确定的代码范围是索引号3-5;针对涨跌率,确定的代码范围是索引号4-6。如果取交集,则确定的代码范围是索引号4-5。如果取并集,则确定的代码范围是索引号3-6。该实施例能够在多个指标的情况下,保证确定修改的代码范围的客观性,实现自动化确定修改的代码范围。
如图4所示,在一实施例中,在步骤S130后,方法还包括:步骤S140、确定与该差异对应的修改方式,作为需要对当前软件版本进行修改的方式。修改方式是指对软件的代码进行修改的方式,例如增加判断分支、删除判断分支、增加循环语句、删除循环语句等。
在一实施例中,如图5所示,确定与该差异对应的修改方式,作为需要对当前软件版本进行修改的方式,包括:步骤S510、从修改日志库中查找与差异匹配的修改日志,修改日志库中的每条修改日志具有对历史上一次升级后的软件版本和该次升级之前的软件版本分别运行样本数据得到的第一指标结果、以及第二指标结果之间的差异、以及与该差异对应的修改方式,修改方式是历史上用户为了消除该差异而修改代码的方式;步骤S520、将查找到的修改日志中出现次数最多的修改方式确定为需要对当前软件版本进行修改的方式。
在一实施例中,为了维护修改日志库,该方法在步骤S110之前包括以下的步骤:在历史上每次对软件的代码进行升级后,在升级后的软件版本和升级前的软件版本上分别运行样本数据,以分别获得第一指标结果、以及第二指标结果;接收用户对软件的代码进行的修改;从接收到的修改中,获取对软件的代码的修改方式,与第一指标结果、第二指标结果的差异对应存储在修改日志库中。
修改日志库中查找与差异匹配的修改日志是指存储的第一指标结果与第一指标结果的差异正好是差异的修改日志。历史上可能多次针对同一差异进行过修改,这多次修改会产生多个修改日志。这多个修改日志中的第一指标结果和第二指标结果的差异是一样的,但对应修改的修改方式可能不同。这时,可以将查找到的修改日志中出现次数最多的修改方式确定为需要对当前软件版本进行修改的方式。
例如,面对第一指标结果和第二指标结果的差异为“大”,历史上做过3次修改,因此有3条匹配的修改日志,其中的修改方式分别是“增加判断分支”、“增加循环语句”、“增加判断分支”,由于“增加判断分支”是出现次数最多,因此,将“增加判断分支”确定为需要对当前软件版本进行修改的方式。
该实施例根据历史上对同样的第一指标结果和第二指标结果的差异用户做出的修改的方式,来确定当前需要进行修改的修改方式,保证了确定修改方式的客观性(因为历史上是这样做的),实现了自动化确定修改方式。
在另一实施例中,如图6所示,在第一指标结果包括多个指标对应的第一测试值,第二指标结果包括多个指标对应的第二测试值,差异包括多个指标对应的差异的情况下,确定与该差异对应的修改方式,作为需要对当前软件版本进行修改的方式,包括:S610、针对每个指标对应的差异,从修改日志库中查找与差异匹配的修改日志,修改日志库中的每条修改日志具有对历史上一次升级后的软件版本和该次升级之前的软件版本分别运行样本数据得到的与多个指标对应的第一测试值、以及与多个指标对应的第二测试值之间的各 自的差异、以及与该多个指标对应的差异对应的修改方式,修改方式是历史上用户为了消除该差异而修改代码的方式;S620、针对每个指标,确定查找到的修改日志中出现次数最多的修改方式;S630、计算针对多个指标确定的代码范围的交集或并集,作为需要对当前软件版本进行修改的方式。
在步骤S610中,与图5的实施例不同的是,修改日志库中的每条修改日志中,不是记载一个第一指标结果和第二指标结果的差异,而是针对多个指标,将各个指标对应的第一指标结果和第二指标结果的差异都记录在修改日志中。每个修改日志还记录了综合考虑这些不同指标的差异,历史上用户进行的修改对应的修改方式。在步骤S630中,由于在步骤S620中,针对每个指标确定了一个修改方式,取它们的交集或并集,就可以作为需要对当前软件版本进行修改的方式。例如,针对持仓率这个指标,确定的修改方式是增加判断分支;针对涨跌率这个指标,确定的代码范围是增加循环语句并增加判断分支。如果取交集,则确定的修改方式是增加判断分支。如果取并集,则确定的代码范围是增加循环语句并增加判断分支。该实施例能够在多个指标的情况下,保证确定修改方式的客观性,实现自动化确定修改方式。自动化确定了需要修改的代码范围和修改方式,就可以方便地对软件的代码进行修改,客服升级失败的问题。
图7是根据一实施例示出的代码修改装置700的框图,包括:数据运行模块701,配置为在软件升级后的当前软件版本和升级前的前序软件版本上分别运行样本数据,以分别获取当前软件版本对应的第一指标结果以及前序软件版本对应的第二指标结果;升级成功确定模块702,配置为根据第一指标结果与第二指标结果的差异,确定升级是否成功;代码范围确定模块703,配置为如果升级不成功,确定与该差异对应的代码范围,作为需要对当前软件版本进行修改的范围。
在一实施例中,第一指标结果与第二指标结果为数值,升级成功确定模块702配置为:如果第一指标结果与第二指标结果的差小于预设阈值,则确定升级成功,反之,则确定升级失败。
在一实施例中,代码范围确定模块703配置为:从修改日志库中查找与差异匹配的修改日志,修改日志库中的每条修改日志具有对历史上一次升级后的软件版本和该次升级之前的软件版本分别运行样本数据得到的第一指标结果、以及第二指标结果之间的差异、以及与该差异对应的代码范围,代码范围是历史上用户为了消除该差异而修改代码的范围;将查找到的修改日志中出现次数最多的代码范围确定为需要对当前软件版本进行修改的范围。
在一实施例中,第一指标结果包括多个指标对应的第一测试值,第二指标结果包括多个指标对应的第二测试值,差异包括多个指标对应的差异。代码范围确定模块703配置为:针对每个指标对应的差异,从修改日志库中查找与差异匹配的修改日志,修改日志库中的每条修改日志具有对历史上一次升级后的软件版本和该次升级之前的软件版本分别运行样本数据得到的与多个指标对应的第一测试值、以及与多个指标对应的第二测试值之间的各自的差异、以及与该多个指标对应的差异对应的代码范围,代码范围是历史上用户为了消除该差异而修改代码的范围;针对每个指标,确定查找到的修改日志中出现次数最多的代码范围;计算针对多个指标确定的代码范围的交集或并集,作为需要对当前软件版本进行修改的范围。
在一实施例中,该装置还包括:修改方式确定模块,用于确定与该差异对应的修改方式,作为需要对当前软件版本进行修改的方式。
在一实施例中,修改方式确定模块配置为:从修改日志库中查找与差异匹配的修改日志,修改日志库中的每条修改日志具有对历史上一次升级后的软件版本和该次升级之前的软件版本分别运行样本数据得到的第一指标结果、以及第二指标结果之间的差异、以及与该差异对应的修改方式,修改方式是历史上用户为了消除该差异而修改代码的方式;将查找到的修改日志中出现次数最多的修改方式确定为需要对当前软件版本进行修改的方式。
在一实施例中,第一指标结果包括多个指标对应的第一测试值,第二指标结果包括多个指标对应的第二测试值,差异包括多个指标对应的差异。修改方式确定模块配置为:针对每个指标对应的差异,从修改日志库中查找与差异匹配的修改日志,修改日志库中的每条修改日志具有对历史上一次升级后的软件版本和该次升级之前的软件版本分别运行样本数据得到的与多个指标对应的第一测试值、以及与多个指标对应的第二测试值之间的各自的差异、以及与该多个指标对应的差异对应的修改方式,修改方式是历史上用户为了消除该差异而修改代码的方式;针对每个指标,确定查找到的修改日志中出现次数最多的修改方式;计算针对多个指标确定的代码方式的交集或并集,作为需要对当前软件版本进行修改的方式。
下面参考图8来描述本公开实施例的电子设备800。图8示出的电子设备800仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图8所示,电子设备800以通用计算设备的形式表现。电子设备800包括中央处理单元(CPU)801,其可以根据存储在只读存储器(ROM)802中的程序或者从存储部分808加载到随机访问存储器(RAM)803中的程序而执行各种适当的动作和处理。在RAM 803 中,还存储有系统操作所需的各种程序和数据。CPU 801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。
以下部件连接至I/O接口805:包括键盘、鼠标等的输入部分806;包括诸如液晶显示器(LCD)等以及扬声器等的输出部分807;包括硬盘等的存储部分808;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分809。通信部分809经由诸如因特网的网络执行通信处理。驱动器810也根据需要连接至I/O接口805。可拆卸介质811,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器810上,以便于从其上读出的计算机程序根据需要被安装入存储部分808。
上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分809从网络上被下载和安装,和/或从可拆卸介质811被安装。在该计算机程序被中央处理单元(CPU)801执行时,执行本申请的系统中限定的上述功能。
作为另一方面,本申请还提供了一种计算机非易失性可读存储介质,该计算机非易失性可读存储介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。参考图9所示,上述计算机非易失性可读存储介质承载有一个或者多个程序900,当上述一个或者多个程序900被一个该电子设备执行时,使得该电子设备实现如上述实施例中的代码修改方法。例如实现如图1-6所示的各个步骤。
计算机非易失性可读存储介质可以是电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机非易失性可读存储介质的更具体的例子可以包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个计算机非易失性可读存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本公开实施方式的方法。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可 以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

Claims (28)

  1. 一种代码修改方法,包括:在软件升级后的当前软件版本和升级前的前序软件版本上分别运行样本数据,以分别获取所述当前软件版本对应的第一指标结果以及所述前序软件版本对应的第二指标结果;根据所述第一指标结果与所述第二指标结果的差异,确定升级是否成功;如果升级不成功,确定与该差异对应的代码范围,作为需要对所述当前软件版本进行修改的范围。
  2. 根据权利要求1所述的方法,其中,所述第一指标结果与所述第二指标结果为数值,所述根据所述第一指标结果与所述第二指标结果的差异,确定升级是否成功,包括:判断所述第一指标结果和所述第二指标结果的差值是否小于预设阈值;如果所述第一指标结果与所述第二指标结果的差值小于所述预设阈值,则确定升级成功,反之,则确定升级不成功。
  3. 根据权利要求1所述的方法,其中,所述确定与该差异对应的代码范围,作为需要对所述当前软件版本进行修改的范围,包括:从修改日志库中查找与所述差异匹配的修改日志,修改日志库中的每条修改日志具有对历史上一次升级后的软件版本和该次升级之前的软件版本分别运行样本数据得到的第一指标结果、以及第二指标结果之间的差异、以及与该差异对应的代码范围,所述代码范围是历史上用户为了消除该差异而修改代码的范围;将查找到的修改日志中出现次数最多的代码范围确定为需要对所述当前软件版本进行修改的范围。
  4. 根据权利要求1所述的方法,其中,所述第一指标结果包括多个指标对应的第一测试值,所述第二指标结果包括所述多个指标对应的第二测试值,所述差异包括所述多个指标对应的差异;所述确定与该差异对应的代码范围,作为需要对所述当前软件版本进行修改的范围,包括:针对每个指标对应的差异,从修改日志库中查找与所述差异匹配的修改日志,修改日志库中的每条修改日志具有对历史上一次升级后的软件版本和该次升级之前的软件版本分别运行样本数据得到的与多个指标对应的第一测试值、以及与所述多个指标对应的第二测试值之间的各自的差异、以及与该多个指标对应的差异对应的代码范围,所述代码范围是历史上用户为了消除该差异而修改代码的范围;针对每个指标,确定查找到的修改日志中出现次数最多的代码范围;计算针对所述多个指标确定的代码范围的交集或并集,作为需要对所述当前软件版本进行修改的范围。
  5. 根据权利要求1所述的方法,其中,在确定与该差异对应的代码范围,作为需要对所述当前软件版本进行修改的范围后,所述方法还包括:确定与该差异对应的修改 方式,作为需要对所述当前软件版本进行修改的方式。
  6. 根据权利要求5所述的方法,其中,所述确定与该差异对应的修改方式,作为需要对所述当前软件版本进行修改的方式,包括:从修改日志库中查找与所述差异匹配的修改日志,修改日志库中的每条修改日志具有对历史上一次升级后的软件版本和该次升级之前的软件版本分别运行样本数据得到的第一指标结果、以及第二指标结果之间的差异、以及与该差异对应的修改方式,所述修改方式是历史上用户为了消除该差异而修改代码的方式;将查找到的修改日志中出现次数最多的修改方式确定为需要对所述当前软件版本进行修改的方式。
  7. 根据权利要求5所述的方法,其中,所述第一指标结果包括多个指标对应的第一测试值,所述第二指标结果包括所述多个指标对应的第二测试值,所述差异包括所述多个指标对应的差异;所述确定与该差异对应的修改方式,作为需要对所述当前软件版本进行修改的方式,包括:
    针对每个指标对应的差异,从修改日志库中查找与所述差异匹配的修改日志,修改日志库中的每条修改日志具有对历史上一次升级后的软件版本和该次升级之前的软件版本分别运行样本数据得到的与多个指标对应的第一测试值、以及与所述多个指标对应的第二测试值之间的各自的差异、以及与该多个指标对应的差异对应的修改方式,所述修改方式是历史上用户为了消除该差异而修改代码的方式;针对每个指标,确定查找到的修改日志中出现次数最多的修改方式;计算针对所述多个指标确定的代码方式的交集或并集,作为需要对所述当前软件版本进行修改的方式。
  8. 一种代码修改装置,包括:数据运行模块,配置为在软件升级后的当前软件版本和升级前的前序软件版本上分别运行样本数据,以分别获取所述当前软件版本对应的第一指标结果以及所述前序软件版本对应的第二指标结果;升级成功确定模块,配置为根据所述第一指标结果与所述第二指标结果的差异,确定升级是否成功;代码范围确定模块,配置为如果升级不成功,确定与该差异对应的代码范围,作为需要对所述当前软件版本进行修改的范围。
  9. 根据权利要求8所述的装置,其中,所述第一指标结果与所述第二指标结果为数值,所述升级成功确定模块被配置为:判断所述第一指标结果和所述第二指标结果的差值是否小于预设阈值;如果所述第一指标结果与所述第二指标结果的差值小于所述预设阈值,则确定升级成功,反之,则确定升级不成功。
  10. 根据权利要求8所述的装置,其中,所述代码范围确定模块被配置为:
    从修改日志库中查找与所述差异匹配的修改日志,修改日志库中的每条修改日志具有对历史上一次升级后的软件版本和该次升级之前的软件版本分别运行样本数据得到的第一指标结果、以及第二指标结果之间的差异、以及与该差异对应的代码范围,所述代码范围是历史上用户为了消除该差异而修改代码的范围;将查找到的修改日志中出现次数最多的代码范围确定为需要对所述当前软件版本进行修改的范围。
  11. 根据权利要求8所述的装置,其中,所述第一指标结果包括多个指标对应的第一测试值,所述第二指标结果包括所述多个指标对应的第二测试值,所述差异包括所述多个指标对应的差异;所述代码范围确定模块被配置为:
    针对每个指标对应的差异,从修改日志库中查找与所述差异匹配的修改日志,修改日志库中的每条修改日志具有对历史上一次升级后的软件版本和该次升级之前的软件版本分别运行样本数据得到的与多个指标对应的第一测试值、以及与所述多个指标对应的第二测试值之间的各自的差异、以及与该多个指标对应的差异对应的代码范围,所述代码范围是历史上用户为了消除该差异而修改代码的范围;针对每个指标,确定查找到的修改日志中出现次数最多的代码范围;计算针对所述多个指标确定的代码范围的交集或并集,作为需要对所述当前软件版本进行修改的范围。
  12. 根据权利要求8所述的装置,其中,所述装置还包括:修改方式确定模块,配置为确定与该差异对应的修改方式,作为需要对所述当前软件版本进行修改的方式。
  13. 根据权利要求12所述的装置,其中,所述修改方式确定模块被配置为:
    从修改日志库中查找与所述差异匹配的修改日志,修改日志库中的每条修改日志具有对历史上一次升级后的软件版本和该次升级之前的软件版本分别运行样本数据得到的第一指标结果、以及第二指标结果之间的差异、以及与该差异对应的修改方式,所述修改方式是历史上用户为了消除该差异而修改代码的方式;将查找到的修改日志中出现次数最多的修改方式确定为需要对所述当前软件版本进行修改的方式。
  14. 根据权利要求12所述的装置,其中,所述第一指标结果包括多个指标对应的第一测试值,所述第二指标结果包括所述多个指标对应的第二测试值,所述差异包括所述多个指标对应的差异;所述修改方式确定模块被配置为:
    针对每个指标对应的差异,从修改日志库中查找与所述差异匹配的修改日志,修改日志库中的每条修改日志具有对历史上一次升级后的软件版本和该次升级之前的软件版本分别运行样本数据得到的与多个指标对应的第一测试值、以及与所述多个指标对应的第二测试值之间的各自的差异、以及与该多个指标对应的差异对应的修改方式,所述 修改方式是历史上用户为了消除该差异而修改代码的方式;针对每个指标,确定查找到的修改日志中出现次数最多的修改方式;计算针对所述多个指标确定的代码方式的交集或并集,作为需要对所述当前软件版本进行修改的方式。
  15. 一种电子设备,包括:一个或多个处理器;以及存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时实现如下步骤:在软件升级后的当前软件版本和升级前的前序软件版本上分别运行样本数据,以分别获取所述当前软件版本对应的第一指标结果以及所述前序软件版本对应的第二指标结果;根据所述第一指标结果与所述第二指标结果的差异,确定升级是否成功;如果升级不成功,确定与该差异对应的代码范围,作为需要对所述当前软件版本进行修改的范围。
  16. 根据权利要求15所述的电子设备,其中,所述第一指标结果与所述第二指标结果为数值,在所述根据所述第一指标结果与所述第二指标结果的差异的步骤中,所述处理器被配置为:判断所述第一指标结果和所述第二指标结果的差值是否小于预设阈值;如果所述第一指标结果与所述第二指标结果的差值小于所述预设阈值,则确定升级成功,反之,则确定升级不成功。
  17. 根据权利要求15所述的电子设备,其中,在所述确定与该差异对应的代码范围,作为需要对所述当前软件版本进行修改的范围的步骤中,所述处理器被配置为:
    从修改日志库中查找与所述差异匹配的修改日志,修改日志库中的每条修改日志具有对历史上一次升级后的软件版本和该次升级之前的软件版本分别运行样本数据得到的第一指标结果、以及第二指标结果之间的差异、以及与该差异对应的代码范围,所述代码范围是历史上用户为了消除该差异而修改代码的范围;将查找到的修改日志中出现次数最多的代码范围确定为需要对所述当前软件版本进行修改的范围。
  18. 根据权利要求15所述的电子设备,其中,所述第一指标结果包括多个指标对应的第一测试值,所述第二指标结果包括所述多个指标对应的第二测试值,所述差异包括所述多个指标对应的差异;在所述确定与该差异对应的代码范围,作为需要对所述当前软件版本进行修改的范围的步骤中,所述处理器被配置为:
    针对每个指标对应的差异,从修改日志库中查找与所述差异匹配的修改日志,修改日志库中的每条修改日志具有对历史上一次升级后的软件版本和该次升级之前的软件版本分别运行样本数据得到的与多个指标对应的第一测试值、以及与所述多个指标对应的第二测试值之间的各自的差异、以及与该多个指标对应的差异对应的代码范围,所述代码范围是历史上用户为了消除该差异而修改代码的范围;针对每个指标,确定查找到 的修改日志中出现次数最多的代码范围;计算针对所述多个指标确定的代码范围的交集或并集,作为需要对所述当前软件版本进行修改的范围。
  19. 根据权利要求15所述的电子设备,其中,在所述确定与该差异对应的代码范围,作为需要对所述当前软件版本进行修改的范围的步骤之后,所述处理器被配置为:
    确定与该差异对应的修改方式,作为需要对所述当前软件版本进行修改的方式。
  20. 根据权利要求19所述的电子设备,其中,在所述确定与该差异对应的修改方式,作为需要对所述当前软件版本进行修改的方式的步骤中,所述处理器被配置为:
    从修改日志库中查找与所述差异匹配的修改日志,修改日志库中的每条修改日志具有对历史上一次升级后的软件版本和该次升级之前的软件版本分别运行样本数据得到的第一指标结果、以及第二指标结果之间的差异、以及与该差异对应的修改方式,所述修改方式是历史上用户为了消除该差异而修改代码的方式;将查找到的修改日志中出现次数最多的修改方式确定为需要对所述当前软件版本进行修改的方式。
  21. 根据权利要求19所述的电子设备,其中,所述第一指标结果包括多个指标对应的第一测试值,所述第二指标结果包括所述多个指标对应的第二测试值,所述差异包括所述多个指标对应的差异;在所述确定与该差异对应的修改方式,作为需要对所述当前软件版本进行修改的方式的步骤中,所述处理器被配置为:
    针对每个指标对应的差异,从修改日志库中查找与所述差异匹配的修改日志,修改日志库中的每条修改日志具有对历史上一次升级后的软件版本和该次升级之前的软件版本分别运行样本数据得到的与多个指标对应的第一测试值、以及与所述多个指标对应的第二测试值之间的各自的差异、以及与该多个指标对应的差异对应的修改方式,所述修改方式是历史上用户为了消除该差异而修改代码的方式;针对每个指标,确定查找到的修改日志中出现次数最多的修改方式;计算针对所述多个指标确定的代码方式的交集或并集,作为需要对所述当前软件版本进行修改的方式。
  22. 一种计算机非易失性可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现下步骤:在软件升级后的当前软件版本和升级前的前序软件版本上分别运行样本数据,以分别获取所述当前软件版本对应的第一指标结果以及所述前序软件版本对应的第二指标结果;根据所述第一指标结果与所述第二指标结果的差异,确定升级是否成功;如果升级不成功,确定与该差异对应的代码范围,作为需要对所述当前软件版本进行修改的范围。
  23. 根据权利要求22所述的计算机可读介质,其中,所述第一指标结果与所述第 二指标结果为数值,在所述根据所述第一指标结果与所述第二指标结果的差异,确定升级是否成功的步骤中,所述处理器被配置为:判断所述第一指标结果和所述第二指标结果的差值是否小于预设阈值;如果所述第一指标结果与所述第二指标结果的差值小于所述预设阈值,则确定升级成功,反之,则确定升级不成功。
  24. 根据权利要求22所述的计算机非易失性可读存储介质,其中,在所述确定与该差异对应的代码范围,作为需要对所述当前软件版本进行修改的范围的步骤中,所述处理器被配置为:从修改日志库中查找与所述差异匹配的修改日志,修改日志库中的每条修改日志具有对历史上一次升级后的软件版本和该次升级之前的软件版本分别运行样本数据得到的第一指标结果、以及第二指标结果之间的差异、以及与该差异对应的代码范围,所述代码范围是历史上用户为了消除该差异而修改代码的范围;将查找到的修改日志中出现次数最多的代码范围确定为需要对所述当前软件版本进行修改的范围。
  25. 根据权利要求22所述的计算机非易失性可读存储介质,其中,所述第一指标结果包括多个指标对应的第一测试值,所述第二指标结果包括所述多个指标对应的第二测试值,所述差异包括所述多个指标对应的差异;在所述确定与该差异对应的代码范围,作为需要对所述当前软件版本进行修改的范围的步骤中,所述处理器被配置为:
    针对每个指标对应的差异,从修改日志库中查找与所述差异匹配的修改日志,修改日志库中的每条修改日志具有对历史上一次升级后的软件版本和该次升级之前的软件版本分别运行样本数据得到的与多个指标对应的第一测试值、以及与所述多个指标对应的第二测试值之间的各自的差异、以及与该多个指标对应的差异对应的代码范围,所述代码范围是历史上用户为了消除该差异而修改代码的范围;针对每个指标,确定查找到的修改日志中出现次数最多的代码范围;计算针对所述多个指标确定的代码范围的交集或并集,作为需要对所述当前软件版本进行修改的范围。
  26. 根据权利要求22所述的计算机非易失性可读存储介质,其中,所述在确定与该差异对应的代码范围,作为需要对所述当前软件版本进行修改的范围之后,所述处理器被配置为:
    确定与该差异对应的修改方式,作为需要对所述当前软件版本进行修改的方式。
  27. 根据权利要求26所述的计算机非易失性可读存储介质,其中,在所述确定与该差异对应的修改方式,作为需要对所述当前软件版本进行修改的方式的步骤中,所述处理器被配置为:从修改日志库中查找与所述差异匹配的修改日志,修改日志库中的每条修改日志具有对历史上一次升级后的软件版本和该次升级之前的软件版本分别运行 样本数据得到的第一指标结果、以及第二指标结果之间的差异、以及与该差异对应的修改方式,所述修改方式是历史上用户为了消除该差异而修改代码的方式;将查找到的修改日志中出现次数最多的修改方式确定为需要对所述当前软件版本进行修改的方式。
  28. 根据权利要求26所述的计算机非易失性可读存储介质,其中,所述第一指标结果包括多个指标对应的第一测试值,所述第二指标结果包括所述多个指标对应的第二测试值,所述差异包括所述多个指标对应的差异;在所述确定与该差异对应的修改方式,作为需要对所述当前软件版本进行修改的方式的步骤中,所述处理器被配置为:
    针对每个指标对应的差异,从修改日志库中查找与所述差异匹配的修改日志,修改日志库中的每条修改日志具有对历史上一次升级后的软件版本和该次升级之前的软件版本分别运行样本数据得到的与多个指标对应的第一测试值、以及与所述多个指标对应的第二测试值之间的各自的差异、以及与该多个指标对应的差异对应的修改方式,所述修改方式是历史上用户为了消除该差异而修改代码的方式;针对每个指标,确定查找到的修改日志中出现次数最多的修改方式;计算针对所述多个指标确定的代码方式的交集或并集,作为需要对所述当前软件版本进行修改的方式。
PCT/CN2019/118079 2019-01-11 2019-11-13 代码修改方法及装置、计算机可读介质及电子设备 WO2020143313A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910025596.3A CN109857431B (zh) 2019-01-11 2019-01-11 代码修改方法及装置、计算机可读介质及电子设备
CN201910025596.3 2019-01-11

Publications (1)

Publication Number Publication Date
WO2020143313A1 true WO2020143313A1 (zh) 2020-07-16

Family

ID=66894465

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/118079 WO2020143313A1 (zh) 2019-01-11 2019-11-13 代码修改方法及装置、计算机可读介质及电子设备

Country Status (2)

Country Link
CN (1) CN109857431B (zh)
WO (1) WO2020143313A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109857431B (zh) * 2019-01-11 2022-06-03 平安科技(深圳)有限公司 代码修改方法及装置、计算机可读介质及电子设备
CN110362479B (zh) * 2019-06-19 2023-07-14 平安科技(深圳)有限公司 系统升级测试方法和系统
CN110413316B (zh) * 2019-07-31 2023-12-05 中国工商银行股份有限公司 面向区块链智能合约的非侵入式测试系统及方法
US11797416B2 (en) 2020-09-25 2023-10-24 International Business Machines Corporation Detecting performance degradation in remotely deployed applications
CN112988193B (zh) * 2021-03-26 2023-04-07 深圳壹账通创配科技有限公司 代码更新识别方法、装置、计算机设备及可读存储介质
CN113641573B (zh) * 2021-07-26 2024-05-07 安徽中科国创高可信软件有限公司 基于修订日志的程序分析软件自动化测试方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1536789A (zh) * 2003-04-09 2004-10-13 华为技术有限公司 通过波动分析辅助测试用例升级的方法
EP2189907A2 (en) * 2008-10-30 2010-05-26 Accenture Global Services GmbH Automated load model for computer performance testing
CN103631705A (zh) * 2012-08-24 2014-03-12 百度在线网络技术(北京)有限公司 一种针对搜索引擎的回归测试方法和装置
CN108491321A (zh) * 2018-03-06 2018-09-04 平安科技(深圳)有限公司 测试用例范围确定方法、装置及存储介质
CN109857431A (zh) * 2019-01-11 2019-06-07 平安科技(深圳)有限公司 代码修改方法及装置、计算机可读介质及电子设备

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015019504A1 (ja) * 2013-08-09 2015-02-12 富士通株式会社 検証方法、検証装置および検証プログラム
CN103942136B (zh) * 2014-04-21 2017-06-16 北京音之邦文化科技有限公司 日志统计策略配置方法和装置、日志统计方法和装置
CN105320585B (zh) * 2014-07-08 2019-04-02 北京启明星辰信息安全技术有限公司 一种实现应用故障诊断的方法及装置
CN106502725B (zh) * 2016-09-30 2019-08-20 歌尔科技有限公司 应用程序的升级方法、设备及电子设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1536789A (zh) * 2003-04-09 2004-10-13 华为技术有限公司 通过波动分析辅助测试用例升级的方法
EP2189907A2 (en) * 2008-10-30 2010-05-26 Accenture Global Services GmbH Automated load model for computer performance testing
CN103631705A (zh) * 2012-08-24 2014-03-12 百度在线网络技术(北京)有限公司 一种针对搜索引擎的回归测试方法和装置
CN108491321A (zh) * 2018-03-06 2018-09-04 平安科技(深圳)有限公司 测试用例范围确定方法、装置及存储介质
CN109857431A (zh) * 2019-01-11 2019-06-07 平安科技(深圳)有限公司 代码修改方法及装置、计算机可读介质及电子设备

Also Published As

Publication number Publication date
CN109857431A (zh) 2019-06-07
CN109857431B (zh) 2022-06-03

Similar Documents

Publication Publication Date Title
WO2020143313A1 (zh) 代码修改方法及装置、计算机可读介质及电子设备
US20220036244A1 (en) Systems and methods for predictive coding
CN109697522B (zh) 一种数据预测的方法和装置
US20200241872A1 (en) Systems and Methods for Automating and Monitoring Software Development Operations
US10810009B2 (en) Visualizations of software project and contributor activity
US11449335B2 (en) Weighting static analysis alerts
CN111367530B (zh) 基于自定义审核规则的代码审核方法、终端及服务器
US20210397634A1 (en) Automated processing of unstructured text data in paired data fields of a document
US11856129B2 (en) Systems and methods to manage models for call data
CN109460363B (zh) 自动化测试方法、装置、电子设备及计算机可读介质
CN114238993A (zh) 风险检测方法、装置、设备及介质
CN113032258A (zh) 一种电子地图的测试方法、装置、电子设备及存储介质
CN111459542A (zh) 推荐配置指标的确定方法、装置、系统、存储介质及设备
CN113296836B (zh) 训练模型的方法、测试方法、装置、电子设备及存储介质
CN113448869B (zh) 测试用例生成的方法、装置、电子设备及计算机可读介质
CN107229487B (zh) 代码处理方法及装置
US11809309B2 (en) Test result stability scoring in integration testing
US20230205676A1 (en) Code integration with time-variant test failure detection
US20220309047A1 (en) Automatic tuning of thresholds and weights for pair analysis in a master data management system
CN108509347B (zh) 等价变异体识别方法及装置
CN108509455B (zh) 数据表处理方法和装置
CN114296759A (zh) 应用程序的更新版本异常的确定方法及装置
CN116257432A (zh) 业务系统测试方法和装置
CN117421248A (zh) 一种软件测试方法、装置、电子设备及计算机可读介质
CN113342634A (zh) 软件质量评估的方法和装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19909417

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19909417

Country of ref document: EP

Kind code of ref document: A1