淘宝测试技术交流会笔记

 

听了三场,谷歌,思科,腾讯。谷歌模式挺高端的,精英测试不太适合一般企业。思科的那场来的人挺多,睡着的人也多;我坐最里面挤出不去,小睡了会儿。腾讯的题目是“把一切监控起来”(没想到腾讯用这个命题,讲的是测试)腾讯腾讯的模式和淘宝比较相似,讲了实际工作或者工作模式中出现的一些问题,大家都有同感。

一天听下来,感觉测试要获得江湖地位,还得向开发靠拢。要想通过测试驱动开发,得比开发更懂开发。

而现状刚好相反,腾讯讲得比较实际,谷歌讲的可以作为目标。

大会的主题:突破

开场郭芙列了六点:1、  深入了解产品;2、  保持怀疑精神;3、  客户第一;4、  乐观,团队合作;5、  独立思考 知其然所以然;6、  善用技术手段。 

颠覆者生存 Google 段念

互联网时代需要的软件测试

提前发现缺陷的能力,和发现缺陷的原因 

传统产品的差别

-          面向用户的测试,最好的用户体验;

-          全面的测试;

-          足够快

测试策略达到最好的效果

 

互联网产品的特点

1、  用户体验 2、创新,眼球经济时代;3、为用户带来价值

 

简历在用户体验基础上的创新

1、  小步快走;反面例子apple;2、微创新,在产品上累加一些小的改进;3、快速获得用户反馈

 

互联网公司的基因:

快,天下武功 无快不破

 

快意味着什么

1、  快速时间的能力

2、  快速发布的能力

3、  快速修复的能力,缺陷并不可怕,短时间内解决缺陷

 

对待缺陷的态度

互联网产品中的缺陷同样知名,但修复成本相对较低

-          服务端手段让修复后的版本发布代价大大降低

-          可靠性欲性嫩更可以通过集群或是荣誉运算的方式部分解决

-          在最坏的情况下, rollback

 

缺陷并非总那么可怕

-          在快速发布的环境中

-          快速发现缺陷

-          技术团队可以再狠短时间周期内修复缺陷

 

怎么才能快起来?

-          缩短测试需要的时间

-          让修改变得更容易——开发代码质量,保证产品有一个良好的可测试性。从测试从UI层面推动,而是从代码层面

-          让修改更易于被验证

-          让产品进可能频繁的接受验证

 

纯粹建立在客户端的自动化测试并不一定更快

 

共享质量目标与全员测试

注重灵活性甚于注重过程——全面遵守的原则vs 可自我完善的系统。通过定义要点,而非面面俱到,敏捷更偏重于方法。

 

传统软件测试观点批判                  

-          严格遵循重量级的测试过程

-          以发现缺陷为核心的 测试理念

-          将测试与开发截然分开的做法——测试开发协同。

 

重量级的测试过程vs 轻量级的测试过程

重量级的过程

-          依靠文档建立测试标准,让开发写文档阻力更甚,测试要解决的问题就像“猫不吃辣椒怎么办”

为什么要写文档?是否所有的工作都要建立在文档之上?建立良好的沟通体系,沟通比文档更重要。

-          在过程上保证“尽量少遗漏的测试”。测试覆盖率,可操作的时候阻碍测试效率,不分重点全部测试。不过这点很难讲。

-          不关注开发与测试的深度协作。

-          面向过程甚于面向产出

 

传统的测试在开始摸索测试模式的时候是一盏指明灯,但不是长久之计。

 

轻量级的过程。快的本身来源于一个灵活的过程。

-          更好的适应性

-          方向正确甚于过程正确

-          注重开发与测试间的深入协作

-          基于通过自动化实现的过程——易于被修正 

 

 

质量度量vs 提高质量

测试是用来干嘛的?

“想通过更多的测试来改善软件的质量,就像妄想通过更频繁的称重来减肥一样”

《代码大全》——测试死刑

 

测试是验证

-          验证系统功能实现是否与去求一直

-          验证设计是否合理

-          验证代码

 

测试是Proxy

-          发现产品的不可测试性

-          发现产品可维护性的问题——推动开发写单元测试通常以失败告终。正是单元测试价值的时刻。

-          发现代码的不可测试性。质量内嵌在产品中,而不是基于用户层面

 

-          建立不同层次的测试(代码接口,系统)

-          为所有的access point建立测试

-          采用各种技术建立测试(UI DOM,图像比较)

 

缺陷的意义

缺陷只能说明软件中存在问题

 

一个简单的算术题

某项目,1年前,100bugs/release

1年后,200bugs/release

——基于缺陷衡量产品质量不靠谱

