《测试架构师修炼之道》阅读笔记

第一部分 瓶颈:软件测试工程师该如何进行职业规划
第1章 软件测试工程师的“三年之痒”
1.1 软件测试发展简史:调试--证实--证伪--预防--模型--全周期;
1.2 中国的软件测试行业:起点高;困境和迷局(不了解、不理解、外包);迷茫(门槛低、深入难)
1.3 认识软件测试的优势和劣势:优势是入门容易、理解产品、理解用户、多面手;劣势是认可度低、发展受限;
第2章 软件测试工程师的职业规划
2.1 软件测试的职业发展方向:管理(初级管理者、中级管理者、高级管理者);技术(产品测试专家、专项测试工程师);角色和段位;质量领域发展(产品流程设计、企业质量管理者、客户满意度管理专家);
2.2 软件测试工程师的职业规划建议:技术或管理;跳槽的建议;软件测试创业;

第二部分 突破:向 软件测试架构师的目标迈进

软件测试是一门结合产品领域、管理、心理学和经济学等综合性的技艺。软件架构师的精髓在于找到最适合的软件测试技术,且不断的持续改进。
第3章 软件测试架构师应该和不应该做的事情
3.1 软件测试架构师需要关注和不关注的事情
需求分析:理解商业目标;梳理用户场景;输出总体策略(详见7.1-7.3);
测试分析和设计:制定阶段策略(详见7.4);落实策略,保证质量;
测试执行:执行版本策略(详见8.1-8.2,8.4);跟踪执行(详见8.3);质量评估(详见6.3,8.4);
质量评估:阶段/发布质量评估(详见8.6);
3.2 像软件测试架构师一样的思考:目标、范围、深度广度、重点难点、如何测试、如何评估;
3.3 软件测试经理可以替代软件测试架构师吗:合作互补;
3.4 系统架构师可以替代软件测试架构师吗:协作配合;
第4章 软件测试架构师的知识能力模型
测试技术(软件产品质量模型、测试类型、测试方法、测试设计、探索式测试、自动化测试)+产品知识、沟通协调、书面表达
4.1 软件产品质量模型:六类属性(功能性、可靠性、易用性、效率、可维护性和可移植性);
功能性:软件产品在指定条件下使用时,提供满足 明确和 隐含要求的功能的能力;5个子属性(适合性、准确性、互操作性、安全性、功能顺从性);
可靠性:特定条件下使用时,软件产品维持规定的性能级别的能力;4个子属性(成熟性、容错性、可恢复性、可靠性顺从性);
易用性:产品被用户理解、学习、使用和吸引用户的能力;5个子属性(易理解性、易学性、易操作性、吸引性、依从性)
效率:相对于所用的资源数量,软件产品可提供适当的性能的能力,也就是我们常说的产品性能;3个子属性(时间特性、资源利用率、效率依从性);
可维护性:软件产品可被修改的能力;5个子属性(可分析性、可修改性、稳定性、可测试性、依从性);
可移植性:软件产品从一种环境迁移到另外一种环境的能力,环境可以指硬件、软件或组织等;5个子属性(适应性、可安装性、共存性、易替换性、依从性);
4.2 测试类型:测试需要考虑的不同角度(功能测试、安全性测试、兼容性测试、配置测试、可靠性测试、易用性测试、性能测试、安装测试等);
4.3 测试方法
1、产品测试 车轮图:一个软件测试者要从哪些方面(测试类型)用哪些方法(测试方法)去测试产品(质量属性)的关系图;产品测试两个关键问题,分别是全面性和深度;
2、 功能测试方法:运行是指软件测试中,测试人员模拟用户的“操作”或“行为”;
单运行正常值输入法:系统允许的“正常值”的测试方法;
单运行边界值输入法:测试系统的“边界值”的测试方法;
多运行顺序执行法:按照一定顺序来进行多个运行操作的测试方法;
多运行相互作用法:多个存在相互关系的运行组合在一起进行测试;
3、 可靠性测试方法
异常值输入法:测试系统容错性,基本可靠性测试方法(系统正常,输入异常);
故障植入法:把系统放在有问题环境中进行测试的一种可靠性测试方法(系统异常-故障模拟,正常输入);
稳定性测试法:长时间、大容量运行某种业务,测试系统的成熟性;性能测试是测试真实规格是否与承诺规格一致,稳定性测试是低于性能值前提下测试,压力测试是在高于性能值的前提下测试;四字要诀,多(数量)、并(并发)、复(反复)、异(异常);
压力测试法:超过系统规格的负载进行测试的一种可靠性测试方法;突发负载模型(希望系统正常)、持续负载模型(系统可能打死);
恢复测试法:使用超过规格的负载测试、再将负载降到规格以内的测试方法;普通版(高-低)、加强版(高-低-高-低...);测试系统的可恢复性;
4、 性能测试方法:真实规格与承诺规格是否一致;除确认规格之外,还希望发现系统的瓶颈;
测试出系统最好的性能值:正确处理新业务的最大能力;同时正确处理的最大业务能力;
分析会影响性能值的各种因素,测试他们对性能的影响:影响因素、影响趋势、最坏值;
以场景为单位来测试性能:评估产品在用户使用环境中的性能表现,更有实际意义;
5、 易用性测试法:用户理解、使用产品时对产品的能力;
一致性测试法:测试对象是用户界面,测试风格、布局、元素、提示等;目的是证实;
可用性测试法:测试对象是用户界面,是否易于理解、使用,需要与功能测试结合,以场景作为测试粒度,以用户视角进行测试;推荐交叉测试法;

posted @ 2021-04-11 21:12  dululudululu  阅读(115)  评论(0编辑  收藏  举报