CN111104319A - 一种代码覆盖率测试方法、装置、电子设备及存储介质 - Google Patents

一种代码覆盖率测试方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN111104319A
CN111104319A CN201911286144.7A CN201911286144A CN111104319A CN 111104319 A CN111104319 A CN 111104319A CN 201911286144 A CN201911286144 A CN 201911286144A CN 111104319 A CN111104319 A CN 111104319A
Authority
CN
China
Prior art keywords
code
code file
file
test
coverage rate
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.)
Pending
Application number
CN201911286144.7A
Other languages
English (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.)
Beijing Tongbang Zhuoyi Technology Co Ltd
Original Assignee
Beijing Tongbang Zhuoyi Technology 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 Beijing Tongbang Zhuoyi Technology Co Ltd filed Critical Beijing Tongbang Zhuoyi Technology Co Ltd
Priority to CN201911286144.7A priority Critical patent/CN111104319A/zh
Publication of CN111104319A publication Critical patent/CN111104319A/zh
Pending legal-status Critical Current

Links

Images

Classifications

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

Landscapes

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

Abstract

本申请涉及一种代码覆盖率的测试方法、装置、电子设备及存储介质,该方法包括:接收测试请求,所述测试请求中携带第一代码文件;对所述第一代码文件进行插桩得到第二代码文件;对所述第二代码文件进行测试得到代码覆盖率信息;根据所述代码覆盖率信息得到测试结果。该技术方案通过对第一代码文件进行插桩,能够在代码运行的过程中得到代码覆盖率,由此可以实现在测试完成后得到更确切的代码覆盖率,提高了测试效果的有效性,另还可以根据代码覆盖率对测试效果进行有效评估,解决了现有的测试方法中测试效果可靠性不高的技术问题。

Description

