我已经configuration了Karma来报告我的JavaScript代码的覆盖范围。 以下是karma.conf.js文件中的configuration部分: coverageReporter: { reporters: [ { type: 'html', dir: 'build/karma/coverage' }, { type: 'lcov', dir: 'build/karma/coverage', subdir: '.' }, { type: 'cobertura', dir: 'build/karma/coverage' } ] }, 我的lcov.info文件具有以下格式: TN: SF:./app/scripts/app.js FN:16,(anonymous_1) FN:26,(anonymous_2) FNF:2 FNH:1 FNDA:1,(anonymous_1) FNDA:0,(anonymous_2) DA:2,1 DA:20,1 DA:29,0 DA:34,0 LF:4 LH:2 BRF:0 BRH:0 end_of_record 不幸的是, Sonarqube JavaScript插件只考虑以SF: , DA:或BRDA:开头的行BRDA: (cf LCOVParser )。 由于这个原因,LCOV […]
学习如何使用SonarQube,并从这里进行快速安装 一直到第5步。我的构build失败,当我执行:C:\ sonar-runner \ bin \ sonar-runner.bat 我得到以下错误: INFO: ———————————————————————— INFO: EXECUTION FAILURE INFO: ———————————————————————— Total time: 7.572s Final Memory: 8M/223M INFO: ———————————————————————— ERROR: Error during Sonar runner execution ERROR: Unable to execute Sonar ERROR: Caused by: You must define the following mandatory properties for 'Unknown': sonar.projectKey, sonar.projectName, sonar.projectVersion, sonar.sources ERROR: ERROR: To see the […]
我们公司正在努力实施一个源代码质量pipe理工具。 SonarQube就是我们遇到的一个工具,而且function相当丰富,而且非常出色。 我们希望在实际执行之前将其与同行相比较,如果有的话。 Sonar的能力和特点有没有很好的竞争者?
我想排除Sonar分析目录。 我有我的sonar-project.properties文件中定义的以下属性: sonar.sources=src/java sonar.exclusions=src/java/test/****/*.java 我有的目录结构是: src/java/dig src/java/test/dig 当我运行声纳运动员时,我得到以下信息: INFO – Excluded sources: INFO – src/java/test/**/*.java INFO – Excluded tests: INFO – **/package-info.java 但是当我检查分析的结果时,testing目录中的所有包仍然存在。 我只需要告诉Sonar不要分析testing目录及其中的任何包。
我在Sonar上得到这个警告。我想要解决scheme在声呐上删除这个警告。 我的课是这样的: public class FilePathHelper { private static String resourcesPath; public static String getFilePath(HttpServletRequest request) { if(resourcesPath == null) { String serverpath=request.getSession().getServletContext().getRealPath(""); resourcesPath = serverpath + "/WEB-INF/classes/"; } return resourcesPath; } } 我想要适当的解决scheme,以消除声纳上的这个警告。
我真的有一个“溢出”试图让这些东西一起工作。 我遵循这里的指令: http ://docs.sonarqube.org/display/PLUG/Android+Lint+Plugin最后得到一个安装了Android Lint插件1.1的SonarQube 5.1.1服务器。 然后,我configuration了我的多模块Gradle构build以使用SonarQube插件:请参阅下面的根configuration的代码片段。 plugins { id 'org.sonarqube' version '1.0' } sonarqube { properties { property 'sonar.host.url', 'sonarqube-server:9000' property 'sonar.jdbc.url', 'jdbc:mysql://sonarqube-db:3306/sonar?useUnicode=true&characterEncoding=utf8' property 'sonar.jdbc.driverClassName', 'com.mysql.jdbc.Driver' property 'sonar.jdbc.username', 'sonar' property 'sonar.jdbc.password', 'sonar' property 'sonar.sourceEncoding', 'UTF-8' property 'sonar.login', 'admin' property 'sonar.password', 'admin' property 'sonar.profile', 'Android Lint' property 'sonar.import_unknown_files', true property 'sonar.android.lint.report', 'build/outputs/lint-results.xml' } } 之后我跑了lint […]
我在Scala中看到了一个关于静态分析的StackOverflow问题,但是那个在2009年得到了答案。如您所知,Scala工具变化非常迅速。 因此,我想知道是否有人熟悉Scala中静态分析工具的当前状态可以告诉我是否有一个与Scala相当的Findbugs。 我发现Findbugs为Scala发布了许多不必要的警告,可能是由于特性等原因,“对象”单例编译为字节码的方式。我听说Scalastyle不仅是Java的CheckStyle的Scala版本,它也包括Findbugs和PMD。 但是,如果它没有实现所有Findbugs和/或PMD,那么是否还有其他工具可以补充它? 或者,Scalastyle不仅适用于样式检查,还可以改善代码质量? 另外,斯卡拉与Sonar的整合呢? Scala声纳插件(与Scalastyle一起使用)是否可靠?
有一个声纳违规: 声纳违规:安全 – 数组直接存储 public void setMyArray(String[] myArray) { this.myArray = myArray; } 解: public void setMyArray(String[] newMyArray) { if(newMyArray == null) { this.myArray = new String[0]; } else { this.myArray = Arrays.copyOf(newMyArray, newMyArray.length); } } 但是我想知道为什么?
我使用SonarQube进行代码质量控制,并突然build立,否则将无法分析和失败。 [INFO] [00:00:03.630]分析/mySuperProject/target/jacoco.exec – > java.io.IOException:不兼容的版本1007 当我用debugging开关调用Maven构build时,这个原因就显示出来了 Caused by: java.io.IOException: Incompatible version 1007. at org.jacoco.core.data.ExecutionDataReader.readHeader(ExecutionDataReader.java:127) at org.jacoco.core.data.ExecutionDataReader.readBlock(ExecutionDataReader.java:107) at org.jacoco.core.data.ExecutionDataReader.read(ExecutionDataReader.java:87) at org.sonar.plugins.jacoco.AbstractAnalyzer.readExecutionData(AbstractAnalyzer.java:134) at org.sonar.plugins.jacoco.AbstractAnalyzer.analyse(AbstractAnalyzer.java:107) 在检查jacoco的ExecutionDataReader时,我发现这个exception是从中抛出的 if (version != ExecutionDataWriter.FORMAT_VERSION) { throw new IOException(format("Incompatible version %x.",Integer.valueOf(version))); } 并从ExecutionDataWriter我发现了 /** File format version, will be incremented for each incompatible change. */ public static final char FORMAT_VERSION = 0x1007; […]
是否有可能closures声纳( www.sonarsource.org )测量特定的代码块,哪一个不想被测量? 一个例子是FindBugs输出的“Preserve Stack Trace”警告。 当离开服务器时,我可能只想把消息传回给客户端,而不包括我刚才捕获的实际exception,如果这个exception对于客户端来说是未知的(因为客户端没有那个JAR例外包含例外)。