SonarQube安装使用、汉化、数据库配置

发表于:2018-12-18 12:02

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:Evelynzzz    来源:简书

  之前用过Coding.net的代码质量分析功能,实用强大,但是最近突然找不到这个功能了(坑!)
  虽然官网上仍然把代码质量分析当一个主要功能介绍,但找不到任何相关的文档和说明,就好像这个功能消失了一样(WHAT?)
  联系客服也毫无回应(什么情况?)。
  我们的需求是,找一个能够统计代码注释率,分析代码质量,适用于多种编程语言的工具。试用了几个最后确定用 SonarQube 。
  接下来介绍
  如何使用 SonarQube 分析本地的项目
  如何安装汉化包
  如何更改数据库配置
  安装和使用
  首先,到官网下载最新版本。我下载的是V7.0。
  然后按照 Get Started in Two Minutes 启动 SonarQube 服务器:
  解压(放哪儿都行)
  windows:在解压后的文件夹中,找到bin目录,选择系统,比如我选的 windows-x86-64 ,然后直接双击 StartSonar.bat 启动服务器。
  打开页面 http://localhost:9000
  点击页面上的 Log in 按钮登录,账号密码都是 admin 。
  怎么分析项目呢?
  第一次登录会看到 Tutorial,按照提示设置用于验证身份的 token ,选择要分析的项目的主要语言以及当前操作系统,然后定义用于标识项目的 key 。都不用记下来,之后都能查到。
  然后会提示下载安装扫描器。并修改环境变量。比如windows需要将扫描器的 bin 目录添加至 %PATH% 环境变量。当然,扫描器以后就不需要再下载了。
  接下来就可以扫描项目了。按照说明,复制命令,在要分析的项目目录下执行。比如我的命令是这样的:
  sonar-scanner.bat -Dsonar.projectKey=myproject -Dsonar.sources=. -Dsonar.host.url=http://localhost:9000 -Dsonar.login=... ....
  
   分析完成
  看到这些输出就说明分析完成了,页面 http://localhost:9000 此时会自动刷新,然后就可以查看分析结果了。
  配置项目的扫描器参数
  重新扫描只需要再次执行上面的命令。但是每次都执行这么长的命令很麻烦啊。还好扫描器是可以配置的。
  只需要在要分析的目录下,创建一个文件sonar-project.properties。内容如下:
   # your authentication token
  sonar.login=[之前生成的token]
  # must be unique in a given SonarQube instance
  sonar.projectKey=[项目key]
  # this is the name and version displayed in the SonarQube UI. Was mandatory prior to SonarQube 6.1.
  sonar.projectName=[项目名称]
  sonar.projectVersion=1.0
  # Path is relative to the sonar-project.properties file. Replace "\" by "/" on Windows.
  # This property is optional if sonar.modules is set.
  # Comma-separated paths to directories containing source files.
  # 限定要分析的路径
  sonar.sources=.
  # Encoding of the source code. Default is default system encoding
  sonar.sourceEncoding=UTF-8
  # Set the language of the source code to analyze
  # 限定要分析的代码语言,比如js。
  # 不设置则默认分析多种语言
  sonar.language = js
  然后在文件sonar-project.properties所在目录下,也就是要分析的目录下,启动扫描器。比如windows上,运行sonar-scanner.bat。
  关于扫描器更多的参数配置查看:Analysis Parameters。
  新建项目分析:
   页面上找到 Administration > Projects ,点击右上角按钮 create project 。
  汉化
  分析结果出来了但还是有点懵?不知道具体含义?
  安装汉化包试试:页面上扎到 Administration > Marketplace ,在搜索框中输入 chinese ,出现一个 Chinese Pack ,点击右侧的 install 按钮。
  安装成功后,会提示重启 SonarQube 服务器。
  稍等一会,再看页面上已经显示中文了。
  配置数据库
  这时候页面底部会提示,嵌入数据库适用于测试环境。以后不能迁移数据到别的数据库服务器了。另外也不能升级 SonarQube 的版本了。
  SonarQube 默认数据库为 h2 。我们可以配置成别的数据库,比如MySQLOracle等等。
  举例MySQL,配置步骤:
  首先确保已安装数据库,并启动服务器。
  连接mysql: mysql -u root -p
  为 SonarQube 创建数据库:
   CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci;
  CREATE USER 'sonar' IDENTIFIED BY 'password';
  GRANT ALL ON sonar.* TO 'sonar'@'%' IDENTIFIED BY 'password';
  GRANT ALL ON sonar.* TO 'sonar'@'localhost' IDENTIFIED BY 'password';
  FLUSH PRIVILEGES;
  修改 SonarQube 的配置文件,在解压后的目录中,修改 confsonar.properties 文件,添加三行配置,或者找到注释中的默认设置,取消注释,再修改。:
  # 连接 mysql 数据库的用户名,密码
   sonar.jdbc.username=root
  sonar.jdbc.password=123456
   # 上一步创建的数据库的 url
  sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?     useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
  不同数据库设置不同,在注释中有提示,比如 mysql 对应设置有注释 #----- MySQL 5.6 or greater... 。更多说明可以看官方文档的 Installing the Server 。
  修改完成后,重启 SonarQube 服务器。就ok了(页面底部不会再提示使用的是嵌入的默认数据库了)。
  结尾
  综上就是对 SonarQube 入门使用的说明。它还有很多强大功能有待挖掘。
  我认为,对于开发者来说,好的工具真的非常重要。找到合适的工具,能够提高之后的工作效率,以及开发质量。多花点时间,也是值得的。

      上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号