51Testing软件测试网;yub&JLkDW$~)O 《XPP极速编程实践》主要介绍了XPP的模式,在此模式下PD,Dev,QA,DevOps各角色的职责与定位,以及如何持续快速交付高质量产品。
-P!p$^*y o!Y!iV(}'h051Testing软件测试网 L*C:c[%sk*U XPP的模式--面向交付开发与传统的面向测试开发区别:
1q m$f%K&VY051Testing软件测试网 uYyZ(Tid;k S Zh
极限编程的模式,面向交付的开发:有测试的工作,但没有真正的测试环节存在。开发写完代码,直接上线。没有经过严格的测试,会不会出现质量倒退呢,其实是赋予测试一些定的含义。
g;S6B*{ ^[
W e m0 开发在编码阶段加入:代码审查、单元测试、集成测试;在交付阶段:加入一个新的角色DevOps,从复杂的TC编写中释放出来,而是做用例审查、验收测试、自动化回归。
#s'V,s]\
B
P3oE/]0 需要建立持续集成的开发环境,便于开发自行测试。
{NnwZw#wr0 在Xpp模式下,人员的职责和定位:51Testing软件测试网$T/}a^@8W{_
9N)tJk1[$S0 如何更快的交付51Testing软件测试网 h)ur o'BA7m6uO
1、需求管理方面:将需求拆分为小的端到端可测试的用户case,一个需求必须在一次发布中完成,实现小步快跑。51Testing软件测试网TLn2D&k zW,U
2、在开发过程中进行代码审查,单元测试,代码覆盖率,集成测试——达标后提交发布单,去掉了传统的测试环节。测试驱动开发编写自动化测试用例,促使提高设计的可测性。51Testing软件测试网F
~7oHe
t"\
3、持续的集成测试:单元测试 → 集成测试 → 系统级测试51Testing软件测试网.U2|v'`.|KDir'@
4、规范的交付流程
S,t d9n9L;}"d+_0 5、充分利用各类工具和自动化平台。如淘宝现有的任务管理工具redmine、自动化发布平台、自动化测试平台TOAST、各类自动化测试工具(单元测试工:mocha,should;代码覆盖率工具:jscoverage;集成测试工具:helium)。
!?9^(rU6N#J;A"tYN0 如何更好的交付
w9SQ?SjD'J5k u5B0 1、代码审查 & 持续集成。代码须由统一的负责人审核通过才能。分支开发,主干提交,对分支和主干建立持续集成环境,发布前自动化脚本去除测试代码。
!SH{$D7z.Kc/`0 2、测试驱动开发。PD、Dev、DevOps一起制定测试清单,在开发环境中测试通过后提交发布;进行增量式的开发:迭代过程,测试—编码—重构,测试先行51Testing软件测试网X)cjil@\`
3、测试用例审查。以测试清单为评判标准,重点关注变更代码;保证主流程质量;定期做用例review,完善场景和用例;结合代码覆盖率报告进行单元测试代码审查;集成测试审查,前端的关注主流程,后端的关注接口和数据校验。
C'F0ad]x&}g
p l0 4、验收测试。由产品经理执行并确定具体的用例,主要关注用户体检、样式、浏览器兼容性等方面的问题。51Testing软件测试网)|3O7GqK}
5、建设发布通道51Testing软件测试网bU ZKQy
}+r(W P
6、对发布过程进行质量控制。前端应用优先发布、自动化七层校验失败立即回滚,发布过程开发关注应用层面监控、DevOps关注发布层面的监控。
:z"l/R;y~+?^I NP*e$f0 7、发布后的监控。系统级:CPU,Memory,Network IO,Disk IO等;应用级:线程,队列,对象,调用,日志等;业务级:产品级流程交互、数据展现等;用户级:用户行为关键指标变动等。51Testing软件测试网(XcUS^&q