美文网首页
静态代码分析工具Xcode Analyze+OCLint2018

静态代码分析工具Xcode Analyze+OCLint2018

作者: 3479da3be4fa | 来源:发表于2018-06-26 00:47 被阅读44次

******************************************************************************************

关注凡猫学院:加微信+17031115530,拉测试微信群交流

关注凡猫学院:加微信+17031115530,拉测试微信群交流

*******************************************************************************************

微信+17031115530,拉测试微信群交流

静态代码分析工具Xcode Analyze+OCLint

静态代码检测是白盒测试中很有效的发现代码问题的一种手段,通过一些工具的辅助,我

们可以在进行详细的白盒测试前发现程序中一些潜在的问题,本文小编将给大家介绍两种对

Objective-C 代码的静态检查工具。

Xcode Analyze

简介

Xcode Analyze 是直接集成在Xcode 中的静态代码分析工具,它功能强大且使用简单,主要

会对代码中的几类错误加以标识:

1. 逻辑缺陷,如访问未初始化的变量等

2. 内存泄露(对ARC 的代码无法检测)

3. 无用存储逻辑(永远不会被访问的变量、永远不会执行的代码)

……

下面结合实例介绍一下它的用法。

使用方法和问题描述

1. 点击Product -> Analyze 开始执行

2. 执行完成后,在左侧导航栏,我们可以看到分析的结果,如图:

微信+17031115530,拉测试微信群交流

按问题类型分类

按问题文件分类

在代码中的标注

1. Memory

2. Logic error

3. Dead store

微信+17031115530,拉测试微信群交流

OCLint

简介

OCLint 是一款在mac 和linux 下使用的,针对OC 代码的静态分析工具,个人感觉它更偏

向于代码规范的检测,通常可发现如下几种问题:

1. Possible bugs – empty if/else/try/catch/finally statements

2. Unused code

3. Complicated code

4. Redundant code

5. Code smells

6. Bad practices

……

安装、环境配置

step1:下载OCLint 并安装

下载地址:http://oclint.org/downloads.html,选择mac os 或darwin 的包,目前最新版本

OCLint 0.9。

step2:配置环境变量

OCLINT_HOME = /path/to/oclint-release(表示可执行文件的存放路径)

export PATH = $OCLINT_HOME/bin: PATH

将上面两条环境变量添加到.bash_profile 或.bashrc 文件中中

使用方法

通过xcodebuild 使用OCLint

step1:在bash 中通过cd 命令进到需要lint 的工程路径下

step2:在bash 中执行:xcodebuild < options > | tee xcodebuild.log

step2 表示通过xcodebuild 命令进行编译并把相关日志信息输入到xcodebuild.log,该log

文件是后续步骤的必要条件,生成在当前的工程目录中

step3:在bash 中执行oclint-xcodebuild xcodebuild.log

此步骤是利用之前的.log 文件通过oclint-xcodebuild 的可执行文件生成了名为

compile_commands.json 的json 格式文件。

step4:在bash 中执行oclint-json-compilation-database,此步骤是真正执行了lint,执行完

应该在终端输出结果。

若希望输出报告到文件中,运行如下命令:oclint-json-compilation-database -- -o=report.html

微信+17031115530,拉测试微信群交流

通过xctool 使用OCLint

xctool 也是mac 下的一款命令行工具,相比xcodebuild 功能更加强大。通过xctool 使用OCLint

的步骤与xcodebuild 基本一致,只不过脚本更简化。

step1:生成包含编译信息的.json 文件

path/to/xctool.sh \

-project YourProject.xcodeproj \ -scheme YourScheme \ - reporter

json-compilation-database:compile_commands.json \ build

step2:生成分析报告

oclint-json-compilation-database -- -o= report.html

******************************************************************************************

关注凡猫学院:加微信+17031115530,拉测试微信群交流

关注凡猫学院:加微信+17031115530,拉测试微信群交流

*******************************************************************************************

相关文章

网友评论

      本文标题:静态代码分析工具Xcode Analyze+OCLint2018

      本文链接:https://www.haomeiwen.com/subject/ykauyftx.html