一种代码覆盖率测试方法、装置、电子设备及存储介质
技术领域
本申请涉及软件测试领域,尤其涉及一种代码覆盖率测试方法、装置、电子设备及存储介质。
背景技术
随着互联网技术的发展,软件更新的速度也越来越快,对于测试而言需要全面的对研发提供的代码文件进行测试。在实现本发明的过程中,发明人发现目前的测试工作中,只是针对代码文件的功能层面进行测试,代码文件的功能是能测试通过的。但是无法对代码文件中所有的代码进行全面测试,同时在测试完成后代码覆盖率达到多少,没有确切的评估方式,从而引发后续问题。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本申请实施例提供了一种代码覆盖率测试方法、装置、电子设备及存储介质。
第一方面,本申请实施例提供了一种代码覆盖率测试方法,包括:
接收测试请求,所述测试请求中携带第一代码文件;
对所述第一代码文件进行插桩得到第二代码文件;
对所述第二代码文件进行测试得到代码覆盖率信息;
根据所述代码覆盖率信息得到测试结果。
可选的,所述对所述第一代码文件进行插桩得到第二代码文件,包括:
获取监控代码文件;
将所述监控代码文件植入所述第一代码文件得到所述第二代码文件。
可选的,所述代码覆盖率信息包括已执行代码行数;
所述对所述第二代码文件进行测试得到代码覆盖率信息,包括:
通过所述监控代码文件对所述第一代码文件的执行进行监控,得到所述第一代码文件中已执行代码行数。
可选的,所述对所述第二代码文件进行测试得到代码覆盖率信息,还包括:
获取所述已执行代码行数对应的代码行编号以及代码内容;
根据所述代码行编号和代码内容得到执行轨迹;
根据所述已执行代码行数以及所述执行轨迹得到所述代码覆盖率信息。
可选的,所述方法还包括:
基于所述代码覆盖率信息确定所述第一代码文件中未执行代码;
根据所述执行轨迹确定所述未执行代码的问题类型;
根据所述问题类型执行相应的处理操作。
可选的,所述代码内容包括:参数信息以及变量信息;
所述根据所述执行轨迹确定所述未执行代码的问题类型,包括:
根据所述参数信息以及变量信息确定所述未执行代码的问题类型。
可选的,所述根据所述问题类型执行相应的处理操作,包括以下至少一项:
更新所述第一代码文件对应的测试用例;
将所述第一代码文件发送至预设终端。
第二方面,本申请实施例提供了一种代码覆盖率测试装置,包括:
接收模块,用于接收测试请求,所述测试请求中携带第一代码文件;
插桩模块,用于对所述第一代码文件进行插桩得到第二代码文件;
执行模块,用于对所述第二代码文件进行测试得到代码覆盖率信息;
处理模块,用于根据所述代码覆盖率信息得到测试结果。
第三方面,本申请提供了一种电子设备,包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行计算机程序时,实现上述方法步骤。
第四方面,本申请提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述方法步骤。
本申请实施例提供的上述技术方案与现有技术相比具有如下优点:通过对第一代码文件进行插桩,能够在代码运行的过程中得到代码覆盖率信息,由此可以实现在测试完成后得到更确切的代码覆盖率,提高了测试效果的有效性,另还可以根据代码覆盖率对测试效果进行有效评估,解决了现有的测试方法中测试效果可靠性不高的技术问题。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种代码覆盖率测试方法的流程图;
图2为本申请另一实施例提供的一种代码覆盖率测试方法的流程图;
图3为本申请实施例提供的一种代码覆盖率测试装置的框图;
图4为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供了一种代码覆盖测试方法、装置、电子设备及存储介质。本申请实施例所提供的方法可以应用于任意需要的电子设备,例如,可以为服务器、终端等电子设备,在此不做具体限定,为描述方便,后续简称为电子设备,下面首先对本发明实施例所提供的一种代码覆盖率方法进行介绍。
图1为本申请实施例提供的一种代码覆盖测试方法的流程图。如图1所示,该方法包括以下步骤:
步骤S11,接收测试请求,测试请求中携带第一代码文件;
步骤S12,对第一代码文件进行插桩得到第二代码文件;
步骤S13,对第二代码文件进行测试得到代码覆盖率信息;
步骤S14,根据代码覆盖率信息得到测试结果。
本实施例通过对第一代码文件进行插桩,能够在其运行的过程中得到已执行代码行数以及执行轨迹,由此可以实现在测试完成后得到更确切的代码覆盖率,提高了测试效果的有效性。
具体来说,待测试软件是在特定环境下配合特定的选项或函式库所建立,所执行的每一个函式都会对应到原代码的机能点,代码覆盖的程序可以让程式开发者及品质保证单位可以找出程式在正常情形下不会执行或是很少执行的部分(例如异常处理程式),也帮助测试工程师确认最重要的条件(机能点)是否有测试到。测试结果可进行分析,确认哪一部分程式尚未执行到,后续再修改测试程式,对这部分进行必要的测试。
本实施例中,测试请求可以是通过测试人员发起,当接收到测试请求时,对其进行拦截并对测试请求中携带的第一代码文件进行插桩,其中,第一代码文件可以是整个程序的代码或者是一段代码。
插桩技术主要通过探针的方式来记录代码执行轨迹信息,本质上是进行信息采集的代码段,可以是赋值语句或采集覆盖信息的函数调用。其中插桩又分为两种模式On-The-Fly和Offine。例如:On-The-Fly模式优点在于无需修改源代码,可以在系统不停机的情况下,实时收集代码覆盖率信息。Offine模式优点在于系统启动不需要额外开启代理,但是只能在系统停机的情况下才能获取代码覆盖率。
具体的,本实施例采用的插桩方式为:获取监控代码文件,将监控代码文件植入第一代码文件得到第二代码文件。是在保证被测程序原有逻辑完整性的基础上在程序中插入监控代码,其用于在代码文件进行测试的时进行监控,并获取运行数据。
本实施例中,执行第二代码文件得到代码覆盖率信息,包括:获取第一代码文件对应的测试用例,根据测试用例述第一代码文件进行测试,由监控代码文件对第一代码文件进行监控,得到第一代码文件中已执行代码行数。
可选的,通过在测试过程中实时监测每一行代码的执行结果,如:一行代码被执行,则将该行的执行结果记录为被执行,而该行代码未被执行时,则将该行的执行结果记录为未执行;此时,代码覆盖率信息即为各代码行的执行结果的状态;在测试结束后,统计各代码行的执行结果的状态,从而得出已执行代码行数。
本实施例中,执行第二代码文件得到代码覆盖率信息,还包括:获取已执行代码行数对应的代码行编号,根据代码行编号以及相应的代码内容得到执行轨迹,根据已执行代码行数以及执行轨迹生成代码覆盖率信息,通过代码覆盖率信息得到测试结果。
例如:第一代码文件中包括BCDE四个路径,第一次测试时,在测试用例中调用了一次方法,那么假如这一次方法的调用执行了路径B,以及路径D,这样得到的代码覆盖率是50%。如果想提高代码覆盖率时,就要在测试用例中多次调用方法传入不同参数,在多次调用中让代码走其他的分支,比如多调用了一次方法,这次代码走了路径C和路径D,这样本质上调用两次,一次BD、一次CD,这样代码覆盖率就是75%。如果用多次调用把BCDE全部测试到了,那么代码覆盖率就是100%。
本实施例中所涉及的测试方法可以是自动化测试、功能测试单元测试,接口测试,UI自动化测试等方式,在此不做具体限定,测试记过可以包括代码文件的数据流信息和代码覆盖率信息。
综上所述,在测试过程中,通过监控代码对第一代码文件进行监控,得到代码覆盖率信息,通过对代码覆盖率信息分析,可以获得程序的数据流信息,进而得到逻辑覆盖等动态信息,从而实现测试目的的方法。另外,本实施例采用代码部署的方式对第一代码文件进行插桩,从而提高插桩的准确性和效率。可以理解为通过设置触发机制为代码部署触发机制,并通过代码部署时自动触发进行插桩。
图2为本申请另一实施例提供的一种代码覆盖率测试方法的流程图。如图2所示,该方法还包括以下步骤:
步骤S21,基于代码覆盖率信息确定第一代码文件中未执行代码;
步骤S22,根据执行轨迹确定未执行代码的问题类型;
步骤S23,根据问题类型执行相应的处理操作。
通过代码覆盖率信息可以对测试效果进行有效评估和指导,通过分析未执行代码能够确定其问题类型,解决了现有的测试方法中测试效果可靠性不高的技术问题。具体的,能够得到测试过程中已执行代码和未执行代码的位置,分析可能存在的风险。还可以构建代码调用关系,精准的回归测试范围,避免了全量回归造成测试资源的浪费。
可选的,通过分析未执行代码能够确定其问题类型问题类型,例如:测试流程设计是否充分,可以进一步明确测试设计阶段的问题。同时还可以度量自动化用例,为自动化用例提供覆盖率统计情况,分析覆盖率报告,完善自动化用例。
本实施例中,获取第一代码文件的代码总行数,以及已执行代码行数确定第一代码文件中未执行代码,根据执行轨迹确定未执行代码的问题类型,根据问题类型执行相应的处理操作。
可选的,执行轨迹中的代码内容包括:参数信息以及变量信息;根据执行轨迹确定未执行代码的问题类型,具体的,根据参数信息以及变量信息确定未执行代码的问题类型。
例如:当参数的值为false时,导致空指针运行错误,其问题类型为传参错误;或者,代码流程包括多个分支,某个分支未被测试到时,其问题类型为测试用例不足以覆盖代码文件;或者,当定义的变量发生变化时,其问题类型为测试存在缺陷;或者测试过程中某一个环节未执行,或传错值,其问题类型为代码流程存在缺陷。另外,还可以判断代码是否为无效代码。
可选的,根据问题类型执行相应的处理操作,包括以下至少一项:更新所述第一代码文件对应的测试用例;或者将第一代码反馈给预设终端,由研发人员对流程进行优化;或者将无效代码删除。
经过对未执行代码进行分析可以对代码的测试质量有一个很好的把控。具体的,可以发现测试死角,冗余代码,历史废弃代码,有助于发现多个测试用例都覆盖不到的代码,以及收集代码覆盖率信息,为废弃代码提供依据。
测试工程师可以根据代码覆盖测试信息来调整测试用例、输入或是组态,以增加重要机能的代码覆盖率。例如:测试工程师常常会使用到指令覆盖及判断覆盖,前者会报告在测试中会执行到多少比例的程式码,后者会报告在测试中会执行到多少比例的的判断结果,二者都会输出一个覆盖率的度量,以百分比表示。其意义则需进行的代码覆盖种类来决定,67%的判断覆盖率会比67%的指令覆盖率会来得全面。
一般而言代码覆盖工具及函式库会影响程式性能,也会消耗内存或其他资源,无法在系统正常使用时测试。因此一般只在开发阶段进行,提供给客户的系统不会包括代码覆盖工具及函式库。也有一些软件无法用覆盖测试来测试,其代码覆盖率会用分析的方式来得到近似值。
本申请另一实施例还提供一种代码覆盖率测试方法,该方法包括:获取第一代码文件中的方法代码与功能模块之间的对应关系;根据代码覆盖率信息以及对应关系,确定已测试功能模块的代码和未测试功能模块的代码。
具体的,第一代码文件中可以包含多个方法,这些方法都具备相应的功能模块,例如包含M1、M2、M3三个方法,M1方法用于实现加入购物车,M2方法用于用户支付,M3方法用于生成订单等。通过对应关系,可以准确定位代码文件中的方法所具备的功能。具体的,获得对应关系可以通过:执行方法中的代码或者解析代码的注释来获得。
为了提高获得对应关系的效率,作为一个示例,可以采用脚本自动解析代码注释的方式获得方法代码与功能模块之间的对应关系,采用的脚本语言可以为Ruby、Python、Shell等。
本实施例中,根据代码覆盖率信息以及对应关系,确定已测试功能模块的代码和未测试功能模块的代码。具体的,对第二代码文件的代码覆盖率信息进行分析得到分析结果,进而根据分析结果和对应关系确定已测试功能模块的代码和未测试功能模块的代码。
可选的,确定已测试功能模块的代码和未测试功能模块的代码,包括:根据对应关系和已执行代码行,获得已测试的功能模块的代码,根据对应关系和未执行代码行,获得未测试的功能模块的代码。
例如:代码行编号为10-55的代码行对应的功能模块为M1(加入购物车),代码行编号为56-155的代码行对应的功能模块为M2(用户支付),代码行编号为156-300的代码行对应的功能模块为M3(生成订单)。
已执行代码的代码行编号为1-200,则确定已测试功能模块包括:M1(加入购物车)的全部代码行,M2(用户支付)的全部代码行以及M3(生成订单)中代码行编号为156-200的代码行,未测试的代码为M3(生成订单)中代码行编号为201-300的代码行。
之后确定代码行编号为201-300的代码行在M3(生成订单)中的子功能模块以及问题类型,例如,子功能模块可以是:订单编号生成,物流显示等等。问题类型可以是:代码流程错误等。将子功能以及问题类型发送至预设终端,由研发人员对此进行处理。
本申请实施例通过提供一种代码覆盖率的测试方法,可以利用脚本自动解析代码中的注释,并获得方法代码与功能模块之间的对应关系,并根据测试过程中的代码覆盖率信息和对应关系获得已测试功能模块与未测试功能模块的相关代码,从而指导进行完整测试,提高了测试效果的有效性。
图3为本申请实施例提供的一种代码覆盖率测试装置的框图,该装置可以通过软件、硬件或者两者的结合实现成为电子设备的部分或者全部。如图3所示,该代码覆盖率测试装置包括:
接收模块301,用于接收测试请求,测试请求中携带第一代码文件;
插桩模块302,用于对第一代码文件进行插桩得到第二代码文件;
执行模块303,用于对第二代码文件进行测试得到代码覆盖率信息;
处理模块304,用于根据代码覆盖率信息得到测试结果。
本申请实施例还提供一种电子设备,如图4所示,电子设备可以包括:处理器1501、通信接口1502、存储器1503和通信总线1504,其中,处理器1501,通信接口1502,存储器1503通过通信总线1504完成相互间的通信。
存储器1503,用于存放计算机程序;
处理器1501,用于执行存储器1503上所存放的计算机程序时,实现上述实施例的步骤。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,P C I)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(DigitalSignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本申请还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例的步骤。
需要说明的是,对于上述装置、电子设备及计算机可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
进一步需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。

Claims (10)

1.一种代码覆盖率的测试方法,其特征在于,包括:
接收测试请求,所述测试请求中携带第一代码文件;
对所述第一代码文件进行插桩得到第二代码文件;
对所述第二代码文件进行测试得到代码覆盖率信息;
根据所述代码覆盖率信息得到测试结果。
2.根据权利要求1所述的方法,其特征在于,所述对所述第一代码文件进行插桩得到第二代码文件,包括:
获取监控代码文件;
将所述监控代码文件植入所述第一代码文件得到所述第二代码文件。
3.根据权利要求2所述的方法,其特征在于,所述代码覆盖率信息包括已执行代码行数;
所述对所述第二代码文件进行测试得到代码覆盖率信息,包括:
通过所述监控代码文件对所述第一代码文件的执行进行监控,得到所述第一代码文件中已执行代码行数。
4.根据权利要求3所述的方法,其特征在于,所述对所述第二代码文件进行测试得到代码覆盖率信息,还包括:
获取所述已执行代码行数对应的代码行编号以及代码内容;
根据所述代码行编号和代码内容得到执行轨迹;
根据所述已执行代码行数以及所述执行轨迹得到所述代码覆盖率信息。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
基于所述代码覆盖率信息确定所述第一代码文件中未执行代码;
根据所述执行轨迹确定所述未执行代码的问题类型;
根据所述问题类型执行相应的处理操作。
6.根据权利要求5所述的方法,其特征在于,所述代码内容包括:参数信息以及变量信息;
所述根据所述执行轨迹确定所述未执行代码的问题类型,包括:
根据所述参数信息以及变量信息确定所述未执行代码的问题类型。
7.根据权利要求5所述的方法,其特征在于,所述根据所述问题类型执行相应的处理操作,包括以下至少一项:
更新所述第一代码文件对应的测试用例;
将所述第一代码文件和/或所述问题类型发送至预设终端。
8.一种代码覆盖率测试装置,其特征在于,包括:
接收模块,用于接收测试请求,所述测试请求中携带第一代码文件;
插桩模块,用于对所述第一代码文件进行插桩得到第二代码文件;
执行模块,用于对所述第二代码文件进行测试得到代码覆盖率信息;
处理模块,用于根据所述代码覆盖率信息得到测试结果。
9.一种电子设备,其特征在于,包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述计算机程序时,实现权利要求1-7任一项所述的方法步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1-7任一项所述的方法步骤。
CN201911286144.7A 2019-12-13 2019-12-13 一种代码覆盖率测试方法、装置、电子设备及存储介质 Pending CN111104319A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911286144.7A CN111104319A (zh) 2019-12-13 2019-12-13 一种代码覆盖率测试方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911286144.7A CN111104319A (zh) 2019-12-13 2019-12-13 一种代码覆盖率测试方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN111104319A true CN111104319A (zh) 2020-05-05

Family

ID=70422623

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911286144.7A Pending CN111104319A (zh) 2019-12-13 2019-12-13 一种代码覆盖率测试方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN111104319A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111930627A (zh) * 2020-08-12 2020-11-13 中国工商银行股份有限公司 Egl编程语言的代码覆盖率确定方法及装置
CN112631926A (zh) * 2020-12-29 2021-04-09 平安银行股份有限公司 代码测试覆盖率显示方法、装置、计算机设备及存储介质
CN113360402A (zh) * 2021-06-30 2021-09-07 展讯通信(天津)有限公司 一种测试方法、电子设备、芯片和存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080172655A1 (en) * 2007-01-15 2008-07-17 Microsoft Corporation Saving Code Coverage Data for Analysis
CN102521123A (zh) * 2011-11-24 2012-06-27 西安邮电学院 一种基于逻辑执行块的嵌入式软件测试插桩方法
US20130298110A1 (en) * 2012-05-02 2013-11-07 International Business Machines Corporation Software Visualization Using Code Coverage Information
CN106528411A (zh) * 2016-10-24 2017-03-22 网易(杭州)网络有限公司 覆盖率检测方法、装置和设备
CN106547698A (zh) * 2016-11-30 2017-03-29 网易(杭州)网络有限公司 覆盖率数据的处理方法、装置和服务器
CN110196801A (zh) * 2018-02-24 2019-09-03 武汉斗鱼网络科技有限公司 一种基于代码覆盖率的测试方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080172655A1 (en) * 2007-01-15 2008-07-17 Microsoft Corporation Saving Code Coverage Data for Analysis
CN102521123A (zh) * 2011-11-24 2012-06-27 西安邮电学院 一种基于逻辑执行块的嵌入式软件测试插桩方法
US20130298110A1 (en) * 2012-05-02 2013-11-07 International Business Machines Corporation Software Visualization Using Code Coverage Information
CN106528411A (zh) * 2016-10-24 2017-03-22 网易(杭州)网络有限公司 覆盖率检测方法、装置和设备
CN106547698A (zh) * 2016-11-30 2017-03-29 网易(杭州)网络有限公司 覆盖率数据的处理方法、装置和服务器
CN110196801A (zh) * 2018-02-24 2019-09-03 武汉斗鱼网络科技有限公司 一种基于代码覆盖率的测试方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
赵文耘等著: "《软件工程 方法与实践》", 31 December 2014, 复旦大学出版社 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111930627A (zh) * 2020-08-12 2020-11-13 中国工商银行股份有限公司 Egl编程语言的代码覆盖率确定方法及装置
CN111930627B (zh) * 2020-08-12 2023-09-26 中国工商银行股份有限公司 Egl编程语言的代码覆盖率确定方法及装置
CN112631926A (zh) * 2020-12-29 2021-04-09 平安银行股份有限公司 代码测试覆盖率显示方法、装置、计算机设备及存储介质
CN113360402A (zh) * 2021-06-30 2021-09-07 展讯通信(天津)有限公司 一种测试方法、电子设备、芯片和存储介质
CN113360402B (zh) * 2021-06-30 2023-08-11 展讯通信(天津)有限公司 一种测试方法、电子设备、芯片和存储介质

Similar Documents

Publication Publication Date Title
US8386851B2 (en) Functional coverage using combinatorial test design
US20080244536A1 (en) Evaluating static analysis results using code instrumentation
CN111104319A (zh) 一种代码覆盖率测试方法、装置、电子设备及存储介质
CN111124919A (zh) 一种用户界面的测试方法、装置、设备及存储介质
CN106776338B (zh) 一种测试方法、装置及服务器
CN107729255B (zh) 软件测试方法、装置及系统
CN108009085B (zh) 渠道包测试方法
CN110879781A (zh) 程序调试方法、装置、电子设备及计算机可读存储介质
CN110704306A (zh) 测试中的断言处理方法、装置、设备及存储介质
CN111382077B (zh) 应用程序崩溃原因定位方法、装置、电子设备及存储介质
CN109857637B (zh) 基于注解的Java语言方法覆盖率和方法输入输出统计方法
CN110908903B (zh) 一种基于可编辑yaml文件的测试方法
CN114660437A (zh) 一种波形文件生成方法及装置
CN116756037A (zh) 异常代码定位系统、方法、设备及计算机可读存储介质
CN116738091A (zh) 页面监控方法、装置、电子设备及存储介质
Cox Differential coverage:: automating coverage analysis
Papakitsos Robust Software Quality Assurance
CN110471829B (zh) 软件代码测试覆盖率的检查方法及装置
Gautam Comparison of Java Programming Testing Tools
CN117112398B (zh) 增量代码覆盖率检测方法、装置、电子设备及存储介质
CN116610550A (zh) 一种针对软件测试的信息处理方法、装置以及电子设备
CN111104318B (zh) 一种单元测试结果的导出方法、装置及电子设备
CN114116466B (zh) 一种基于操作日志的单元测试方法、装置及介质
Schilling et al. Modeling the reliability of existing software using static analysis
CN114676058A (zh) 一种覆盖率确定方法、装置、电子设备及存储介质

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200505

RJ01 Rejection of invention patent application after publication