1. why?
- 开发 -> 测试(OA)
- sonarQube在OA测试之前的步骤,主要用于开发阶段把控代码质量: a. 祖传级代码如何代码质量检测、优化、重构的标准. b. 静态代码分析: (1). 针对开发人员编写的源代码 (2). 在不运行的情况下,仅分析或检查源程序的语法、结构、过程、接口等的正确性,找出代码隐藏的错误和缺陷.
2. what? feature?
- 代码质量、安全扫描的分析平台.
- 多维度分析代码指标: a. 代码量 b. 安全隐患 c. 编写规范隐患 d. 重复度、复杂度 e. 代码增量 f. 测试覆盖率等
- 支持多种语言代码扫描和分析: a. 涵盖了编程语言的静态扫描规则纬度: 1. 代码编写规范: (1). 硬编码 2. 安全规范 b. 对java、go没有编译过的代码扫描
- 可集成对象: a. 代码编辑器 b. CI/CD平台 c. SCM,直接在平台上看到代码问题是由哪位开发人员提交. d. SVN、git
(1). 目的:
- 不是用来测试的
- 目的是写出更干净、更安全的代码.
3. 其它的工具:
- java语言: Checkstyle、FindBugs、PMD、Jtest等.
- python语言: Pyflakes、Pylint、pep8等.
- C#语言: FxCop、StyleCop等.