作品简介

质量是软件的生命,而软件测试是保证质量的关键环节。随着各种新的软件开发流程、需求和技术的涌现,如Continous Delivery,DevOps等,大型复杂业务流程企业的数字化转型、云和容器技术、FinTech、大数据、人工智能等的发展,传统的软件测试方式似乎已经不再适用。

当我们回头思考的时候,却发现测试的本质并没有改变,只是其思维与技术的进步相对缓慢。比如为了适应Continous Delivery,需要改变测试的思维而使用敏捷测试,包括全员关注质量、测试前移、全方位的自动化;为了适应复杂的企业业务流程,测试活动最好采用BDD/DSL的方式以保证业务传递的有效和快速性;容器与云的普及,使得自动化测试系统的能力达到了一个新的高度;由于FinTech使得金融与技术进一步融合,使得安全测试的地位更为突出等。

但是无论测试思维怎么改变、技术怎么更新,其本质却是没有变,依然要进行有效的测试分析和测试设计,要具有探索性的测试思维等。

本书选取了ThoughtWorks多名高级QA的数篇精彩文章,它们是作者多年工作经验的结晶,希望能帮助读者更好的了解和学习测试及质量相关的知识,从而在现在这个纷繁复杂的软件时代中勇往直前。

作品目录

  • QA,从1.0到4.0
  • 简单聊聊我所经历的“QA发展史”
  • QA 1.0——机械化流水线作业
  • QA 2.0——过程化带来不同的工作内容和价值体现
  • QA 3.0——自动化技能提高生产力
  • QA 4.0——角色向多技能、服务化转型
  • 我们似乎还需要具备以下的能力:
  • 1.尝试用不同的方法写“茴”
  • 2.If you cannot test it, dev it.
  • 3.真正的全功能
  • 总结
  • 敏捷软件测试常见的七个误区
  • 不需要测试策略
  • 不需要测试文档
  • 纯自动化测试 or 纯手动测试
  • 敏捷QA = 敏捷Tester
  • 非功能性测试不重要
  • 质量是QA的事儿
  • 开发可以写测试,不再需要QA了
  • 结论
  • 为什么QA不喜欢重构?
  • 老功能被破坏
  • 新功能推迟/重复测试
  • 无计划不可见
  • 总结
  • 一个遗留系统自动化测试的七年之痒
  • 背景
  • 七年之痒——痛点
  • 问题分析
  • 解决问题
  • 已有UI测试的优化
  • 新功能自动化测试策略的调整
  • 总结
  • 测试自动化后,我们需要怎样的QA?
  • 瀑布开发模型
  • 瀑布模式中的QA
  • 系统思考
  • QA到底应该干什么?
  • QA的职责
  • 其他职责
  • 万能的QA?
  • 扩展阅读
  • 从测试策略到测试架构
  • 测试策略
  • 测试计划
  • 测试架构
  • 再谈测试策略
  • 扩展阅读
  • 说起 BDD,你会想到什么?
  • 为什么要BDD?
  • BDD是什么?
  • BDD怎么做?
  • 1.业务层抽取,业务语言描述
  • 2.技术人员可懂,自动化友好
  • 3.数据驱动,需求实例化
  • BDD有什么好处?
  • 什么样的项目适合BDD?
  • 常见疑惑
  • 1.BDD与TDD/ATDD
  • 2.BDD与SBE
  • 醒醒吧少年,只用Cucumber不能帮助你BDD
  • 引言
  • BDD的提出
  • BDD不只是自动化测试
  • Cucumber到底怎么用
  • 理想很丰满,现实很骨感
  • 没有业务人员参与的Specification
  • Specification关注实现细节而不是业务逻辑
  • Step的嵌套调用
  • Specification Report可读性不高
  • 改进措施
  • 让业务人员写/审查Specification
  • Step实现代码的重用
  • 扩展Cucumber生成高质量的文档
  • 原来生活可以更美的
  • Cucumber
  • Concordion
  • Gauge
  • 总结一下
  • 我在测试移动弱网时踩过的坑
  • 什么是弱网测试
  • 为何要进行弱网测试
  • 如何做弱网测试
  • 弱网测试时碰到的问题和解决方案
  • 总结
  • 容器化时代对测试的机遇
  • 产品环境下的QA
  • 产品环境的特点
  • 1.真实、不可破坏
  • 2.基础设施差异
  • 3.系统复杂度
  • 4.数据复杂度
  • 5.用户行为千奇百怪
  • 6.访问受限
  • 7.真实的用户反馈
  • 产品环境下的QA的特点
  • 一、不同于类产品环境的QA
  • 二、不能独立存在
  • 三、有别于Ops
  • 四、跟APM的侧重点不同
  • 产品环境下的QA在项目上的实践
  • 一、日志分析和优化
  • 二、Google Analytics数据分析
  • 三、用户反馈的收集和分析
  • 总结
  • 致测试同仁们:让我们一起做安全测试吧!
  • 安全测试并不遥远
  • 安全测试并不陌生
  • 1.目标类似
  • 2.在软件生命周期中的过程类似
  • 3.测试用例很多重合
  • 4.都需要有探索的过程
  • 5.都要有测试人员必备的“怀疑态度”
  • 安全测试从何做起
  • 第一,转换视角
  • 第二,改变测试中模拟的对象
  • 第三,使用专用的测试工具
  • 举个例子吧
展开全部