持续交付36讲
王潇俊
携程系统研发部总监
立即订阅
7123 人已学习
课程目录
已完结 41 讲
0/4登录后,你可以任选4讲全文学习。
开篇词 (1讲)
开篇词 | 量身定制你的持续交付体系
免费
基本概念 (3讲)
01 | 持续交付到底有什么价值?
02 | 影响持续交付的因素有哪些?
03 | 持续交付和DevOps是一对好基友
配置管理 (4讲)
04 | 一切的源头,代码分支策略的选择
05 | 手把手教你依赖管理
06 | 代码回滚,你真的理解吗?
07 |  “两个披萨”团队的代码管理实际案例
环境管理 (6讲)
08 | 测试环境要多少?从现实需求说起
09 | 测试环境要多少?从成本与效率说起
10 | 让环境自己说话,论环境自描述的重要性
11 | “配置”是把双刃剑,带你了解各种配置方法
12 | 极限挑战,如何做到分钟级搭建环境?
13 | 容器技术真的是环境管理的救星吗?
构建集成 (5讲)
14 | 如何做到构建的提速,再提速!
15 | 构建检测,无规矩不成方圆
16 | 构建资源的弹性伸缩
17 | 容器镜像构建的那些事儿
18 | 如何做好容器镜像的个性化及合规检查?
发布及监控 (6讲)
19 | 发布是持续交付的最后一公里
20 | Immutable!任何变更都需要发布
21 | 发布系统一定要注意用户体验
22 | 发布系统的核心架构和功能设计
23 | 业务及系统架构对发布的影响
24 | 如何利用监控保障发布质量?
测试管理 (3讲)
25 | 代码静态检查实践
26 | 越来越重要的破坏性测试
27 | 利用Mock与回放技术助力自动化回归
持续交付平台化 (3讲)
28 | 持续交付为什么要平台化设计?
29 | 计算资源也是交付的内容
30 | 持续交付中有哪些宝贵数据?
持续交付移动App (3讲)
31 | 了解移动App的持续交付生命周期
32 | 细谈移动APP的交付流水线(pipeline)
33 | 进阶,如何进一步提升移动APP的交付效率?
实践案例 (4讲)
34 | 快速构建持续交付系统(一):需求分析
35 | 快速构建持续交付系统(二):GitLab 解决代码管理问题
36 | 快速构建持续交付系统(三):Jenkins 解决集成打包问题
37 | 快速构建持续交付系统(四):Ansible 解决自动部署问题
特别放送 (2讲)
持续交付专栏特别放送 | 答疑解惑
持续交付专栏特别放送 | 高效学习指南
结束语 (1讲)
结束语 | 越痛苦的事,越要经常做
持续交付36讲
登录|注册

27 | 利用Mock与回放技术助力自动化回归

王潇俊 2018-09-04
你好,我是王潇俊。今天我和你分享的主题是:利用 Mock 与回放技术助力自动化回归。
在《代码静态检查实践》和《越来越重要的破坏性测试 》这次的分享中,我介绍了对持续交付有重大影响的两个测试类型,即静态代码检查和破坏性测试。
你可能已经发现,这两种测试正好适用于持续集成和测试管理的一头、一尾:
静态代码检查,适合在所有其他测试类型开始之前优先进行,把住第一关;
破坏性测试,则适用于集成或验收测试之后,甚至是对系统进行持续长久的测试。
那么,我们现在再一起来看看,持续交付过程中还有哪些测试方法,以及还有哪些问题和难点吧。

持续交付中的测试难点

其实,对于持续交付中的测试来说,自动化回归测试是不可或缺的,占了很大的测试比重。而进行自动化回归测试,就始终会有“三座大山”横在你面前。
“第一座大山”:测试数据的准备和清理。
通常情况下,回归测试的用例是可以复用的,所以比较固定,结果校验也比较确定。而如果要实现回归测试的自动化,就需要保证每次测试时的初始数据尽量一致,以确保测试脚本可复用。
如果每次的数据都不同,那么每次的测试结果也会受到影响。为了做到测试结果的可信赖,就有两种方法:
一种是,每次全新的测试都使用全新初始化数据;
另一种是,在测试完成后,清除变更数据,将数据还原。
取消
完成
0/1000字
划线
笔记
复制
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
该试读文章来自付费专栏《持续交付36讲》,如需阅读全部文章,
请订阅文章所属专栏。
立即订阅
登录 后留言

精选留言(6)

  • debugtalk
    很多流量是具有时效性,或者不可重复性的,对于这类流量你们是怎么复制回放的呢?

    作者回复: 流量请求本身不会具有问题,只是对数据产生影响,对数据加以处理,或者利用影子库来处理,就可以了

    2018-11-01
    2
  • 王凡
    ”mock可以解决数据的准备和清理的工作”请问怎么做到的?我目前理解的mock只是对第依赖部分不产生真实数据,但mock的上下游服务如果有数据产生,则依旧会产生,还是需要额外去做数据准备和清理,不知道理解是否有偏差?
    2019-06-16
  • zhongjia19900829
    生产和测试的环境的数据 怎么保持一致?
    2019-01-29
  • 王毅
    流量拷贝算不算回放的一种?
    2019-01-08
  • 疯癫
    回放是对请求的记录和复制,主要是接口层面,那么app端的功能回归测试,有没有方法获得用户操作的真实场景呢?

    作者回复: 触发某些行为才能记录,用户行为可以靠埋点,但批量模拟还是比较麻烦的

    2018-12-24
  • zhf_sy
    第二种方案是,在集群中扩容一台服务器,在该服务器上启动一个软交换,由该软交换负责复制和转发用户请求,而真正的用户请求,仍旧由该服务器进行处理。

    请问这个技术上怎么实现?复杂吗?

    作者回复: 一般类似ovs这样的软交换都有分流功能,技术上,熟悉网络及设备的话,也不是很复杂

    2018-09-19
收起评论
6
返回
顶部