代码覆盖率说明(个人总结)

合集下载

各种覆盖率方法介绍

各种覆盖率方法介绍

目录1 简介01.1 代码覆盖率分析01.2 结构化测试和功能测试(STRUCTURAL TESTING&FUNCTIONAL TESTING)11.3 假定12 基本的度量12.1 语句覆盖(STATEMENT COVERAGE )12.2 判定覆盖(DECISION COVERAGE )22.3 条件覆盖(CONDITION COVERAGE )32.4 多条件覆盖(MULTIPLE CONDITION COVERAGE )32.5 分支条件组合覆盖(CONDITION/DECISION COVERAGE )42.6 修正条件/判定覆盖(MODIFIED CONDITION/DECISION COVERAGE)42.6.1 覆盖率的计算公式:52.7 路径覆盖(PATH COVERAGE )53 其它度量63.1 函数覆盖(FUNCTION COVERAGE )63.2 函数出入口覆盖(FUNCTION EXITS COVERAGE)63.3 调用覆盖(CALL COVERAGE )63.4 线性代码顺序及跳转覆盖(LINEAR CODE SEQUENCE AND JUMP (LCSAJ) COVERAGE )73.4.1 覆盖率的计算公式:73.5 数据流覆盖(DATA FLOW COVERAGE )83.6 目标代码分支覆盖(OBJECT CODE BRANCH COVERAGE )83.7 循环覆盖(LOOP COVERAGE )83.8 竞争覆盖(RACE COVERAGE)83.9 比较操作符覆盖(RELATIONAL OPERATOR COVERAGE)83.10 弱变化覆盖(WEAK MUTATION COVERAGE)93.11 表覆盖(TABLE COVERAGE)94 比较各种覆盖94.1 对RELEASE版本的覆盖目标94.2 中间版本的覆盖目标95 总结106 参考107 术语表111 简介1.1 代码覆盖率分析这篇文章给出了一个完整的代码覆盖率分析方面的概念。

代码覆盖率说明

代码覆盖率说明

代码覆盖率说明代码覆盖率是软件测试中常用的一个指标,它用于衡量测试的质量和测试覆盖的范围。

代码覆盖率指的是测试中所覆盖的代码的比例,即被测试代码的执行情况与所有可执行代码的比值。

较高的代码覆盖率通常意味着测试用例能够覆盖更多的代码路径和逻辑,从而检测出更多的错误和缺陷。

代码覆盖率是评估测试的一种重要指标,它能够反映测试的全面性和有效性。

一个好的测试用例具有高代码覆盖率,能够覆盖到尽可能多的代码路径,包括不同的分支和条件。

因此,提高代码覆盖率对于提升测试质量和发现潜在问题是非常重要的。

语句覆盖率是最基本的覆盖度量,表示测试用例执行过程中经过的代码行数与总代码行数的比值。

它能够检测出未被执行的代码行,但不能检测出由于条件判断而未被执行的分支。

分支覆盖率是在语句覆盖率的基础上进一步考虑分支情况的覆盖率。

它表示测试用例经过的分支数与总分支数的比值。

分支覆盖率能够检测出由于条件判断而未被执行的分支,对于具有复杂逻辑的代码更加有利。

条件覆盖率是在分支覆盖率的基础上进一步考虑条件情况的覆盖率。

它表示测试用例执行过程中覆盖到的条件数与总条件数的比值。

条件覆盖率能够更全面地检测出由于条件判断而导致的不同执行路径,对于多重条件判断的代码更具有价值。

路径覆盖率是最全面的覆盖度量,它要求测试用例覆盖到所有可能的执行路径。

路径覆盖率能够检测出各种不同的代码执行顺序和循环次数的情况,对于复杂的代码逻辑和数据流处理更具有价值。

但由于路径的组合爆炸问题,完全的路径覆盖往往是不可行的。

