CN110765017A - 基于risc-v扩展指令的源码覆盖率测试方法和*** - Google Patents
基于risc-v扩展指令的源码覆盖率测试方法和*** Download PDFInfo
- Publication number
- CN110765017A CN110765017A CN201911019406.3A CN201911019406A CN110765017A CN 110765017 A CN110765017 A CN 110765017A CN 201911019406 A CN201911019406 A CN 201911019406A CN 110765017 A CN110765017 A CN 110765017A
- Authority
- CN
- China
- Prior art keywords
- source code
- output
- risc
- instrumentation
- instruction
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3676—Test management for coverage 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)
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种基于RISC‑V扩展指令的源码覆盖率测试方法和***,通过对源码进行语法树分析,得到插桩点,将插桩点定义为设定位置。根据源码语法结构对源码进行切片,在设定位置进行插桩,所述插桩的插桩语句是基于RISC‑V的扩展指令;执行源码,对扩展指令的输出进行数据采集,得到插桩输出信息;根据插桩语句和插桩输出信息,分析得到源码覆盖率测试结果。本发明通过扩展RISC‑V指令,实现CPU内部对外高速数据发送,相对于异步总线来说,引脚数大幅度减少;不需要进行被测板卡飞线,工作量大大降低。
Description
技术领域
本发明涉及计算机技术领域,具体地,涉及一种基于RISC-V扩展指令的源码覆盖率测试***及方法。
背景技术
在高安全、高可靠性领域,都有对应的标准要求源码覆盖率测试达到某个比例,从而确保***的安全性。
目前源码覆盖率测试主要通过插桩来实现,在插桩语句中对内存或者外部IO进行操作,输出插桩信息。但现有这个方法存在不足,对外部IO操作对***执行时间有非常大影响,IO操作时间远远大于处理器执行时间,而对内存写入数据时,需要对被测***进行飞线,而这个过程是一个比较难操作的过程。
与本申请相关的现有技术是专利文献CN 104375932A,提供一种分析Java卡Java代码(含Java卡平台和应用)覆盖率的方法和装置。提供的方法包括:对class文件***标记覆盖的字节码,其中覆盖标记数据为Native数据存储在JCVM中,在不违背JCVM规范的前提下对Java卡Converter进行调整,卡模拟器运行过程中覆盖标记数据存储了代码的运行情况,测试结束后JCVM按一定格式输出覆盖标记数据,分析class文件并和该数据对应,即可得到覆盖率百分比。提供的***以Eclipse插件和Ant任务两种形式与用户交互。该方法在Java卡上使用字节码插桩技术,对JCVM的代码和速度影响小,支持不带源码分析,支持语句覆盖和分支覆盖。
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种基于RISC-V扩展指令的源码覆盖率测试***及方法。
根据本发明提供的一种基于RISC-V扩展指令的源码覆盖率测试方法,包括:
源码插桩步骤:根据源码语法结构对源码进行切片,在设定位置进行插桩,所述插桩的插桩语句是基于RISC-V的扩展指令;
数据采集步骤:执行源码,对扩展指令的输出进行数据采集,得到插桩输出信息;
覆盖测试步骤:根据插桩语句和插桩输出信息,分析得到源码覆盖率测试结果。
优选地,所述的基于RISC-V扩展指令的源码覆盖率测试方法,还包括源码分析步骤,通过对源码进行语法树分析,得到插桩点,将插桩点定义为设定位置。
优选地,所述数据采集步骤包括:
指令扩展步骤:定义输出接口,在输出接口中将RISC-V的扩展指令进行自定义编码,形成插桩输出指令;
执行输出步骤:执行源码,采集CPU执行插桩输出指令的并行数据输出与串行数据输出,形成插桩输出信息。
优选地,所述覆盖测试步骤包括:
计算覆盖步骤:识别插桩语句中的标记信息,根据标记信息识别插桩输出信息中的标记结果,得到源码覆盖率;
生成报告步骤:根据源码设置与源码覆盖率,生成用户报告。
优选地,所述基于RISC-V的扩展指令是对RISC-V的指令进行了插桩输出扩展,CPU对扩展指令进行执行,通过CPU引脚对插桩数据进行输出。
根据本发明提供的一种基于RISC-V扩展指令的源码覆盖率测试***,包括:
源码插桩模块:根据源码语法结构对源码进行切片,在设定位置进行插桩,所述插桩的插桩语句是基于RISC-V的扩展指令;
数据采集模块:执行源码,对扩展指令的输出进行数据采集,得到插桩输出信息;
覆盖测试模块:根据插桩语句和插桩输出信息,分析得到源码覆盖率测试结果。
优选地,所述的基于RISC-V扩展指令的源码覆盖率测试***,还包括源码分析模块,通过对源码进行语法树分析,得到插桩点,将插桩点定义为设定位置。
优选地,所述数据采集模块包括:
指令扩展模块:定义输出接口,在输出接口中将RISC-V的扩展指令进行自定义编码,形成插桩输出指令;
执行输出模块:执行源码,采集CPU执行插桩输出指令的并行数据输出与串行数据输出,形成插桩输出信息。
优选地,所述覆盖测试模块包括:
计算覆盖模块:识别插桩语句中的标记信息,根据标记信息识别插桩输出信息中的标记结果,得到源码覆盖率;
生成报告模块:根据源码设置与源码覆盖率,生成用户报告。
优选地,所述基于RISC-V的扩展指令是对RISC-V的指令进行了插桩输出扩展,CPU对扩展指令进行执行,通过CPU引脚对插桩数据进行输出。
与现有技术相比,本发明具有如下的有益效果:
1、通过扩展RISC-V指令,实现CPU内部对外高速数据发送,相对于异步总线来说,引脚数大幅度减少;
2、不需要进行被测板卡飞线,工作量大大降低;
3、对被测***执行时间影响很小,应用场景可以扩展到其他领域,例如日志输出;
4、代码膨胀率低。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明的执行流程示意图;
图2为本发明并行数据输出形式示意图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
插桩数据采集目前存在很多瓶颈,目前主要有两类采集数据形式,一种是通过异步总线进行数据采集,另一种是通过外部IO接口进行数据采集,第一种方式对被测***性能影响很小,但需要对被测板卡进行飞线,这个过程非常麻烦,第二种方式不需要飞线,但往往通信速度较低,使得对被测***性能影响很大。本发明使用的引脚数大幅度减少,并且速度与异步总线可以达到一样,这样带来两个好处,一,在被测目标板预留这个输出接口成为可能,因为引脚少,容易规划设计;二,即使没有预留这样的采集接口,那么相比异步总线的飞线也大幅度降低了飞线的困难,一个需要飞64根线,一个只需要飞4根线。
本发明在RISC-V扩展指令基础上定义了插桩指令,也即是对RISC-V的指令进行了插桩输出扩展,该指令由CPU处理器执行,通过CPU处理器对应的插桩输出针脚输出信号,这个过程对被测***时间影响最低,并且更容易被板卡设计者在设计阶段预留出测试采集接口。一个完整源码覆盖率测试***,如图1所示,主要包含以下几个部分:源码分析;源码插桩;插桩数据采集;数据分析;报告生成。在以上模块中,源码分析、源码插桩、报告生成都有很好的专利方法实现,而数据分析部分是对采集的插桩输出数据与插桩标记信息进行比对,从而分析出源码的执行信息。在以上部分中,只有插桩数据采集没有被很好的解决,目前的方式存在很大的不足。
本发明中的源码分析是对源码进行语法树分析,确定合适的插桩点。源码插桩时,根据源码语法结构对源码进行切片,在设定位置进行插桩,所述插桩的插桩语句是基于RISC-V的扩展指令。源码插桩是在定位的插桩点***新的语句,最终通过执行插桩的语句,得到被测源码的执行信息。
插桩数据采集是通过通信接口或其他形式获取插桩点语句的执行输出。执行源码,对扩展指令的输出进行数据采集,得到插桩输出信息
数据分析是通过分析插桩数据采集的结果与插桩的标记信息,得到源码的覆盖率执行结果。
报告生成将分析的覆盖率结果生成最终用户需要的报告。
源码分析主要是获取源码的语法树,例如函数对象,通过语法树可以查询函数参数的定义,函数返回值的定义,函数具体实现的定义,包括每个定义对应于源码的行列信息。例如,对于IF语句来说,通过语法树可以查询IF语句的条件定义,IF语句的真分支定义,IF语句的假分支定义,以及这些定义对应于源码的行列信息。
插桩点就是在用户源码中***额外的输出语句,一般来说,对于覆盖率应用都会选择代码片段的入口进行插桩,从而根据输出信息有效判断该代码片段是否执行。代码片段就是一段没有分支跳转的语句段,由一条或多条语句组成。插桩语句没有固定的形式,与具体的被测程序,被测环境有关。
计算覆盖率时,主要需要根据插桩信息与采集信息相互结合来计算。
举例如下:
void test(){
int a=10;
if(a<10){
a=20;
}else{
a=30;
}
}
上边是一个简单的被测试函数,需要对其进行覆盖率执行测试。
插桩后的代码如下:
void test(){
out(1);
int a=10;
if(a<10){
out(2);
a=20;
}else{
out(3);
a=30;
}
}
其中,out(1),out(2),out(3)是***的插桩点语句,分别表示通过某种数据传输方式告知监控程序执行标记点1,2,3。在覆盖率分析程序应用中,插桩时会对插桩标记点进行记录,例如记录标记点1表示int a=10;if(a<10)语句的执行状态,当监控程序接收到插桩输出信息,例如接收了1,3,那么就能明确知道这两个标记点对应的语句已经执行,而标记点2对应的语句没有执行,从而计算出覆盖率结果。
生成报告主要是将分析的结果生成WORD或其他格式文档,不同机构对报告格式以及样式有所要求,基本内容就是***计算的覆盖率信息。例如在报告中需要说明***整体的语句覆盖率,每一个函数的语句覆盖率。报告生成是覆盖率测试工具的一个功能,利用现有已经分析出来的数据,将其呈现为某种形式的文档。
下面对RISC-V扩展指令的具体扩展定义进行说明。在源码覆盖率***中,需要输出标记号,使用32位数据表示足够,但为了其他应用的扩展,可能会输出其他应用扩展的数据,所以额外再使用一组地址信号线,预期有4位表示,例如在同一个被测项目中覆盖率测试数据输出在地址1,***任务调度数据输出在地址2,这样可以满足多个应用的同时使用。另外为了标记信号有效,添加控制信号线。
添加大数据输出的机制,例如64位数输出。大数据输出时,分几个片断输出,在应用处理层对数据进行合并,因为应用层能够知道采集的数据是多少位的数据输出。例如对任务进行插桩采集,任务ID可能是一个64位的数值,所以将其分为几次输出,并且应用层因为知道这个是任务ID,所以也就知道该数值是一个64位数字。
在输出接口定义上,支持两种不同的设计,一种为并行输出,通过32根数据线,4根地址线,2根控制信号线输出,另一种为串行输出,使用Aurora数据协议进行串行输出。使用并行输出设计更为简单,但会增加CPU面积。
RISC-V架构定义的标准指令集仅使用了少部分的指令编码空间,更多的指令编码空间被预留给用户作为扩展指令使用。由于RISC-V架构支持多种不同的指令长度,不同的指令长度均预留有不同的编码空间。以32位长度质量为例,指令的低7位为opcode,各种不同的opcode值的组合代表了不同的指令类型。在32位指令中有4个custom指令,与3个reserved指令,这两个指令部分都可以叫做扩展指令。本发明就是利用了RISC-V的自定义指令可以进行自定制的特点,针对覆盖率测试插桩输出进行了专门的指令设计,从而使得RISC-V指令支持覆盖率测试插桩输出。
扩展指令的自定义一方面要符合RISC-V标准的限制,另一方面要将该指令设计的更为高效。RISC-V扩展指令的限制说明,在源码覆盖率***中,插桩ID是一个固定数字,所以扩展的自定义指令需要支持立即数操作,同时为了扩展到其他应用,需要对变量输出进行支持,所以设计的扩展指令分为两条,立即数操作指令,寄存器操作指令。
所以本发明定义了一个专门用于插桩输出的指令,同时兼顾其他应用扩展输出。指令编码格式如表一所示:
表一 指令编码格式
定义的指令如表二所示:
表二 指令说明
本发明根据源码语法结构对源码进行切片,在相应位置进行插桩处理,插桩语句就是对RISC-V扩展出的指令命令,最后执行被测程序,通过采集硬件对扩展指令的输出进行数据采集,最终根据源码插桩信息与采集的插桩输出信息分析出被测源码的覆盖率结果。通过语法树分析出插桩点位置后,在插桩点位置执行插桩。依据本发明,具体实施覆盖率测试中包含如下步骤:
步骤1:对源码分析,找出合适的插桩点;
步骤2:在插桩点***具体的插桩语句;
步骤3:对插桩输出进行数据采集;
步骤4:对采集数据进行分析,计算覆盖率结果;
在步骤2中,实际的插桩语句如下:
以上代码就是实现在地址1输出数据20。
对于其他应用来说,可以使用如下语句:
该语句实现了将a变量值输出到地址2。
在步骤3中,对插桩输出结果进行数据采集,在这个过程中,本发明定义了插桩输出的电路信号形式,采集数据过程就是对如下信号进行处理的过程。
插桩语句中标记了地址号与输出的插桩ID数值。在CPU指令执行中,一旦发现此自定义的指令,那么将地址号与插桩ID通过CPU引脚进行输出。针对发明的覆盖率测试插桩输出语句的电信号形式。信号输出支持并行数据输出与串行数据输出,并行数据输出形式如图2所示。
串行输出数据使用Aurora协议,也可以使用其它协议输出,选择Aurora协议的目的是轻量级。
为了有效说明本发明与原有方式优缺点的不同,如表三所示:
表三 优缺点比较
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的***、装置及其各个模块以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的***、装置及其各个模块以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同程序。所以,本发明提供的***、装置及其各个模块可以被认为是一种硬件部件,而对其内包括的用于实现各种程序的模块也可以视为硬件部件内的结构;也可以将用于实现各种功能的模块视为既可以是实现方法的软件程序又可以是硬件部件内的结构。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。
Claims (10)
1.一种基于RISC-V扩展指令的源码覆盖率测试方法,其特征在于,包括:
源码插桩步骤:根据源码语法结构对源码进行切片,在设定位置进行插桩,所述插桩的插桩语句是基于RISC-V的扩展指令;
数据采集步骤:执行源码,对扩展指令的输出进行数据采集,得到插桩输出信息;
覆盖测试步骤:根据插桩语句和插桩输出信息,分析得到源码覆盖率测试结果。
2.根据权利要求1所述的基于RISC-V扩展指令的源码覆盖率测试方法,其特征在于,还包括源码分析步骤,通过对源码进行语法树分析,得到插桩点,将插桩点定义为设定位置。
3.根据权利要求1所述的基于RISC-V扩展指令的源码覆盖率测试方法,其特征在于,所述数据采集步骤包括:
指令扩展步骤:定义输出接口,在输出接口中将RISC-V的扩展指令进行自定义编码,形成插桩输出指令;
执行输出步骤:执行源码,采集CPU执行插桩输出指令的并行数据输出与串行数据输出,形成插桩输出信息。
4.根据权利要求1所述的基于RISC-V扩展指令的源码覆盖率测试方法,其特征在于,所述覆盖测试步骤包括:
计算覆盖步骤:识别插桩语句中的标记信息,根据标记信息识别插桩输出信息中的标记结果,得到源码覆盖率;
生成报告步骤:根据源码设置与源码覆盖率,生成用户报告。
5.根据权利要求1所述的基于RISC-V扩展指令的源码覆盖率测试方法,其特征在于,所述基于RISC-V的扩展指令是对RISC-V的指令进行了插桩输出扩展,CPU对扩展指令进行执行,通过CPU引脚对插桩数据进行输出。
6.一种基于RISC-V扩展指令的源码覆盖率测试***,其特征在于,包括:
源码插桩模块:根据源码语法结构对源码进行切片,在设定位置进行插桩,所述插桩的插桩语句是基于RISC-V的扩展指令;
数据采集模块:执行源码,对扩展指令的输出进行数据采集,得到插桩输出信息;
覆盖测试模块:根据插桩语句和插桩输出信息,分析得到源码覆盖率测试结果。
7.根据权利要求6所述的基于RISC-V扩展指令的源码覆盖率测试***,其特征在于,还包括源码分析模块,通过对源码进行语法树分析,得到插桩点,将插桩点定义为设定位置。
8.根据权利要求6所述的基于RISC-V扩展指令的源码覆盖率测试***,其特征在于,所述数据采集模块包括:
指令扩展模块:定义输出接口,在输出接口中将RISC-V的扩展指令进行自定义编码,形成插桩输出指令;
执行输出模块:执行源码,采集CPU执行插桩输出指令的并行数据输出与串行数据输出,形成插桩输出信息。
9.根据权利要求6所述的基于RISC-V扩展指令的源码覆盖率测试***,其特征在于,所述覆盖测试模块包括:
计算覆盖模块:识别插桩语句中的标记信息,根据标记信息识别插桩输出信息中的标记结果,得到源码覆盖率;
生成报告模块:根据源码设置与源码覆盖率,生成用户报告。
10.根据权利要求6所述的基于RISC-V扩展指令的源码覆盖率测试***,其特征在于,所述基于RISC-V的扩展指令是对RISC-V的指令进行了插桩输出扩展,CPU对扩展指令进行执行,通过CPU引脚对插桩数据进行输出。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911019406.3A CN110765017A (zh) | 2019-10-24 | 2019-10-24 | 基于risc-v扩展指令的源码覆盖率测试方法和*** |
PCT/CN2020/092358 WO2021077735A1 (zh) | 2019-10-24 | 2020-05-26 | 基于risc-v扩展指令的源码覆盖率测试方法和*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911019406.3A CN110765017A (zh) | 2019-10-24 | 2019-10-24 | 基于risc-v扩展指令的源码覆盖率测试方法和*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110765017A true CN110765017A (zh) | 2020-02-07 |
Family
ID=69333871
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911019406.3A Pending CN110765017A (zh) | 2019-10-24 | 2019-10-24 | 基于risc-v扩展指令的源码覆盖率测试方法和*** |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110765017A (zh) |
WO (1) | WO2021077735A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021077735A1 (zh) * | 2019-10-24 | 2021-04-29 | 上海创景信息科技有限公司 | 基于risc-v扩展指令的源码覆盖率测试方法和*** |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1677364A (zh) * | 2004-03-22 | 2005-10-05 | 国际商业机器公司 | 对代码覆盖使用硬件辅助的自主测试用例反馈的方法和设备 |
CN101833500A (zh) * | 2010-04-07 | 2010-09-15 | 南京航空航天大学 | 一种基于Agent的嵌入式软件智能测试方法 |
CN103838666A (zh) * | 2012-11-27 | 2014-06-04 | 百度在线网络技术(北京)有限公司 | 一种确定代码执行覆盖率的方法和装置 |
CN106681912A (zh) * | 2016-12-08 | 2017-05-17 | 武汉斗鱼网络科技有限公司 | 用于Android***的代码覆盖率的自动化测试方法及装置 |
CN107797923A (zh) * | 2017-10-10 | 2018-03-13 | 平安科技(深圳)有限公司 | 代码覆盖率分析方法及应用服务器 |
US20180081792A1 (en) * | 2016-09-19 | 2018-03-22 | International Business Machines Corporation | Code coverage through overlay hooks |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030145309A1 (en) * | 2002-01-18 | 2003-07-31 | Rajendra Inamdar | Probe description language |
CN110765017A (zh) * | 2019-10-24 | 2020-02-07 | 上海创景信息科技有限公司 | 基于risc-v扩展指令的源码覆盖率测试方法和*** |
CN110750957B (zh) * | 2019-10-30 | 2024-05-24 | 南京宁麒智能计算芯片研究院有限公司 | 一种高效多核RISC-V处理器的Cache***验证方法 |
-
2019
- 2019-10-24 CN CN201911019406.3A patent/CN110765017A/zh active Pending
-
2020
- 2020-05-26 WO PCT/CN2020/092358 patent/WO2021077735A1/zh active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1677364A (zh) * | 2004-03-22 | 2005-10-05 | 国际商业机器公司 | 对代码覆盖使用硬件辅助的自主测试用例反馈的方法和设备 |
CN101833500A (zh) * | 2010-04-07 | 2010-09-15 | 南京航空航天大学 | 一种基于Agent的嵌入式软件智能测试方法 |
CN103838666A (zh) * | 2012-11-27 | 2014-06-04 | 百度在线网络技术(北京)有限公司 | 一种确定代码执行覆盖率的方法和装置 |
US20180081792A1 (en) * | 2016-09-19 | 2018-03-22 | International Business Machines Corporation | Code coverage through overlay hooks |
CN106681912A (zh) * | 2016-12-08 | 2017-05-17 | 武汉斗鱼网络科技有限公司 | 用于Android***的代码覆盖率的自动化测试方法及装置 |
CN107797923A (zh) * | 2017-10-10 | 2018-03-13 | 平安科技(深圳)有限公司 | 代码覆盖率分析方法及应用服务器 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021077735A1 (zh) * | 2019-10-24 | 2021-04-29 | 上海创景信息科技有限公司 | 基于risc-v扩展指令的源码覆盖率测试方法和*** |
Also Published As
Publication number | Publication date |
---|---|
WO2021077735A1 (zh) | 2021-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6223144B1 (en) | Method and apparatus for evaluating software programs for semiconductor circuits | |
US8381194B2 (en) | Methods and apparatuses for selective code coverage | |
CN106557413A (zh) | 基于代码覆盖率获取测试用例的方法和设备 | |
EP1130518B1 (en) | Software analysis system having an apparatus for selectively collecting analysis data from a target system executing software instrumented with tag statements and method for use thereof | |
US20080313616A1 (en) | Methods and systems for testing tool with comparative testing | |
US5862382A (en) | Program analysis system and program analysis method | |
CN110673847A (zh) | 配置页面的生成方法、装置、电子设备和可读存储介质 | |
US20110047531A1 (en) | Methods and apparatuses for selective code coverage | |
US8868976B2 (en) | System-level testcase generation | |
CN113742298B (zh) | 一种机载二进制文件通用并行的解析方法、装置及电子设备 | |
US10936474B2 (en) | Software test program generation | |
EP1890235A1 (en) | Test case management | |
CN110781091B (zh) | 应用程序的测试方法、装置、电子设备及存储介质 | |
CN114090671A (zh) | 数据导入方法、装置、电子设备及存储介质 | |
EP3418889A1 (en) | Software analysis apparatus and software analysis method | |
CN115656791A (zh) | 芯片可测性设计的测试方法及测试平台 | |
CN110765017A (zh) | 基于risc-v扩展指令的源码覆盖率测试方法和*** | |
CN112685316A (zh) | 代码执行路径的获取方法、装置、计算机设备及存储介质 | |
CN115684895B (zh) | 芯片可测性设计测试方法、测试平台及其生成方法及装置 | |
JP2011191985A (ja) | シンボリック実行支援プログラム、方法及び装置 | |
CN115422865B (zh) | 仿真方法及装置、计算设备、计算机可读存储介质 | |
CN112380133B (zh) | 一种指令集模拟器利用功能库仿真的方法及装置 | |
CN115684894A (zh) | 芯片可测性设计的测试方法及测试平台 | |
CN115758963A (zh) | 芯片eda仿真中打印信息的处理装置、方法及*** | |
US20220058109A1 (en) | Method for debugging computer program, device employing method, and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200207 |
|
RJ01 | Rejection of invention patent application after publication |