跳过非重点章节,直接到第九章
敏捷
首先我们来回顾下敏捷宣言以及价值观
个体和互动 高于 流程和工具
工作的软件 高于详尽的文档
客户合作 高于 合同谈判
响应变化 高于 遵循计划
敏捷开始提倡迭代式和增量式的开发模式,并强调测试在其中的重要作用。
这是一个围绕以用户为主心,以客户需求为导向的开发过程,在此过程中随时做好 迎接变化 的准备。
如果客户不打算参与进来,那么选择一些传统开发流程或许更好。
敏捷模式有三个共同点:1.依赖客户的参与 2.测试驱动 3.紧凑的迭代开发周期
敏捷开发方法 比较常见的XP和scrum
快速原型的一种手段
dev test Ops
1.周期短 2.需求变换快 来不及写文档 3.没啥好测的
敏捷测试要解决哪些问题
可持续集成CICD
脚本化 自动化 可度量
快速全生命周期质量保证 单元集成系统
前后端分离
前端按照接口文档实现,后端如此
如果问题不能每天集成 那么问题就会越来越多
敏捷其实就是在强调沟通,如果做不到CI持续集成,那么敏捷就是在骗人
几乎IDE可以保证代码可以编译执行,CI的质量保证来自于单元测试jnit testng
maven mvn test
CD持续发布 编译版本可上线 CI做好+质量扩展监督=CD
CI像非诚勿扰 相亲 CD 随便挑一个
我怎么验证CI出来的版本是可以CD的 需要测试
把从CI到CD的内容自动化掉
1.用自动化提前做掉所有今天需要验证的版本内容
2.用自动化验证上一个版本的内容,通过手工冒烟验证更新内容
自动化并不能提高质量,也不能证明质量
随着现在测试工具的提升,测试质量日益下降
人月神话
如何在敏捷中从user story到测试设计
需求阶段 全生命周期的测试设计 将设计脚本化 CI-CD
user story 单元 集成 系统 自动化 可度量 脚本验证 冒烟测试
用例设计
单元测试
sonar
findbug
testng
jacoco
高一点的代码覆盖率 条件判定覆盖和语句覆盖
覆盖代码流程,覆盖代码多接口调用
自顶向下
driver和mock