【软件测试】进阶_code review、代码静态分析、CI/CD

本篇总结在敏捷开发模式下常见的测试手段,达到轻文档和减少测试时间 ~

1、code review

  • 进行代码评审可以及时的发现一些BUG,保证至少有两个人去理解任何一份代码,提高工作效率,保证工作质量。
  • 代码评审流程:
    • 1 提交前评审:先提交变更申请-评审人查看变更内容-是否通过变更-确认后提交到代码库;(过程中断,需要等待评审时间)
    • 2 提交后评审:先提交变更代码到库-评审人审查-通过则标记位已审查。(更易实施,遵循现有组织架构)
  • 常用工具:Phabricator、Review Board、gitlab等。

2、代码静态分析

  • 代码静态分析是指在不运行代码的情况下,通过词法、语法、控制流、数据流分析等对代码扫描,验证是否满足规范性、安全性、可靠性、可维护性等指标。
  • 特点:
    • 不用实际执行程序;但误报率较高。
    • 进行速度快、效率高。成熟的代码静态分析工具每秒可扫描上万行;
  • 内容:类型检查、风格检查、bug查找、安全漏洞
  • 分析时机:在编码时检查,在IDE中集成对应的插件
  • 常用工具:sonarqube、Pclint,checkstyle,pmd,findbugs,hp fortify

3、CI/CD

  • 持续集成(CI)是一种软件开发实践,即开发团队经常集成它们的工作,每位成员至少每天集成一次。每次集成都通过自动化的编译、发布、自动化回归测试来验证,从而尽快发现错误。持续集成是为了持续交付;没有单元测试的持续集成基本无意义。
  • 持续部署(CD)是在持续集成的基础上,将集成后的代码部署到更真实的运行环境中。
  • 对于测试而言,CI/CD使工作流程加快,非常节省时间。

4、devops

  • DevOps是一个完整的面向IT运维的工作流,以IT自动化以及持续集成CI、持续部署CD为基础,来优化程序开发、测试、系统运维等所有环节。
  • 目的:让生产端变得敏捷!
  • DevOps实际上代表了开发、运维、测试等环节之间的协作,可由多种工具组成一个完整的DevOps工具链。

编码:代码开发和审阅、版本控制工具、代码合并工具
构建:持续集成工具、构建状态统计工具
测试:通过测试和结构确定绩效的工具
打包:成品仓库、应用程序部署前暂存
发布:变更管理、发布审批、发布自动化
配置:基础架构配置和部署,基础架构即代码工具
监视:应用程序性能监视、最终用户体验

你可能感兴趣的:(测试)