当前位置: 首页 > 知识库问答 >
问题:

向sonarqube gradle Config添加源代码和测试集的正确语法是什么?

易京
2023-03-14

我有一个jhipster项目,项目中定义了一个sonarqube任务。我们在/src/main/UI/src/目录下构建了一个react UI...和/src/main/ui/src/test/...sonarqube的资产如下:

sonarqube {
    properties {
        property "sonar.host.url", "https://our_sonar_server"
        property "sonar.projectKey", "MyProjectGroup:MyProject"
        property "sonar.projectName", "MyProject"
        property "sonar.login", sonarLogin
        property "sonar.password", sonarPassword

        property "sonar.links.scm", "https://mygithub/myProject.git"
        property "sonar.links.scm_dev", "https://mygithub/MyProject.git"
        property "sonar.links.ci", ciLink

        if (pullRequest != null) {
            property "sonar.analysis.mode", "preview"
            property "sonar.github.pullRequest", pullRequest
            property "sonar.github.repository", "MyProjectGroup/MyProject"
            property "sonar.github.oauth", "my_oauth_hash"
            property "sonar.github.endpoint", "https://mygithubapi/v3"
        }
    }
}

目前,sonar只接收标准/src/main/java下的java。我尝试添加属性“sonar.sources”、“src/main/ui/src/*.js”、属性“sonar.test”、“src/main/ui/src/test/**”以及一些变体。然而,jenkin构建通过调用“./gradlew sonar-pprod-x test”的shell步骤来调用此功能,并出现类似“无效值”或类似的错误。我没有找到一个正确语法的例子。

编辑:我能够让声纳构建通过使用属性“sonar.sources”,“src/main/ui/src”属性“sonar.test”,“src/main/ui/src/test”

然而,当检查sonar服务器上的项目时,我仍然没有看到任何被引用的javascript文件。

共有1个答案

傅兴平
2023-03-14

合并上次编辑后,js文件显示在Sonarqube中。js测试也出现了,尽管它们没有显示任何覆盖率。只是单元测试的数量和通过的数量。可能还需要更多的配置,但这并不是原来问题的一部分。

在与我的经理交谈后,我们决定将源代码集缩小到两个子目录,“src/main/ui/src/app”和“src/main/ui/src/layouts”,这样html" target="_blank">测试就不会出现在源代码集下。文档建议您可以添加逗号分隔的列表,因此我创建了一个外部属性,并引用了实际属性中的那些:

ext.jsAppSrc = "src/main/ui/src/app, src/main/ui/src/layout"
ext.jsLayoutSrc = "src/main/ui/src/layout"
ext.jsTest = "src/main/ui/test"
...
property "sonar.sources", jsAppSrc, jsLayoutSrc
property "sonar.test", jsTest

props计算正确,但sonar任务失败,错误是无法找到参数[sonar.sources,src/main/ui/src/app,src/main/ui/src/layout on org.sonarqube.gradle.sonarqubeProperties的方法property()。

然后我进行重构,将逗号分隔的列表放在一个属性中,然后成功完成。

ext.jsAppSrc = "src/main/ui/src/app, src/main/ui/src/layout"
ext.jsTest = "src/main/ui/test"
...
property "sonar.sources", jsAppSrc
property "sonar.test", jsTest
 类似资料:
  • TLDR:我希望我的Spring Boot应用程序在启动时运行一些初始化代码。代码需要访问Spring bean和值。 我正在编写一个Spring Boot应用程序,它将同时使用来自队列的多条消息。为了做到这一点,它需要实例化多个消费者对象。Spring是否有一个好的方法来实例化相同类的可配置的实例数? 我考虑了下面的方法,但我觉得不对。这似乎是对注释的滥用,因为实例在构造后没有使用。有什么更好的

  • 我正在尝试将“{”文本“:”添加到字符串的开头,将“}”添加到字符串的结尾。 我一直在环顾四周,玩下面不同版本的游戏 甚至可以附加到扩展属性吗? 给我试图实现的目标添加更多信息 空的传递给

  • 问题内容: 我正在尝试在内添加HTML代码段,但无法使用包含功能。看来的当前语法与以前的语法不同:我看到许多示例使用 但是在官方文档中,它说使用 但随后在页面下方显示为 无论如何,我尝试了 我的代码片段不是很多代码,但是有很多事情要做。这可能会引起问题,所以我只用单词代替了内容,仍然一无所获。 我还尝试过直接在页面中声明模板,如下所示: 并遍历了引用脚本的所有变体,仍然一无所获。 我的页面还有很多

  • 问题内容: 我是一名新的Python程序员,他正在从2.6.4跃升至3.1.1。在我尝试使用“ else if”语句之前,一切都很好。解释器在“ else if”中的“ if”之后给了我一个语法错误,原因是我似乎无法弄清。 我可能缺少一些非常简单的东西;但是,我无法自行找到答案。 问题答案: 在python中,“ else if”被拼写为“ elif”。 另外,您还需要在和之后加上一个冒号。 简单

  • 下面的代码算是测试redis-jedis-nutz组合的最小测试代码,请不要忽略它们. 打开MainSetup类,添加如下代码 JedisAgent jedisAgent = ioc.get(JedisAgent.class); try (Jedis jedis = jedisAgent.getResource()) { // Java7的语法

  • 问题内容: PEP 263定义了如何声明Python源代码编码。 通常,Python文件的前两行应以: 但是我看过很多以以下内容开头的文件: => 编码而不是编码。 那么,声明文件编码的正确方法是什么? 是了编码允许的,因为所使用的正则表达式是懒惰?还是仅仅是声明文件编码的另一种形式? 我问这个问题是因为PEP不在谈论编码,它只是在谈论编码。 问题答案: 在这里检查文档: “如果Python脚本的