【发布时间】:2011-03-02 03:35:45
【问题描述】:
我们使用 Hudson 和 Maven 构建软件。我们有 C#、java 和 last,但并非最不重要的 PL/SQL 源(sprocs、包、DDL、crud)
对于 C# 和 Java,我们进行单元测试和代码分析,但在将 PL/SQL 源实际发布到目标数据库之前,我们并不真正了解它们的健康状况。
要求
我们不想在以下优先级中测试几件事:
- 来源是否有效,因此“可编译”?
- 对于某个数据库的包,它们会编译吗?
- 代码质量:我们是否存在代码缺陷,例如重复、过于复杂的方法或其他违反已定义规则的行为?
还有,
- 该工具必须无头运行(命令行、ant、...)
- 我们想对部分代码库进行分析(仅限更改的源)
工具
我们做了一些研究,发现以下工具可能会有所帮助:
- Cast Application Intelligence Platform (AIP): 似乎是一个掌握“任何东西”信息的服务器。找不到可以以可读格式导出的控制台版本。
- Toad for Oracle: 据说专业版包含一个叫做 Xpert 的东西,可以根据代码库验证一组规则。
- Sonar + PL/SQL-Plugin: 使用 Toad for Oracle 以声纳方式显示代码运行状况。这是为了浏览代码库的当前状态。
- Semantic Designs DMSToolkit: 对源代码库的一般分析。命令行可用吗?
- Semantic Designs Clones Detector: 检测克隆。但也可以通过命令行?
- Fortify Source Code Analyzer: 似乎专注于安全问题。但也许它是可扩展的? more...
到目前为止,Toad for Oracle 和 Sonar 似乎是一个优雅的解决方案。但是我们可能在这里遗漏了什么吗?
有什么想法吗?其他产品?经验?
关于 SO 的相关问题:
【问题讨论】:
标签: oracle plsql continuous-integration build-automation code-analysis