声纳覆盖和单元测试工作,但无法查看测试源

时间:2013-10-10 15:29:40

标签: unit-testing code-coverage sonarqube

我使用js testdriver生成覆盖率和单元测试报告,然后使用声纳运行器输出。

尽管所有声源都出现在声纳中以及正确的测试覆盖率和测试结果,但每当我点击源测试本身时,我就会得到“无法找到单元测试的来源:Chrome_290154776_Windows.CurrencyTest在任何测试目录中”< / p>

请参阅以下屏幕截图:

test report shows up source does not

我注意到的唯一显而易见的事情是浏览器/操作系统名称已被添加到测试类名称中,但之前这不是问题,这通常很好吗?

此外,如果我尝试通过点击仪表板上的“覆盖范围”然后浏览到经过单元测试的类来查看覆盖范围,则它们不会出现。然而,我可以手动浏览到该类(例如,从仪表板中单击文件),甚至可以从那里调出代码覆盖率!

请参阅以下说明:

covered classes missing but you can browse to them and see coverage too

这可能是上一个问题的结果还是无关?

据我所知,sonar-project.properties中的sonar.tests指向正确的目录。我的文件夹布局如下:

myProject > src > main
myProject > src > test
myProject > target

sonar-project.properties看起来像这样

# required metadata
sonar.projectKey=Core-1.0-SNAPSHOT
sonar.projectName=Core
sonar.projectVersion=1.0-SNAPSHOT

# optional description
sonar.projectDescription=

# path to source directories (required)
sonar.sources=src/main

# path to test source directories (optional)
sonar.tests=src/test

# Advanced parameters
sonar.javascript.jstestdriver.reportsPath=target/jstd
sonar.javascript.lcov.reportPath=target/jstd/jsTestDriver.conf-coverage.dat
sonar.dynamicAnalysis=reuseReports

# The value of the property must be the key of the language.
sonar.language=js

# Encoding of the source code
sonar.sourceEncoding=UTF-8

# Additional parameters
# sonar.my.property=value

我已经到了我的系绳的末端,这对我没有任何意义。任何帮助将不胜感激!

干杯

1 个答案:

答案 0 :(得分:0)

看到同样的问题。在带有Javascript插件1.4的声纳堆栈1.4上。不得不将这个插件从1.5降级到1.4以使jstest属性在下面工作。声纳3.74

我的测试在我的项目的测试目录中,我的javascript在js目录中。

Sonar-project.properties

sonar.projectKey=karma
sonar.projectName=karma test
sonar.projectVersion=0.0.1

sonar.sources=js
sonar.tests=test
sonar.language=js

sonar.dynamicAnalysis=reuseReports

sonar.javascript.jstest.reportsPath=reports
sonar.javascript.lcov.reportPath=reports/PhantomJS 1.9.7 (Mac OS X)/lcov.info

16:44:35.371 DEBUG - 解析JsTestDriver从文件夹/报告中运行Surefile格式 16:44:35.488 DEBUG - 添加unittest资源:org.sonar.api.resources.File@74c6fd6e [key = PhantomJS 1.9.7(Mac OS X)。计算器,dir =,filename = PhantomJS 1.9.7(Mac OS X) ).Calculator,语言= JavaScript的] 16:44:35.501 INFO - 传感器JsTestSensor完成:131 ms

我在上面的声纳报告中怀疑地看着“dir =”。不确定如何设置它。

有没有人在声纳1.5堆叠上取得更多成功?