Questions tagged «static-analysis»

“静态分析”是指软件工具(或其使用),用于分析应用程序代码中的任意属性,例如错误(未初始化的变量,可能的SQL注入攻击,此代码已死,自变量可以为null,... )或结构(此代码的调用图是什么?是否有重复的代码?组件之间传递了哪些信息?)。

12
如何在php中执行静态代码分析?[关闭]
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗? 更新问题,使其成为Stack Overflow 的主题。 6年前关闭。 是否有用于PHP源文件的静态分析工具?二进制本身可以检查语法错误,但是我正在寻找功能更多的东西,例如: 未使用的变量分配 未先初始化就分配给的数组 以及可能的代码样式警告 ...

14
有哪些可用的开源C ++静态分析工具?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意测验或进一步的讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 Java有一些非常好的开源静态分析工具,例如FindBugs,Checkstyle和PMD。这些工具易于使用,非常有用,可以在多个操作系统上运行并且免费。 可以使用商业C ++静态分析产品。尽管拥有这样的产品很棒,但对学生来说成本太高了,通常很难获得试用版。 另一种选择是找到可以在多个平台(Windows和Unix)上运行的开源C ++静态分析工具。通过使用开源工具,可以对其进行修改以适合某些需求。寻找工具并非易事。 以下是其他人发现或建议的C ++静态分析工具的简短列表。 C ++检查http://sf.net/projects/cppcheck/ Oink http://danielwilkerson.com/oink/index.html C和C ++代码计数器http://sourceforge.net/projects/cccc/ 夹板(答案) Mozilla的猪肉(答案)(现在是Oink的一部分) Mozilla的Dehydra(答案) -Weffc++GNU g ++的使用选项(来自答案) 还有哪些其他便携式移植开源C ++静态分析工具,谁都知道并且可以推荐? 一些相关的链接。 /programming/97454/c-static-code-analysis-tool-on-windows http://en.wikipedia.org/wiki/List_of_tools_for_static_code_analysis http://www.chris-lott.org/resources/cmetrics/ 一个免费的工具,可以根据一组编码标准检查C / C ++源代码吗? http://spinroot.com/static/ 选择静态代码分析工具