代码覆盖率并不是绝对的衡量标准,它只是一种相对的指标。

100%的代码覆盖率并不能保证没有任何错误,而低覆盖率也并不意味着测试用例一定不可靠。

因此,代码覆盖率需要与其他的测试指标相结合来综合评估测试的质量。

提高代码覆盖率的方法主要包括编写更全面和有效的测试用例、增加对特殊情况和边界条件的测试、采用自动化测试工具和技术、进行代码重构和简化等。

同时,代码覆盖率需要定期进行监控和评估,及时发现和解决覆盖率不足的问题。

软件测试中的代码覆盖率分析方法

软件测试中的代码覆盖率分析方法

软件测试中的代码覆盖率分析方法代码覆盖率分析是软件测试中的重要环节,它可以帮助开发人员评估测试是否充分覆盖了待测代码的各个分支和路径。

本文将介绍几种常见的代码覆盖率分析方法,以及它们的优缺点和适用场景。

一、语句覆盖率(Statement Coverage)语句覆盖率是最简单且最常用的代码覆盖率分析方法之一。

它的原理是通过测试用例执行情况来判断是否覆盖了每一个代码语句。

具体而言,语句覆盖率要求测试用例至少执行一次每个语句,以确保代码的执行路径被完全覆盖。

优点:语句覆盖率简单易懂,容易实施。

缺点:无法细分代码内部的分支情况,可能会导致某些分支未被覆盖。

适用场景:适用于稳定的代码,对于简单的程序或快速迭代的项目,语句覆盖率已经足够。

二、分支覆盖率(Branch Coverage)分支覆盖率是对语句覆盖率的一种扩展,它要求测试用例能够覆盖代码中的每一个分支。

通过分支覆盖率分析,开发人员可以得知每个条件语句的所有可能取值,从而判断测试是否充分考虑了不同的条件情况。

优点:相较于语句覆盖率,分支覆盖率能够更全面地测试代码的不同分支情况。

缺点:测试用例的编写难度较大,需要覆盖所有可能的分支。

适用场景:适用于逻辑较复杂的代码,对于包含多个条件语句的程序,分支覆盖率更加全面。

三、条件覆盖率(Condition Coverage)条件覆盖率是对分支覆盖率的进一步扩展,它要求测试用例能够覆盖每个条件的各种可能取值。

在代码中存在多个条件表达式的情况下,条件覆盖率能够帮助开发人员发现隐藏的逻辑错误和边界情况。

优点:对代码逻辑进行更加全面的覆盖,提高测试用例的质量。

缺点:测试用例的编写量增加,需要考虑更多的条件情况。

适用场景:适用于复杂的条件判断,例如需要满足多个条件才能进入某个分支的情况。

四、路径覆盖率(Path Coverage)路径覆盖率是最为完整的代码覆盖率分析方法,它要求测试用例能够覆盖代码中所有可能的路径。

路径是指程序执行的各种可能的组合,通过路径覆盖率分析可以确保测试覆盖了所有可能的情况。

覆盖率介绍(内部培训)

覆盖率介绍(内部培训)

