用于C/C++软件开发的统一、完全集成的测试解决方案
通过将Parasoft C/C++test集成到嵌入式安全和安全关键型应用的软件开发中,及早发现缺陷并节省成本。确保符合各种功能安全和编码标准。
1.C/C++ 静态分析:
》帮助您快速找到和修复代码缺陷与完整的路径分析,以及准确的违规检测
》支持使用专用的RuleWizard创建自定义规则。
》支持预防性(模式) 和检测基于流的)静态分析技术,以及一套全面的代码结构度量标准
》集中化报告和合规性审核,包括针对编码标准的专门法规遵从性报告和流程管理。
》跨团队和项目全面了解合规性:AUTOSAR C++14、MISRAC 2012MISRAC++2008、CERTC/C++、CWE、HIC++等。
》易于部署:易于配置和自动化,非侵入性,并且可跨多个团队进行扩展。
》静态分析可以检测到运行时内存监控无法识别的问题。例如,在下面的代码片段中,第27/28行出现空指针解引用的可能性。在person指针参数为null的情况下调用storePersonToFile 函数会导致错误,但只有当在retrivePersonFromDB函数返回null时才会发生错误。在系统测试期间,不太可能出现这种情况,因为数据库连接很可能按预期运行,因此运行时内存监控工具不会报告出问题。但是,静态分析工具中的流分析很容易检测到从该函数返回的空指针,并报告潜在的空指针解引用问题。
2.C/C++ 单元测试
Parasoft C/C++test尽量减少与创建和维护单元、集成测试相关的复杂和耗时的挑战。C/C++软件开发的集成测试解决方案需要为测试创建和管理、隔离被测试代码提供一个统一的测试环境,以及高级覆盖率报告,以确保对应用程序的彻底测试。经TUV认证的工具Parasoft C/C++test允许用户对目标硬件进行测试,从而支持如今的嵌入式开发生态系统。
》丰富的、基于IDE的图形环境,用于通过UI驱动的编辑器和直接使用源代码来创建和管理测试用例。
》自动打桩框架,易于隔离正在测试的代码。
》全面的代码覆盖指标: 函数、行语句、块路径、分支、判定、MC/DC、调用、目标/汇编。
》使用Parasoft DTP ,汇总手动和自动测试的覆盖率,提供每个测试覆盖率和跨构建的趋势结果报告。
》能够捕获开源覆盖率和报告测试框架,如CppUnit和CppUTest。
》广泛支持的开发环境,如ARM、IAR、Green Hills、Tasking、Wind River等等。
3.代码覆盖率和可追溯性
》除了单元测试和集成测试,C/C++test还允许您捕获在单元测试框架之外执行的测试的类似覆盖指标,例如手动测试。
》能够将测试、源代码和代码覆盖率与需求关联,报告仪表板提供了功能安全标准要求的需求实施状态和可追溯性的详细细节。
4.运行时分析:
》C/C++test支持嵌入式C语言应用程序的运行时错误检测,帮助您识别安全漏洞和严重的运行时缺陷。例如,手动系统级测试。要了解更多的信息,请观察下面的示例代码片段
上面的几行代码包含了几个问题。具体来说,在第16行中,开发人员试图使用calculateIdx()函数中计算的索引值来初始化全局缓冲区,但他们无法验证该值是否在允许的范围内。即使运行了几十个手动测试用例,他们也可能不会发现这个问题,因为将整数值写入随机内存位置大概率不会立即产生惊人的效果。
在这个例子中,Parasoft的内存错误检测很容易就识别了问题:
5.安全测试
》确保安全最佳实践(CERT、CWE、OWASP) 的一致应用,并与API级攻击集成,以发现更深入的应用程序的安全问题。利用全面的报告和合规包加上TUV认证的C/C++test创建强大的软件开发过程。
6.功能安全与合规:
》Parasoft C/C+ +test>照IEC61508、IEC2304ISO26262和EN50128标准通过了TUV的功能安全认证,帮助开发团队达到期望的安全完整性级别。
》为了简化工具验证过程,对于DO-178B/C、DO330和ED-12B/C,以及其他安全性标准,C++test合规包是可以考虑的。这些合规包是可以根据您的特定环境和使用需求定制的,以确保您拥有验证所需的所有文档。
》将测试执行报告保存到持续测试平台《CTP)数据库中,以便您可以轻松回溯并查看包含完整错误消息的通过/失败历史记录。更加详细的C++test文档有助于进行合规性审核。
Parasoft C/C++test如何帮助用户?
开发经理
充满信心地发布,因为您知道您正在交付安全、合规、可靠的应用程序。
软件工程师
实现符合安全标准的代码,使您可以专注于开发新的功能。
质量检测人员
更智能地测试,而不让它变得更难。使用具有集成代码覆盖率和自动 静态分析的图形编辑器扩展现有测试套件。