原创|使用教程|编辑:蒋永|2017-02-20 10:41:47.000|阅读 456 次
概述:本教程讲解了Jtest中RuleWizard和BugDetective静态分析的讲解,欢迎收藏和分享~
# 周年庆正版采购有优惠,点击咨询 # # 31款JAVA开发必备控件和工具 #
相关链接:
RuleWizard(仅在Architect and Server edition中提供)允许您为Java代码语法、JSP代码和代码风格问题创建自定义的代码规范规则。Jtest可以自动实施任何在 RuleWizard 中创建的有效规则。通过创建和检查自定义规则,团队可以验证独特的项目和组织需求、以及防止最常见的错误重复出现。
使用 RuleWizard,就能以图形化的方式创建规则(通过创建流程图形式的规则表示法),或者自动创建规则(通过提供演示样本规则违例的代码)。编写或修改规则时,无需任何编码或解析器的知识。
打开 RuleWizard的方法有两种:
BugDetective 是一类新的静态分析技术,该技术使用了几种分析技巧,包括模拟应用程序执行路径,以识别可能触发运行时缺陷的路径。检测到的缺陷包括,空指针异常、资源泄漏、SQL注入和其他安全漏洞问题。
注意:如需使用 BugDetective,则需要用Server Edition (服务器版)。
BugDetective 是一类新的静态分析技术,该技术使用了几种分析技巧,包括模拟应用程序执行路径,以识别可能触发运行时缺陷的路径。检测到的缺陷包括,空指针异常、资源泄漏、SQL注入和其他安全漏洞问题。
由于该分析涉及到识别和跟踪复杂路径,它会暴露通常可逃避编码规则静态分析和单元测试的错误,这些错误难以通过手动测试或检查找到。对于那些具有遗留代码库和嵌入式代码(这些情况下,此类错误的运行时检测效果较差或根本不可能)的用户而言,BugDetective可在不执行代码的情况下显露错误的功能,就特别重要。
BugDetective独特的静态分析通过搜索代码中的 “可疑点”,开始分析正在测试的源码。可疑点是潜在的错误点。这些可疑点在 BugDetective 规则中被定义。只要识别了可疑点,BugDetective 就调查导致该可疑点的可能执行路径,并检查是否有任何确实违反BugDetective规则的路径存在。如果找到了这样的路径,就报告一个违例。
例如,检测可能的 “除数为零”情形的规则就规定,任何使用了"/" 或 "%" 运算符的点都是可疑的。然后它检查分母中的变量,在导致它为零的任何可能执行路径的点中,是否能保持零值。如果是的话,则会报告一条错误。
对于每个发现的错误,分层结构流路径数据都会详细准确地列出导致被识别错误的完整执行路径,并以显现出错误的那一代码行作为结束。为减少每个被发现问题的诊断和纠正所需要的时间和工作量,流路径详细信息还会补充扩展注释(例如,一条关于 “避免空指针解除引用”违例的描述就包含这样的注释,描述哪些变量、在流路径的哪一点包含 null 值)。
为使分析过程更灵活、更适合于项目的独特要求,可以参数化某些规则。因此,BugDetective 甚至可以用来检测与特定的 API 使用相关的违例。
通过使用 BugDetective,开发团队可以获得以下关键好处:
查看更多parasoft测试产品
<详询客服>获取更多活动信息
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,尊重他人劳动成果
好文不易,鼓励一下吧!
本文将会介绍如何在parasoft中生成报告,您可以配置报告设置来指定本地分析报告的内容、格式和位置。
我们使用安全性至关重要的软件面临成本危机,这意味着所需的增强功能已经超出了为其开发支付费用的能力。例如,波音787计划需要650万行代码,设计、开发和测试成本为4,000,000,0000美元。重大安全关键项目的趋势表明,总成本呈指数增长,其中软件占开发总预算的比例逐年上升。使用先前项目中使用的相同技术,下一个大型航空航天项目可能会负担不起。所以,我们能做些什么?
Qt Design Studio是一个UI设计和开发工具,使设计人员和开发人员能够快速进行原型制作并创造美好的体验。设计师和开发人员都使用Qt Design Studio,这使两者之间的协作更加简单和简化。
借助服务虚拟化,您可以简化模拟过程,并创建共享核心功能的可重用虚拟服务库,因此您可以一遍又一遍地停止创建虚拟服务。
专业针对Java语言的开发测试方案,可无缝集成Parasoft SOAtest
微信扫码登录
福利更多、资源更多
官方微信
官方微博
重庆慧都科技有限公司 版权所有 Copyright 2003-2021 渝ICP备12000582号-13 渝公网安备 50010702500608号