我有一个spring-boot应用程序,我的@SpringBootApplication入门级看起来像一个标准的.所以我为我的所有功能创建了许多测试,并将摘要发送给sonarqube以查看我的报道.
对于我的初级班,Sonarqube告诉我,我只有60%的覆盖率.因此平均覆盖率不如预期.
我的Test类只是默认类.
@RunWith(SpringRunner.class)
@SpringBootTest(classes = ElectronicGiftcardServiceApplication.class)
public class ElectronicGiftcardServiceApplicationTests {
@Test
public void contextLoads() {
}
}
Run Code Online (Sandbox Code Playgroud)
那么如何在我的应用程序的入门类中测试我的主类?
从SonarQube 6.5升级到6.6后,弹性搜索"无法以root身份运行"错误.没有其他改变.
CentOS 6.8版(最终版)Java(TM)SE运行时环境(版本1.8.0_101-b13)
java.lang.RuntimeException: can not run elasticsearch as root
at org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:106) ~[elasticsearch-5.6.2.jar:5.6.2]
at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:195) ~[elasticsearch-5.6.2.jar:5.6.2]
at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:342) [elasticsearch-5.6.2.jar:5.6.2]
at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:132) [elasticsearch-5.6.2.jar:5.6.2]
at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:123) [elasticsearch-5.6.2.jar:5.6.2]
at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:67) [elasticsearch-5.6.2.jar:5.6.2]
at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:134) [elasticsearch-5.6.2.jar:5.6.2]
at org.elasticsearch.cli.Command.main(Command.java:90) [elasticsearch-5.6.2.jar:5.6.2]
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:91) [elasticsearch-5.6.2.jar:5.6.2]
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:84) [elasticsearch-5.6.2.jar:5.6.2]
2017.10.20 11:59:14 WARN es[][o.e.b.ElasticsearchUncaughtExceptionHandler] uncaught exception in thread [main]
org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root
at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:136) ~[elasticsearch-5.6.2.jar:5.6.2]
at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:123) ~[elasticsearch-5.6.2.jar:5.6.2]
at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:67) ~[elasticsearch-5.6.2.jar:5.6.2]
at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:134) ~[elasticsearch-5.6.2.jar:5.6.2]
at org.elasticsearch.cli.Command.main(Command.java:90) ~[elasticsearch-5.6.2.jar:5.6.2]
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:91) ~[elasticsearch-5.6.2.jar:5.6.2]
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:84) ~[elasticsearch-5.6.2.jar:5.6.2]
Caused …Run Code Online (Sandbox Code Playgroud) 我在netbeans项目上运行Sonar时遇到了一些问题.它不工作,我有以下错误:
C:\Users\remy.fischer\Desktop\NetBeansProjects\NetBeansProjects\BinPacking\sonar-scanner-3.0.3.778-windows\bin>sonar-scanner -Dsonar.projectKey=..... -Dsonar.projectName=...
INFO: Scanner configuration file: C:\Users\remy.fischer\Desktop\NetBeansProjects
\NetBeansProjects\BinPacking\sonar-scanner-3.0.3.778-windows\bin\..\conf\sonar-s
canner.properties
INFO: Project root configuration file: NONE
INFO: SonarQube Scanner 3.0.3.778
INFO: Java 1.8.0_121 Oracle Corporation (64-bit)
INFO: Windows 7 6.1 amd64
INFO: User cache: C:\Users\remy.fischer\.sonar\cache
can't open C:\Users\remy.fischer\Desktop\NetBeansProjects\NetBeansProjects\BinPa
cking\sonar-scanner-3.0.3.778-windows\jre\lib\tzmappings.
INFO: Load global settings
INFO: Load global settings (done) | time=62ms
INFO: User cache: C:\Users\remy.fischer\.sonar\cache
INFO: Load plugins index
INFO: Load plugins index (done) | time=0ms
INFO: SonarQube server 6.4.0
INFO: Default locale: "fr_FR", source code encoding: "UTF-8"
INFO: Process …Run Code Online (Sandbox Code Playgroud) 我最近安装了最新版本的詹金斯,SonarQube 6.0(在单独的服务器上运行),当詹金斯的工作试图上载声纳扫描结果向SonarQube服务器,我收到以下错误:
'ERROR: Error during Sonar runner execution
org.sonar.runner.impl.RunnerException: Unable to execute Sonar
at org.sonar.runner.impl.BatchLauncher$1.delegateExecution(BatchLauncher.java:91)
at org.sonar.runner.impl.BatchLauncher$1.run(BatchLauncher.java:75)
at java.security.AccessController.doPrivileged(Native Method)
at org.sonar.runner.impl.BatchLauncher.doExecute(BatchLauncher.java:69)
at org.sonar.runner.impl.BatchLauncher.execute(BatchLauncher.java:50)
at org.sonar.runner.api.EmbeddedRunner.doExecute(EmbeddedRunner.java:102)
at org.sonar.runner.api.Runner.execute(Runner.java:100)
at org.sonar.runner.Main.executeTask(Main.java:70)
at org.sonar.runner.Main.execute(Main.java:59)
at org.sonar.runner.Main.main(Main.java:53)
Caused by: org.sonarqube.ws.client.HttpException: Error 413 on http://****`
Run Code Online (Sandbox Code Playgroud)
可能是什么原因?声纳项目属性中的错误?
我的类实现IDisposable并遵循模式在哪里
public void Dispose()
{
Dispose(true);
GC.SuppressFinalize(this);
}
Run Code Online (Sandbox Code Playgroud)
但是声纳还在告诉我,我需要实施配置模式......
https://sonarqube.com/issues#issues=AVtsPLjmtpYg8Dj4z0MU
这是声纳的缺陷还是我错过了什么?
情况:
我想用Jenkins(1.642.4)触发的SonarQube(5.4)分析我的项目.这是一个用maven构建的java项目.
我看到两种触发分析的方法:
问题:
如果我使用已弃用的Post Build Action,声纳项目配置的属性将从项目pom中自动导出.
我使用推荐的Post Build Step,我收到了Exception
您必须为"未知"定义以下必需属性:sonar.projectKey,sonar.projectName,sonar.projectVersion,sonar.sources
不受欢迎的解决方案:
解决方案是通过java项目中的sonar-project.properties文件或通过Jenkins步骤中的参数提供所需的属性.
恕我直言:这是重复.所有相关信息都在Maven pom中定义:projectKey可以从artifactId派生,projectName和projectVerstion在maven中是相同的属性.特别是项目版本至关重要.我不想在每次发布后更新项目版本(或者在发布插件中编写一些代码来自动更新它).
我想要的是
我想在Jenkins中使用推荐的Post Build Step,而不需要为我的所有项目重新定义所有项目属性以使声纳高兴.相反,sonar/jenkins/plugin /应该从我的maven pom文件中获取属性.我可以使用额外的插件吗?我可以重新配置我的Jenkins-Sonar-Plugin吗?
我不想在我的pom /项目中提供任何声纳特定信息,因为该项目不应该关心声纳.它应该只包含构建项目所需的信息.
continuous-integration maven jenkins sonarqube sonarqube-scan
我们有一个使用Java的非常标准的Web项目,它还包含标准src/main/webapp文件夹中的一些javascript代码.我们使用Gradle 2.14作为构建工具.
我们刚刚安装了新的Sonarqube 6.0.1新的服务器上的一个品牌,经检查发现了Java和Javascript插件安装,并修改了的build.gradle文件作为推荐Sonarqube文档:
plugins {
id 'org.sonarqube' version '2.0.1'
}
sonarqube {
properties {
property 'sonar.projectName', 'Our-Project'
property 'sonar.projectKey', 'com.ourcompany:our-project'
}
}
Run Code Online (Sandbox Code Playgroud)
这不能按预期工作:正确分析java代码,我们可以在声纳上浏览结果,但不分析javascript代码.
我们做错了什么?谢谢.
我们目前有一个jenkins管道使用Multibranch Workflow plugin.每个git分支执行一个sonarqube分析,使用该sonar.branch属性创建一个sonarqube项目 .这非常有用,因为在合并之前正在分析每个分支,当分支与master合并并在GIT上消失时问题出现,项目继续在sonarqube上并且需要手动删除.有没有办法自动完成?或任何其他推荐?
如何在.Net Core 2.0中生成代码覆盖?
我尝试了以下方法:
"TestPlatform\vstest.console.exe" --collect:"Code Coverage"
Run Code Online (Sandbox Code Playgroud)
但我收到此错误消息:
Data collector 'Code Coverage' message: Cannot find CodeCoverage.exe.
Run Code Online (Sandbox Code Playgroud)
我尝试了dotCover最新版2017.2,我能够在本地机器上获得覆盖,但是当在TFS Build中运行相同时,不会生成覆盖信息.
我不确定TFS中的NetCore Test任务何时会获得对代码覆盖的支持.
如何在TFS中发布DotCover的结果,使用DotCover Commandline为.Net Core生成Coverage?
IntelliJ IDEA - >设置 - >其他设置 - > SonarLint常规设置SonarQube服务器:Localhost(http:// localhost:9000 ;登录:admin;密码:admin;测试连接 - "验证成功")更新绑定:几秒钟前
IntelliJ IDEA - >设置 - >其他设置 - > SonarLint项目设置绑定到服务器:Localhost SonarQube项目:首先更新服务器绑定
但它已经绑定了!可能有什么不对?Web界面也看不到项目.当在工作区中使用SonarLint按Anailze代码时,我收到一个错误弹出:"项目绑定到无效的SonarQube服务器.播放,检查配置"