在过去的两天里,我一直在尝试在我的 ruby 应用程序单元中测试和报告我的 javascript 代码。我终于能够使用 Jasmine 和 JCov ( https://github.com/yp-engineering/jcov ) 对无头浏览器运行我的 javascript 测试 JCov 可以生成一个 report.html 文件,这是一个示例:
<!DOCTYPE html>
<html lang='en'>
<head>
<meta charset='utf-8'>
<title>JCov</title>
</meta>
<link href="report.css" media="screen" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>JCov : <span class="total-coverage"> 90%<span/></h1>
<table>
<tr><th>Filename</th><th>Coverage</th><th>Percent</th></tr>
<tr>
<td><a href="javascripts/mean.js.html">javascripts/mean.js</a></td>
<td>(10/11)</td>
<td> 90%</td>
</tr>
<tr>
<td><em>Total:</em></td>
<td>(10/11)</td>
<td> 90%</td>
</tr>
</table>
</body>
</html>
现在,我怎样才能让 Sonar 阅读这份报告?我尝试了一些相关的谷歌搜索,但大多数结果导致使用 JsTestDriver 并使用它生成的 LCOV 文件使用声纳 JavaScript 插件提供给声纳。问题在于 JsTestDriver 本身并不能针对无头浏览器运行,它需要 java,而 JCov 是一个 ruby Gem。