是否有任何工具替代SONAR for .net代码质量并从中生成报告?

时间:2013-09-16 05:49:25

标签: c#-4.0 sonarqube fxcop

我有一个Visual Studio解决方案,它是使用c#4.0设计的。

我想检查解决方案的代码质量并生成报告。

我尝试了FxCop并且我也得到了报告,但我需要这样的报告(从图像中)。

规则合规性为85%,但在FxCop中,它只显示了关键,错误等。

我甚至无法将我的项目部署到SONAR,因为我有一些超时问题

参加解决方案中的一个项目。

请某人帮助我。

SONAR report

提前致谢。

此致

Roopini

3 个答案:

答案 0 :(得分:2)

我不知道是否有相当于SonarQube for .NET项目,但如果你真的想要这样的报告(显然我可以理解!),你应该提出如何解决SonarQube安装问题的问题而不是寻找其他东西。有很多组织使用SonarQube和C#插件成功分析了大型.NET解决方案,因此没有理由不能为您工作!

您可以在网上找到有用的资料来帮助您。例如,John M Wright写的关于"setting up SonarQube for C# projects"的博客文章。约翰定期更新他的帖子,因此信息应该仍然非常相关。

答案 1 :(得分:1)

您是否尝试过NDepend工具?它生成有关.NET代码质量和代码规则合规性的交互式报告。以下是一些sample reports

NDepend也是Visual Studio(2017年,2015年,2013年,2012年,2010年)中集成的工具,它提出了一系列互动功能(graphdependency matrixcode metrics visualization,{ {3}} ...)。关于NDepend的另一点是代码规则实际上是C#LINQ查询,因此很容易定制code diff或创建自己的代码规则。

NDepend还default code rule,您将从VSTS UI获取所有代码质量数据,而不是重定向到服务器。

我读到您在分析代码库时遇到了超时问题,可能是因为您的代码库非常大。 NDepend经过优化,可以分析非常大的代码库,并在几十秒内创建报告(分析整个.NET Fx需要大约一分钟)。 integrates in VS Team Services

免责声明:我在NDepend团队工作

答案 2 :(得分:0)

如果您还没有,我建议您查看有关为C#项目设置SonarQube的博文:http://www.wrightfully.com/setting-up-sonar-analysis-for-c-projects/

解决问题的关键是确定超时发生时系统正在执行的操作。查看您的日志文件,看看它们超时之前的最后几行。可能是您的代码很复杂而且需要更多时间,在这种情况下,您可以调整当时正在运行的任何工具的超时值。

否则,我会建议在超时发生在SonarQube之外时运行任何分析工具(fxcop,gendarme,sytlecop等)。也就是说,直接从命令行运行该工具,看它是否仍然超时或在控制台上提供任何其他信息。

此外,假设您正在使用声纳 - 跑步工具执行SonarQube分析,您可以将-X参数添加到命令行,该命令行将在启用调试级别日志记录的情况下运行它。这将创建更多日志消息,这可能会对此问题有所了解。