测试的价值在哪里,通过缺陷不断提高你的代码质量

缺陷预防比发现更重要

发现缺陷的途径。

 

不仅从验证的角度来说价值,而是发现后带来的代码质量提升。

需要考虑的是:缺陷如何帮助我们提高产品质量。

 

测试人员的测试vs 全员测试

开发提交测试

测试圆缺是测试工程的活

测试共识的优势

用户角度测试

发现缺陷的技能

测试工程的弱势

难以覆盖大部分的底层测试(沟通成本和维护成本)

 

金字塔模型: 投入——产出

顶层UI层面的测试: 投入多产出少

单元测试:投入少产出多

 

为什么投入到底层测试的收益更大?

-          底层测试可以降低调试成本

-          底层测试具有最大的运行次数

-          地层测试能够有更高的副高铝

-          底层策划四可以为不同层次的验收标准

 

全员测试

测试工程师

-          建立测试框架,让开发写测试代码和生产代码一样,开发更愿意写,开发的认识会有偏差,测试推动开发的测试代码

发布周期左端到一天。底层自动化,基于UI的测试自动化

-          发现质量问题。

 

开发工程师

-          创建与维护测试(尤其是底层测试)

-          去除阻碍测试的因素(改善可测试性)

 

全员测试的要点

-          共享测试目标

-          确定以地层测试为主的自动化策略

-          选择/创建合适的工具

开发代码和生产代码的切换

 

用户质量vs 开发质量

用户新需求,开发团队在需求变更时保持一个敏捷的改变速度

开发质量体现

-          是否正确的实现了设计的意图——测试帮助开发更好的发现发现意图

-          是否易于为产品增加新的 功能

-          在修改代码的时候是否易于隔离可能的错误

-          是否易于验证

 

面向开发质量的测试

-          建立可持续运行的测试框架

-          用测试发现产品的不可测试性

-          建立开发质量的评估方法

-          建立关注开发质量的开发文化

 

 

Cisco

软件测试的基本概念

日常测试工作之理念

 

理念代表着价值观和信念

理念是一种哲学观点,是理想、心灵的追求;也是认识和思想等的体现,并涵盖如母的、原则等具体内容。

 

软件测试=QC质量检验

 

自动话测试

-          首先代替手工测试

-          其次,超越手工侧似乎

-          向自动化测试要收益

-          让自动化测试无处不在

-          构造服务dev&oQA的自动化测试框架

 

 

新的理念

敏捷测试。

流程是次要的,团队才是根本。

测试不可避免,但不需要专家的测试团队。

质量是构建,最终能够消灭软件测试。

 

软件测试

简单有效:一页纸的测试计划

 

团队足够强,采用什么流程都work

 

 

把一切监控起来(没想到腾讯用这个命题,讲的是测试)  腾讯

互联网行业现状

-          运营网络环境错综复杂

-          不同操作系统、浏览器及版本,不同网络速度

-          大量服务器

-          测试环境跟外网差异大

-          敏捷开发,快事生存的根本

-          测试与开发人力比例极大

 

自动化回报率是正的还是负的?腾讯做了三年还是负值。投资回报率都是负值

 

质量与效率是否有清晰度量指标和平衡点

 

测试:保障质量,更应该提升质量

 

大部分测试团队的工作范畴

 

自动化测试(B/S、C/S、后台)

平台、框架建设

安全测试

黑盒测试

白盒/

 

 

还有哪些工作

-          配置管理(代码)变更和规范性

-          开发/编译/测试环境稳定性

-          外网发布部署过程质量

-          外网产品运营质量

-          IDC运营质量

-          外网环境质量

 

互联网行业测试范畴重新定义

-          可用性测试

-          监控测试

 

监控测试定义

-          规律性比对的自动化测试+ 不确定性下检测预警 + 人脑智能分析

-          通过各种不同工具和统一的测试平台从多个维度给产品研发云因质量输出错误报告和预警分析 

 

代码

代码规律性  高危函数代码  目录/文档 Makefile

静态代码检测 SCM变更 分支基线 代码被评审度

 

环境

Base Lib变更  build变更 产品打包规范性 配置标准化监控

部署变更监控 发布一致性监控 差异测试监控 环境稳定度监控

 

流程

缺陷进展监控 项目MileStone TestingPlan TaskStatus

 

运营

外网和黑性能  打开速度 服务器运行

程序上下线 网络状况 数据正确性

Automan脚本执行失败自动提bug

 

阀值

监控是一个范畴

 

监控测试下测试开发重点工作

持续集成平台

一拖再持续集成平台下的各种测试工具

让工具自

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值