微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何获取类似于Sonarqube的Salesforce代码覆盖率报告

如何解决如何获取类似于Sonarqube的Salesforce代码覆盖率报告

问题是,我们先开发apex代码,然后编写测试类,它覆盖了apex类的至少75%的代码覆盖率,现在,当我登录到开发人员控制台时,我能够看到几乎没有多少代码覆盖率因为需要手动进入开发人员控制台,所以我想要一些报告,可以显示给高级经理有关整个组织的Salesforce测试代码覆盖率

Dev console code coverage

但是有可能在非常类似于sonarqube代码覆盖率报告的复杂报告中得到它

预先感谢 卡罗琳

解决方法

Sonarqube understands Apex,因此,如果您已经拥有许可证,它可能比您想象的要简单。还有其他工具,例如Clayton(我也不隶属于)。

如果您想手工制作类似的东西...

要以更具可读性的格式获取这些结果,可以从DeveloperConsole中的查询开始(查询选项卡,在底部的复选框中选中该复选框以使用Tooling API)

SELECT ApexClassorTrigger.Name,NumLinesCovered,NumLinesUncovered
FROM ApexCodeCoverageAggregate
ORDER BY NumLinesUncovered DESC
LIMIT 10

应该可以使您更好地了解哪些类/触发器最少。其中一些将是快速的胜利,花在创建/改进他们的测试上的时间将为您提供总体覆盖范围内的最佳结果。我的意思是,花1h修好覆盖100条线中的60条线的课程要好于覆盖4条线中的2条线的课程。

这是每个文件的“总计”结果。如果需要,可以检查每个单元测试的覆盖范围:

SELECT ApexTestClass.Name,TestMethodName,ApexClassOrTrigger.Name,NumLinesUncovered,Coverage
FROM ApexCodeCoverage

如果安装了Salesforce DX命令行(sfdx-cli)和Visual Studio Code(vscode)等开发人员工具,则可以做更多事情。 SFDX会告诉您覆盖了哪些行,哪些没有:https://salesforce.stackexchange.com/questions/232527/how-do-i-get-apex-code-coverage-statistics-when-using-salesforce-dx-visual-stu

并且VSCode允许您安装Apex PMD插件(PMD是类似于Sonarqube的免费工具)。我怀疑它会为管理生成漂亮的PDF。它旨在在开发过程中进行扫描,并向您发出警告,就像Word和Outlook突出显示错别字和语法错误一样。

最后但并非最不重要-尝试从安装程序运行Salesforce Optimizer。我认为它不会报告覆盖率,但是可以告诉高级警告标志(顶点代码很旧,并且在一段时间内没有被触摸-也许您不再需要该功能,也许有一个内置的效果更好,也许现在可以更简单地编写,甚至可以作为流程构建器;触发多个对象的对象违反最佳实践等)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。