覆盖率简介
覆盖率与验证阶段
验证阶段可以分为单元验证(UT)阶段、集成验证(IT)阶段和系统 验证(ST)阶段。
单元验证阶段,关心的是模块功能和模块质量,此时出口条件为代码 覆盖率。一般业内常用的出口条件是:行覆盖率达到100%,分支覆盖率 达到100%,条件覆盖率达到95%,状态机覆盖率达到90%,对没有覆 盖率的需给出合理的说明。
功能覆盖率及在UVF中的应用
功能覆盖率计算
覆盖点的覆盖率 = 容器被击中的个数/容器总数×100%
覆盖率组的覆盖率 = ∑覆盖点的覆盖率×覆盖率点的权重 功能覆盖率 = ∑覆盖组的覆盖率×覆盖率组的权重
功能覆盖率及在UVF中的应用
覆盖率组
覆盖率组是一系列描述相近功能的覆盖率点或交叉覆盖率点的集合。每 个覆盖率组可以根据需要自行使能或者禁止,规定了组内覆盖率点或交叉 覆盖率点的触发条件、收集时间,允许覆盖率模型从多个源头收集覆盖率 信息。覆盖率组一经定义,可以例化多份。
`OPTION.goal:覆盖率点或交叉覆盖率点的覆盖率目标。 `OPTION.weight:覆盖率点或交叉覆盖率点的权重。 `ment:覆盖率点或交叉覆盖率点的注释。 option.auto_bin_max:覆盖率点或交叉覆盖率点自创建的最大容器数。 option.at_least:覆盖率点和交叉覆盖率点的击中门限。
uvfuvf基于功能覆盖率模型的验证流程编写验证需求文档编写验证需求文档编写验证需求文档编写验证需求文档基于验证需求文档实现包含基于验证需求文档实现包含功能覆盖率模型的测试平台功能覆盖率模型的测试平台基于验证需求文档实现包含基于验证需求文档实现包含功能覆盖率模型的测试平台功能覆盖率模型的测试平台在能够自动统计功能覆盖率的模型的在能够自动统计功能覆盖率的模型的驱动下通过随机激励定向激励驱动下通过随机激励定向激励形式化验证等手段使功能覆盖率达到形式化验证等手段使功能覆盖率达到在能够自动统计功能覆盖率的模型的在能够自动统计功能覆盖率的模型的驱动下通过随机激励定向激励驱动下通过随机激励定向激励形式化验证等手段使功能覆盖率达到形式化验证等手段使功能覆盖率达到100100验证完成验证完成验证完成验证完成uvfuvf功能覆盖率模型的工作流程用大量随机种子运行用大量随机种子运行用大量随机种子运行用大量随机种子运行受约束的测试用例受约束的测试用例设置功能点设置功能点检查用例是否通过检查用例是否通过存储当前用例覆盖率存储当前用例覆盖率存储当前用例覆盖率存储当前用例覆盖率信息信息合并覆盖率信息得合并覆盖率信息得合并覆盖率信息得合并覆盖率信息得到覆盖率到覆盖率修改用例描述或者约修改用例描述或者约修改用例描述或者约修改用例描述或者约覆盖率不达标uvfuvfuvf中的功能覆盖率模型uvf的功能覆盖率模型是sv模型为了结合vcs和ncsim仿真器对sv语法的支持情况功能覆盖率模型可以用下图表示

编码管理个人工作总结

编码管理个人工作总结

编码管理个人工作总结在编码管理的个人工作总结中,我认为初步的覆盖范围应该包括编码规范的制定、版本控制系统的使用、代码审查与测试等方面。

首先,我在编码管理方面制定了一套适合团队的编码规范,包括命名规范、代码风格、注释规范等,以确保团队成员的代码风格一致,代码可读性高,便于维护和管理。

其次,我熟练使用版本控制系统,如Git、SVN等,有效地管理代码版本,跟踪代码变更,协作开发,确保代码的安全性和稳定性。

另外,我积极参与代码审查和测试工作,定期对团队成员的代码进行检查,发现并纠正代码中的问题,提高代码质量,减少漏洞和错误。

在个人工作总结中,我也会对个人的编码管理能力进行自我评价,并总结过去的工作经验,找出不足之处,制定改进计划,并在后续的工作中加以落实,不断提升自己的编码管理能力。

总的来说,编码管理在软件开发过程中起着至关重要的作用,作为团队的一员,我会持续学习,不断提升自己的编码管理能力,为团队的项目开发贡献自己的力量。

编码管理是软件开发过程中至关重要的环节,它涉及代码规范制定、版本控制、代码审查、测试等多个方面。

在个人工作总结中,我会详细总结自己在这些方面的工作实践和成就,同时分析存在的问题并制定改进计划。

首先,我会详细描述自己在编码规范制定方面的工作。

这包括制定的具体规范和标准、推广和执行情况等。

在制定编码规范时,我会考虑团队的实际情况和项目需求,确保规范的合理性和可执行性。

同时,我也会对规范的执行情况进行评估,看是否存在执行不到位的问题,并针对性地提出改进建议。

其次,我会回顾和分析自己在版本控制系统使用方面的工作。

这包括对版本控制系统的熟练程度、团队协作的效率、代码安全性等方面。

我会总结自己在版本控制方面的优势和改进空间,比如是否需要更加深入地了解分支管理策略、提高对版本控制工具的熟练程度等。

另外,我也会详细描述自己在代码审查和测试方面的工作。

这包括参与的代码审查情况、发现的问题和解决方案以及参与的测试工作。

软件开发中的代码质量评估指标介绍

软件开发中的代码质量评估指标介绍

软件开发中的代码质量评估指标介绍在软件开发过程中,代码质量是非常重要的。

一个高质量的代码可以保证软件的稳定性、性能和可维护性。

在开发过程中我们要衡量代码的质量,需要使用一些评估指标来衡量。

本文将介绍常用的几个代码质量评估指标。

1. 代码行数(LOC)代码行数是最简单也是最常用的评估指标之一。

代码行数可以衡量开发人员编写代码的数量。

虽然代码行数不能完全代表代码质量的高低,但它确实可以反映出代码的代码规模和复杂度。

因此,一般情况下代码行数越多,代码越难维护,也就越容易出现漏洞。

因此,在实际开发中,我们应该尽可能地减少代码行数,而不是增加。

另外,代码行数还可以用来评估开发人员的工作量和项目的进度。

2. 圈复杂度(Cyclomatic Complexity)圈复杂度是衡量软件代码复杂性的一个较为常见的指标,它可以通过衡量代码中的控制流结构来定义。

圈复杂度越高,代码越复杂,也就意味着测试难度越大。

在实际开发过程中,我们应该尽可能地优化代码的圈复杂度,以减少测试成本和维护成本。

3. 代码重复率代码重复率是指代码中重复出现的代码行数占总行数的比例。

在实际开发过程中,代码重复率通常大于10%都是有问题的。

代码重复率的高低可以反映代码的复杂度和缺陷率。

如果代码存在高度重复,意味着在维护和升级软件时的困难,同时代码质量也会大大降低。

4. 代码覆盖率代码覆盖率指的是测试用例执行代码的比例。

在实际开发中我们应该尽量衡量代码的覆盖率,以确保测试用例可以充分覆盖代码的所有分支。

在进行测试时,我们通常会使用代码覆盖率工具来衡量测试用例的覆盖率,同时也可以发现代码中存在的潜在错误。

5. 可维护性可维护性指的是代码修改容易的程度,这是衡量代码质量的一个最重要的指标。

在实际开发中,我们应该尽量让代码更容易修改。

通常情况下,代码的可维护性与代码结构、代码注释和文档的质量有关。

6. 漏洞密度漏洞密度是指软件中漏洞的数量和代码的总数的比例。

iso26262 代码覆盖率等级

iso26262 代码覆盖率等级

iso26262 代码覆盖率等级
(原创实用版)
目录
1.Iso26262 概述
2.代码覆盖率的定义
3.Iso26262 的代码覆盖率等级
4.各个等级的含义和应用
5.总结
正文
1.Iso26262 概述
Iso26262 是国际标准,主要针对汽车电子产品和系统的功能安全。

它的全称是“道路车辆 - 功能安全 - 电控系统用软件的 ISO26262”,主要目的是确保汽车电子产品和系统的安全。

2.代码覆盖率的定义
代码覆盖率是指软件测试中,测试用例覆盖软件代码的比例。

通常情况下,代码覆盖率越高,软件的质量和稳定性越有保障。

3.Iso26262 的代码覆盖率等级
根据 Iso26262 标准,代码覆盖率被分为了不同的等级,分别是:- ASIL A: 级别最高的安全等级,要求代码覆盖率达到 100%。

- ASIL B: 要求代码覆盖率达到 70%。

- ASIL C: 要求代码覆盖率达到 60%。

- ASIL D: 要求代码覆盖率达到 30%。

4.各个等级的含义和应用
各个等级的含义和应用主要取决于软件的功能和安全需求。

例如,对于关键的安全功能,如汽车的制动系统,代码覆盖率需要达到最高的 ASIL A 级别。

而对于一些非关键的功能,如车载娱乐系统,代码覆盖率可能只需要达到 ASIL D 级别。

5.总结
总的来说,Iso26262 的代码覆盖率等级是确保汽车电子产品和系统安全的重要标准。

VSCode的代码自动化测试与覆盖率分析

VSCode的代码自动化测试与覆盖率分析

VSCode的代码自动化测试与覆盖率分析随着软件开发行业的发展,代码质量和可靠性对于项目的成功变得越来越重要。

为了提高代码质量,开发人员需要进行自动化测试和代码覆盖率分析。

本文将探讨如何使用VSCode进行代码自动化测试和覆盖率分析,帮助开发人员提高其代码质量。

一、VSCode简介VSCode(Visual Studio Code)是一款由微软开发的轻量级代码编辑器,具有强大的扩展性和丰富的插件生态系统。

它支持众多编程语言,并提供了丰富的功能,如代码补全、调试、版本控制等。

二、代码自动化测试代码自动化测试是一种在软件开发过程中自动运行代码以验证其正确性的方法。

它可以帮助开发人员发现潜在的bug和错误,并确保代码在不同情况下的正常运行。

在VSCode中进行代码自动化测试有多种方式,下面介绍其中两种常用的方法。

1. 使用内置测试框架VSCode内置了一些常见的测试框架(如JUnit、Mocha、Jest等),可以直接集成在编辑器中。

开发人员只需编写对应的测试用例,然后通过命令或快捷键运行测试。

测试结果会以直观的方式展示在编辑器中,方便开发人员查看。

2. 使用扩展插件除了内置的测试框架,VSCode还支持各种测试相关的扩展插件。

这些插件可以提供更多的功能和定制选项,以满足不同项目的需求。

开发人员可以根据自己的喜好和项目的特点选择适合的测试插件,并根据插件提供的文档进行配置和使用。

三、代码覆盖率分析代码覆盖率分析是一种评估代码被测试用例覆盖程度的方法。

通过代码覆盖率分析,开发人员可以了解哪些代码被测试覆盖到,以及哪些代码没有被测试覆盖到,进而优化测试用例的编写。

在VSCode中进行代码覆盖率分析也有多种方式,下面介绍其中两种常见的方法。

1. 使用插件工具VSCode提供了许多代码覆盖率分析的插件工具,开发人员可以根据自己的需求选择合适的插件进行安装和配置。

这些插件能够生成详细的代码覆盖率报告,方便开发人员分析和优化测试用例。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

代码覆盖率说明一、指令介绍代码覆盖率分为行覆盖率、条件覆盖率、状态机覆盖率和翻转覆盖率。

在vcs仿真工具下覆盖率信息存储在.cm文件中,使用urg工具解析、合并和生成报告;在ncsim仿真工具下覆盖率信息存储在icc.data文件中,使用iccr工具解析、合并和生成报告。

代码覆盖率指令主要包括编译、运行和生成覆盖率报告三个部分,指令结构大体同功能覆盖率。

为了工具的统一性和方便界面提取,先做如下规定:➢覆盖率数据库文件夹均放在CovData目录下,ncsim生成的放入ncsim子目录、vcs 生成的放入vcs子目录。

➢覆盖率报告均放在CovReport目录下,ncsim生成的放入ncsim子目录、vcs生成的放入vcs子目录。

➢每条用例都生成独自的同用例名的覆盖率数据库和覆盖率报告文件夹。

➢最后生成总的覆盖率数据库和覆盖率报告文件夹,名称为total。

文档指令描述中,{TC_NAME}表示匹配用例名。

1、vcs仿真环境1)样例rm -r simv* CovData/vcs/* FcovReport/vcs/* CovReport/vcs/*vcs -lca +v2k -sverilog -cm line+cond+fsm+tgl -cm_dir CovData/vcs/test_1.cm +define+marco=VCS+ test_1.sv./simv -cm line+cond+fsm+tgl -cm_dir CovData/vcs/test_1.cm +ntb_random_seed=666666 2>&1 |tee log/vcs/test_1.logvcs -lca +v2k -sverilog -cm line+cond+fsm+tgl -cm_dir CovData/vcs/test_2.cm +define+marco=VCS+ test_2.sv./simv -cm line+cond+fsm+tgl -cm_dir CovData/vcs/test_2.cm +ntb_random_seed=888888 2>&1 |tee log/vcs/test_2.logvcs -lca +v2k -sverilog -cm line+cond+fsm+tgl -cm_dir CovData/vcs/test_3.cm +define+marco=VCS+ test_3.sv./simv -cm line+cond+fsm+tgl -cm_dir CovData/vcs/test_3.cm +ntb_random_seed=555555 2>&1 |tee log/vcs/test_3.logurg -dir CovData/vcs/test_1.vdb -metric group -report FcovReport/vcs/test_1 -format text urg -dir CovData/vcs/test_2.vdb -metric group -report FcovReport/vcs/test_2 -format text urg -dir CovData/vcs/test_3.vdb -metric group -report FcovReport/vcs/test_3 -format text urg -dir CovData/vcs/*.vdb -metric group -report FcovReport/vcs/total -format texturg -dir CovData/vcs/test_1.cm -metric line+cond+fsm+tgl -report CovReport/vcs/test_1 -format texturg -dir CovData/vcs/test_2.cm -metric line+cond+fsm+tgl -report CovReport/vcs/test_2 -format texturg -dir CovData/vcs/test_3.cm -metric line+cond+fsm+tgl -report CovReport/vcs/test_3 -format texturg -dir CovData/vcs/*.cm -metric line+cond+fsm+tgl -report CovReport/vcs/total -formattext2)指令说明(1)编译-lca:增加LCA的支持,vcs0812及以后的版本需要,此前的版本不需要。

-cm line+cond+fsm+tgl:增加编译期添加行覆盖率、条件覆盖率、状态机覆盖率、翻转覆盖率信息。

-cm_dir CovData/vcs/{TC_NAME}.cm:将编译期生成的覆盖率信息(不包括功能覆盖率)放到CovData/vcs目录中,若目录不存在,将自动创建。

生成的代码覆盖率数据库文件夹以cm后缀,名称要求同用例名,例:test_1.cm。

注:在vcs仿真器下,代码覆盖率信息(行覆盖率、条件覆盖率、状态机覆盖率、翻转覆盖率)存放在cm后缀的数据库文件夹中;功能覆盖率和断言覆盖率存放在vdb后缀的数据库文件夹0中。

cm后缀的数据库的生成与编译和运行阶段都有关,vdb后缀的数据库的生成仅与运行阶段有关。

(2)运行-cm line+cond+fsm+tgl:增加运行期添加行覆盖率、条件覆盖率、状态机覆盖率、翻转覆盖率信息。

-cm_dir CovData/vcs/{TC_NAME}.cm:将运行期生成的覆盖率数据库放到CovData/vcs 目录中,若目录不存在,将自动创建。

代码覆盖率信息将写入以cm后缀的数据库文件夹中,生成的功能覆盖率数据库文件夹以vdb后缀,名称要求同用例名,例:test_1.vdb。

注:在运行期中,-cm_dir命令只能指定代码覆盖率信息存放的数据库文件夹,而以功能覆盖率信息存放的数据库文件夹是不能指定后缀的,且存放路径同代码覆盖率数据库文件夹,因此虽然指定了cm后缀,但生成的功能覆盖率数据库文件夹仍以.vdb后缀。

(3)生成覆盖率报告urg -dir CovData/vcs/{TC_NAME}.cm -metric line+cond+fsm+tgl -report CovReport/vcs/{TC_NAME} -format text:用于生成各个用例的代码覆盖率报告。

urg -dir CovData/vcs/*.cm -metric line+cond+fsm+tgl -report CovReport/vcs/total -format text:用于生成总的代码覆盖率报告。

其中:-dir用于读入指定目录下指定覆盖率数据库XXX.cm文件夹,通配符* 表示读入指定目录下所有覆盖率数据库文件夹。

-metric用于指定输出覆盖率类型,line表示行覆盖率、cond表示条件覆盖率、fsm 表示状态机覆盖率,tgl表示跳转覆盖率。

这里必须和仿真环节相对应,否则没有该类型的覆盖率信息,urg工具会报错。

-report用于指定输出覆盖率报告的路径,每个用例的代码覆盖率报告要求分别输出到同用例名CovReport/vcs/{TC_NAME}的目录下,总的代码覆盖率报告要求输出到CovReport/vcs/total的目录下。

若指定的目录不存在,将自动创建。

-format用于指定输出报告的格式,text表示输出文本格式,不指定则输出html 格式。

注:由于指定了其他的覆盖率类型,因此此时在输出功能覆盖率报告时需要添加-metric group。

否则不能得到功能覆盖率的报告。

2、ncsim指令介绍1)样例cov.cmd(ICCR脚本文件)<test_1>set TC_NAME test_1</test_1><test_2>set TC_NAME test_2</test_2><test_3>set TC_NAME test_3</test_3><total>set TC_NAME totalset_dut_modules test DUV_TESTmerge CovData/ncsim/* -output total</total>sh mkdir -p FcovReport/ncsim/$TC_NAMEsh mkdir -p CovReport/ncsim/$TC_NAMEload_test CovData/ncsim/$TC_NAME<summary><code>report_summary -module -best DUV_TEST > CovReport/ncsim/$TC_NAME/dashboard.txt </code><func>report_summary -d -instance -cgopt test > FcovReport/ncsim/$TC_NAME/dashboard.txt </func></summary><detail><code>report_detail -both -module -best DUV_TEST > CovReport/ncsim/$TC_NAME/modinfo.txt </code><func>report_detail -both -d -instance -cgopt test > FcovReport/ncsim/$TC_NAME/grpinfo.txt</func></detail>rm -r irun* iccr* CovData/ncsim/* FcovReport/ncsim/* CovReport/ncsim/* IN*mkdir FcovReport/ncsimirun -sv -svseed 666666 -covoverwrite test_1.sv -coverage a -covwork CovData -covdesign ncsim -covtest test_1iccr -keywords+summary+detail+code+func+test_1 cov.cmdirun -sv -svseed 888888 -covoverwrite test_2.sv -coverage a -covwork CovData -covdesign ncsim -covtest test_2iccr -keywords+summary+detail+code+func+test_2 cov.cmdirun -sv -svseed 555555 -covoverwrite test_3.sv -coverage a -covwork CovData -covdesignncsim -covtest test_3iccr -keywords+summary+detail+code+func+test_3 cov.cmdiccr -keywords+summary+detail+func+total cov.cmdiccr -keywords+summary+detail+code+total cov.cmd2)指令说明(1)编译irun指令将编译和运行集成,因此对添加代码覆盖率没额外需求。

相关文档
最新文档