Mac-Sonar系统执行代码分析

本文介绍了如何在Mac上配置Sonar系统进行JS/Java代码扫描,包括在Sonar创建项目,设置不同项目的sonar-project.properties文件,并详细讲述了iOS代码扫描的步骤,涉及到OCLint、xcpretty、slather和lizard等工具的安装与配置,以及最终执行检查的run-sonar.sh脚本。
摘要由CSDN通过智能技术生成

Mac-Sonar系统配置可以参考Mac-Sonar系统配置

一、JS/Java代码扫描配置

1、在sonar创建项目

在这里插入图片描述
在这里插入图片描述

2、在项目根目录创建sonar-project.properties

2.1 js 的项目配置
js/sonar-project.properties
# 项目key配置
 sonar.projectKey=com.xx.jstest
# 项目工程名称
 sonar.projectName=jstest
# 工程版本号
sonar.projectVersion=1.0
# 需要扫描的目录,也可以是制定文件'src/person2.js,src/person3.js'
sonar.sources=src
# sonar地址,sonar-scanner中配置了就行,此处配不配置都行
#sonar.host.url=http://127.0.0.1:9000

# 不设置则默认分析多种语言, 此处为js
sonar.language = js
2.2 Android 的项目配置
android/sonar-project.properties
# 项目key配置
sonar.projectKey=com.xx.android
# 项目名称
sonar.projectName=android
# 工程版本号
sonar.projectVersion=1.0

# 需要扫描的目录,也可以是制定文件
sonar.sources=app/src/main/java/com/example/zw/androidlearndemo/MainActivity.java
# 二进制文件
sonar.java.binaries=app/build/intermediates

# sonar地址,sonar-scanner中配置了就行,此处配不配置都行
#sonar.host.url=http://127.0.0.1:9000

# 不设置则默认分析多种语言
sonar.language = java

3、进入项目根目录执行

sonar-scanner

二、 iOS 代码扫描配置

1、iOS 代码扫描需要一些工具

1.1、OCLint 的下载和安装(Issues-代码规则)

brew tap oclint/formulae   
brew install oclint

1.2、xcpretty(Tests-测试)
xctool现已被xcodebuild和xcpretty取代
安装步骤如下

git clone [https://github.com/Backelite/xcpretty.git](https://github.com/Backelite/xcpretty.git)  --找一个文件夹存放xcpretty的源码
cd xcpretty
git checkout fix/duration_of_failed_tests_workaround 
gem build xcpretty.gemspec 
sudo gem install --both xcpretty-0.2.2.gem

1.3、slather (Code coverage-代码覆盖率)
要求安装版本高于 2.1.0 (Xcode7之前的版本使用gcovr,Xcode7以后选用 slather
)

gem install slather --如果ruby版本低于2.1.0,则需要更新ruby

1.4、lizard(Complexity-复杂性)
lizard(ci上的版本1.12.15)

sudo pip install lizard

2、 iOS 的项目配置

ios/sonar-project.properties
# 目录名称最好和项目名称保持一致 Test -> Test.xcodeproj,否则会出现检测不出来问题代码的问题
sonar.projectKey=com.xx.ios
# 决定了在sonar服务器上显示的名称
sonar.projectName=ios
sonar.projectVersion=1.0
sonar.language=objc

# Project description
sonar.projectDescription=Fake description

# Path to source directories 工程文件目录, 也可以是制定文件
sonar.sources=ios/ViewController.h,ios/ViewController.m
# Path to test directories (comment if no test) 测试文件目录
#sonar.tests=

#sonar.objectivec.simulator=platform=iOS Simulator,name=iPhone 6,OS=9.2

# 二选一
sonar.objectivec.project=ios.xcodeproj
#sonar.objectivec.workspace=xx.xcworkspace

# Scheme to build your application
sonar.objectivec.appScheme=ios
# Scheme to build and run your tests (comment following line of you don't have any tests)
sonar.objectivec.testScheme=iosTests
 
 # Encoding of the source code
sonar.sourceEncoding=UTF-8

# JUnit report generated by run-sonar.sh is stored in sonar-reports/TEST-report.xml
# Change it only if you generate the file on your own
# The XML files have to be prefixed by TEST- otherwise they are not processed 
# son
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值