CI: Continuous Integration,持续集成。
持续集成过程中涉及到与测试相关的有3个重点:代码静态检查、破坏性测试、mock与回放。
代码静态检查的流程和原理。
1、什么是代码静态检查
代码静态检查:即代码静态分析,是指不运行被测代码,仅通过分析或检查源程序的语法、结构、过程、接口等检查程序的正确性,并找出代码中隐藏的错误和缺陷(比如参数不匹配、有歧义的嵌套语句、错误的递归、非法计算、可能出现的空指针引用等等)
静态检查工具的优势
- 1.帮助软件开发人员自动执行静态代码分析,快速定位代码的隐藏错误和缺陷
- 2.帮助软件设计人员更专注于分析和解决代码设计缺陷
- 3.显著减少在代码逐行检查上花费的时间,提高软件可靠性的同时可以降低软件测试成本
设定科学的检查流程
- 1.鼓励开发人员在开发环境下执行静态检查
- 2.合入主干前通过静态检查
-
3.发布到线上或用户验证环境前通过静态检查
比如如果采用SonarQube作为静态检查 的管理平台,那么可以把这个rules配置为一个profile。
image.png
如何提高静态检查的效率
- 1.能够缩短代码扫描所消耗的时间,从而提升整个持续交付的效率
- 2.采用异步的方式进行静态检查
- 3.采用增量的方式进行静态检查
2、Sonar代码静态检查实例
Sonar代码静态检查实例操作步骤:
1、搭建sonar服务,安装CheckStyle等插件
2、设置统一的java检查规则
3、在IDE中安装SonarLint插件后,使用SonarSource的自带规则
4、可以通过mvn命令,把检查结果吐到Sonar服务器上在看检查结果
mvn org.sonarsource.scanner.maven:sonar-maven-plugin:3.2:sonar -f ./pom.xml -Dsonar.host.url=sonar服务器地址 -Dsonar.login=账号名称 -Dsonar.password=账号密码 -Dsonar.profile=检查规则的集合 -Dsonar.global.exclusions=排除哪些文件 -Dsonar.branch=检查的分支
5、在gitlab的merge request中增加Sonar静态检查的环节,包括检查状态和结果等。
6、发布到用户验证环境前,先查看静态检查结果。
网友评论