Node.js 节点JS+;Grunt声纳跑步者+;代码覆盖率未显示
我在NodeJS中创建了一个REST服务,并使用mocha编写了测试用例。我已经能够使用伊斯坦布尔生成代码覆盖率,并且工作非常好。现在我的要求是使用声纳显示代码覆盖范围。法规遵从性违规按预期列出。但声纳并没有生成代码覆盖范围。我怀疑gruntfile.js配置有问题。目前,我通过复制节点_模块中grunt sonar runner文件夹中的源代码并执行grunt sonar runner来生成代码遵从性冲突。我当前的文件夹结构如下所示:Node.js 节点JS+;Grunt声纳跑步者+;代码覆盖率未显示,node.js,gruntjs,sonarqube,mocha.js,Node.js,Gruntjs,Sonarqube,Mocha.js,我在NodeJS中创建了一个REST服务,并使用mocha编写了测试用例。我已经能够使用伊斯坦布尔生成代码覆盖率,并且工作非常好。现在我的要求是使用声纳显示代码覆盖范围。法规遵从性违规按预期列出。但声纳并没有生成代码覆盖范围。我怀疑gruntfile.js配置有问题。目前,我通过复制节点_模块中grunt sonar runner文件夹中的源代码并执行grunt sonar runner来生成代码遵从性冲突。我当前的文件夹结构如下所示: <ProjectRoot> |--serve
<ProjectRoot>
|--server.js
|--[test]
|--|--serverTest.js
|--[node_modules]
|--|--[grunt-sonar-runner]
|--|--|--[src]
|--|--|--|--server.js
我们有两个部分-->分析和试运行。这是干什么
除此之外,我们还有一把钥匙叫mochaTest
在伊斯坦布尔运行mocha时,我将在名为coverage的文件夹中的项目根目录中生成覆盖率报告。不幸的是,它没有被列入声纳。任何帮助都将不胜感激
提前感谢,
Noble只需在项目根文件夹中定义sonar-roject.properties。在该属性文件中,我们可以指定伊斯坦布尔生成的lcov.info的相对路径。启动sonar qube服务器后,只需运行sonar runner(前提是系统路径中存在sonar runner)。Sonar报告将在Sonar dashboard中可见您是否应该提供选项。Sonar.javascript.lcov.reportPath?对谢谢你的回复。问题解决了。已卸载grunt sonar runner模块。只需在项目根文件夹中定义sonar-roject.properties。在该属性文件中,我们可以指定伊斯坦布尔生成的lcov.info的相对路径。启动sonar qube服务器后,只需运行sonar runner(前提是系统路径中存在sonar runner)。声纳报告将在声纳仪表板中可见。
grunt.initConfig({
jshint: {
all: [
'Gruntfile.js',
'tasks/*.js',
'test/*.js'
],
options: {
jshintrc: '.jshintrc'
}
},
// Before generating any new files, remove any previously-created files.
clean: {
tests: ['tmp']
},
// Configuration to be run (and then tested).
sonarRunner: {
analysis: {
options: {
debug: true,
separator: '\n',
sonar: {
host: {
url: 'http://localhost:9000'
},
jdbc: {
url: 'jdbc:h2:tcp://localhost:9092/sonar',
username: 'sonar',
password: 'sonar'
},
projectKey: 'sonar:grunt-sonar-runner:0.1.0',
projectName: 'Grunt Sonar Runner',
projectVersion: '0.10',
sources: ['src'].join(','),
language: 'js',
sourceEncoding: 'UTF-8'
}
}
},
dryRun: {
options: {
dryRun: true,
debug: true,
separator: '\n',
sonar: {
host: {
url: 'http://localhost:9000'
},
jdbc: {
url: 'jdbc:mysql://localhost:3306/sonar',
username: 'sonar',
password: 'sonar'
},
projectKey: 'sonar:grunt-sonar-runner:0.1.0',
projectName: 'Grunt Sonar Runner',
projectVersion: '0.10',
sources: ['src'].join(','),
exclusions: '**/R.js'
}
}
}
},
// Unit tests.
mochaTest: {
test: {
options: {
reporter: 'spec'
},
src: ['test/**/*.js'],
}
}
});