Android 代码质量工具集成(checkstyle,findbugs,infer,PMD,Android lint)

1.代码检查工具介绍:

image.png

代码检查工具通过对源代码的扫描,检查代码风格,识别代码中的错误,帮助我们改进代码质量。

Android 常用的代码检查插件有:

——————————————————————————————————————————————————————————名称            作用                                     分析方式——————————————————————————————————————————————————————————checkstyle       检查代码风格 ,变量,注释      分析源代码findbugs        代码缺陷,Java语法使用缺陷       分析编译过程中的 .classPMD             代码缺陷                          分析源代码infer           代码缺陷,空指针等                编译过程分析android lint     数组,性能,图标,布局等           分析静态源代码——————————————————————————————————————————————————————————

2.持续集成环境的演示

2.1 通过 Jenkins 集成

http://172.22.80.8:8080/job/qingqi_serialport_tool~CHECK/

2.2 检查结果展示

image.png

2.3 邮件通知展示

image.png

3.如何使用和集成到 CI

Grade 提供了 checkstyle,findbugs , PMD, 等代码检查工具的插件,直接配置规则即可。

下面以 checkstyle 工具为例演示一个集成过程:

3.1 工程结构

脚本存放在 scripts 文件夹下


image.png

checkstyle.gradle gradle 脚本配置,关键在这里

huawei_CheckStyle.xml 规则配置文件

suppressions.xml 规则配置文件

3.2 编写 grade 脚本

checkstyle.gradle 文件内容如下


image.png

3.3 在 android module 里启用

在 app 主项目 module 下 的 build.gradle 中添加如下:

 apply from: '../scripts/checkstyle/checkstyle.gradle'

3.4 执行检查

./gradlew clean check

4. 研发流程改进

简单就是:

开发人员 push 到仓库 —> git 仓库触发器通知 —> Jenkins 触发构建 —> 产出 reports —> fix 缺陷


image.png

5. 参考

Checkstyle: https://www.jianshu.com/p/0b70a7928033
PMD 示例: https://www.jianshu.com/p/5fe23ed8d147
Android Lint: https://www.jianshu.com/p/e0de4c1bc747
Infer: https://www.jianshu.com/p/2d5cd6304ee7

更多相关文章

  1. 如何动态的设置Relative Layout中按钮的layout_align_parent_rig
  2. adb命令执行java代码
  3. Android系统属性SystemProperties分析
  4. Android图片堆叠效果实现
  5. Android(安卓)WebView加载HTML表单并通过javascript提交
  6. Android(安卓)OpenGL学习笔记(二)--三角形的绘制.
  7. TTS源码解析
  8. Android(安卓)近百个项目的源代码,覆盖Android开发的每个领域
  9. Android(安卓)Wifi模块分析(五)

随机推荐

  1. 【笔记】【从Android(安卓)Guide温习Andr
  2. android 仿ios数字密码解锁界面
  3. 探索新的Android权限模式
  4. 移植UDT到android
  5. android中设置ListView的选中的Item的背
  6. Android 如何在自定义界面上启用输入法 (
  7. Android构建模块
  8. Android(安卓)浮动视图效果 第三种实现方
  9. Android(安卓)的性能工具用法 II-内存分
  10. 尼尔森:Android美国受欢迎度超过苹果iOS