10
为什么在Rust中需要显式的生存期?
我正在阅读Rust书的终生一章,并且遇到了这个示例,它给出了一个有名/显式的终生: struct Foo<'a> { x: &'a i32, } fn main() { let x; // -+ x goes into scope // | { // | let y = &5; // ---+ y goes into scope let f = Foo { x: y }; // ---+ f goes into scope x = …

9
哪些静态分析工具可用于C#?[关闭]
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使它成为Stack Overflow 的主题。 6年前关闭。 这个问题的答案是社区的努力。编辑现有答案以改善此职位。它当前不接受新的答案或互动。 有哪些工具可用于针对C#代码进行静态分析?我知道FxCop和StyleCop。还有其他吗?我之前曾经碰过NStatic,但是它一直在开发中,似乎永远存在-从我所看到的内容来看,它看起来非常漂亮,因此,如果能看到今天的曙光,那就太好了。 沿着这些思路(主要是我对静态分析的兴趣),用于测试多线程问题(死锁,竞争条件等)的代码的工具似乎也很少。Typemock Racer刚刚弹出,所以我会看看。除此之外呢? 对于您使用过的工具的真实看法,我们将不胜感激。

12
在Django中使用Pylint
我非常想将pylint集成到我的python项目的构建过程中,但是我遇到了一个问题:我发现一种非常有用的错误类型:-- E1101: *%s %r has no %r member*在使用通用django字段时不断报告错误, 例如: E1101:125:get_user_tags: Class 'Tag' has no 'objects' member 这是由以下代码引起的: def get_user_tags(username): """ Gets all the tags that username has used. Returns a query set. """ return Tag.objects.filter( ## This line triggers the error. tagownership__users__username__exact=username).distinct() # Here is the Tag class, models.Model is …

12
您将哪些代码分析工具用于Java项目?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 8年前关闭。 您在Java项目上使用哪些代码分析工具? 我对各种感兴趣 静态代码分析工具(FindBugs,PMD和其他任何工具) 代码覆盖率工具(Cobertura,Emma等) 任何其他基于仪器的工具 还有什么,如果我想念什么 如果适用,还请说明您使用的构建工具以及这些工具与IDE和构建工具的集成程度。 如果仅以特定方式(例如,IDE插件或构建工具插件)提供工具,则该信息也值得注意。

13
是否有JavaScript静态分析工具?[关闭]
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使其成为Stack Overflow 的主题。 2年前关闭。 改善这个问题 当我在变量名上做错字(例如错字)时,我习惯于让编译器抱怨,但是JavaScript习惯于让它通过。 是否有用于JavaScript的静态分析工具?

3
PMD和FindBugs有什么区别?
比较PMD和CheckStyle有一个问题。但是,我找不到关于PMD和FindBugs之间差异/相似性的详细分类。我相信一个关键的区别是PMD适用于源代码,而FindBugs适用于编译后的字节码文件。但是就功能而言,这应该是一个选择,还是两者相辅相成?

8
如何分析Python代码以找出问题区域?
我有一个跨多个项目的大型资源库。我想生成一份有关源代码运行状况的报告,以确定需要解决的问题区域。 具体来说,我想找出循环复杂度高的例程,确定重复性,并可能进行一些类似于皮棉的静态分析,以发现可疑的(因而可能是错误的)构造。 我将如何构建这样的报告?

8
如何为C ++代码生成调用图
我正在尝试生成调用图,通过该图可以找到击中特定函数的所有可能执行路径(这样我就不必手动找出所有路径,因为有许多路径可以导致该函数)。例如: path 1: A -> B -> C -> D path 2: A -> B -> X -> Y -> D path 3: A -> G -> M -> N -> O -> P -> S -> D ... path n: ... 我尝试了Codeviz和Doxygen,但无论如何,这两个结果都只显示目标函数D的被调用者。在我的情况下,D是类的成员函数,其对象将包装在智能指针中。客户端将始终通过工厂获得智能指针对象,以调用D。 有谁知道如何实现这一目标?

17
Checkstyle与PMD
我们正在将静态分析工具引入Java产品的构建系统中。我们正在使用Maven2,因此Checkstyle和PMD集成是免费提供的。但是,就执行基本样式规则而言,这两个工具之间似乎在功能上有很大的重叠。 同时使用这两种方法有好处吗?如果一个工具可以工作,我不想维护两个工具。如果选择一种,应该使用哪一种,为什么? 我们还计划使用FindBugs。还有其他静态分析工具值得我们关注吗? 更新:共识似乎是PMD优于CheckStyle。我看不到有理由同时使用这两种文件,也不想维护2套规则文件,因此我们可能只针对PMD。我们还将引入FindBugs,也许最终引入Macker来实施体系结构规则。

4
进口订单编码标准
PEP8建议: 导入应按以下顺序分组: 标准库导入 相关第三方进口 本地应用程序/特定于库的导入 您应该在每组导入之间放置一个空白行。 有没有一种方法来检查,如果该标准违反了使用静态代码分析工具包的任何地方,比如pylint,pyflakes,pychecker,pep8? 违规示例: from my_package import my_module from django.db import models import os 正确的导入方式: import os from django.db import models from my_package import my_module

8
旧版C / C ++项目中的死代码检测[关闭]
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使其成为Stack Overflow的主题。 4年前关闭。 改善这个问题 您将如何进行C / C ++代码中的无效代码检测?我有一个相当大的代码库可以使用,并且至少有10-15%是无效代码。是否有任何基于Unix的工具来识别此区域?有些代码仍然使用大量预处理器,自动化过程可以处理吗?
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.