首页 > Python自动化测试 阅读数:23

Python测试人员如何提升自己

在上节教程中,我们通过测试知识体系介绍了测试活动中的一些关键要点及测试常用工具。当然测试体系涵盖的知识远不止如此,正如“路漫漫其修远兮,吾将上下而求索”,知识是无边无际的,需要有持之以恒的求知、求学的精神。

这里必须说明一个观点,低水平的测试只会执行,像用户那样执行,几乎没有门槛,那不是专业测试人员,可以忽略,也将会被时代淘汰。谈到专业测试,人们往往首先想到的是测试设计。但测试设计的基础是分析,而分析的基础是测试思维方式和思维能力。

对于一个有技术追求的测试人员来说,除了要会设计如何测试被测系统,还需要理解被测系统是如何实现的,这个时候就需要具备良好的开发能力,理解产品架构、开发实现,了解开发人员的思维和习惯,这样才更容易成长为优秀测试工程师。只有具备底层测试能力,才能走向高层测试。

做好功能测试,还缺一层能力,即业务理解能力。不理解业务,一定做不好测试。基于业务、基于分析,培养自己的设计能力、自动化测试能力,才能成为一个合格的测试工程师。如果没有业务、没有分析、没有测试基础,自动化测试能力只是空中楼阁。

现在很多公司招的“测试开发”岗位,也应该“测试在先、开发在后”。成为合格的测试工程师之后,可以追求一些突破,在专项测试、测试效率、管理等方面寻求突破,成为测试领域的技术专家或技术管理者等。

综合来看,从软件测试的职业生涯来讲,可以概括为业务测试、测试开发、测试(技术)管理三类。在每一个测试发展领域和不同发展时期所需要的能力侧重有所不同,三类测试发展对应的能力项不同,如表 1 所示(仅供参考,不代表全部)。

表 1:测试发展能力图谱
类别 能力项 能力子项
业务测试 快速测试能力 探索式测试能力
测试脚本开发与执行能力
测试方法结合运用
端到端业务测试能力
分析设计能力 上下文覆盖分析能力
结构与场景设计能力
制定测试策略
需求分析评审能力
业务理解拓展能力 洞察力
业务建模能力
用户体验与敏感性
缺陷根因分析能力
测试开发 专项测试能力 性能测试与调优能力
安全性测试
日志分析能力
其他专项能力
自动化测试能力 测试建模(MBT)
脚本开发与调试
自动化框架设计与开发
测试基础设施维护
开发测试能力 单元测试
Mock技术
代码能力
测试(技术)管理 测试改进能力 数据定义与分析
工作总结能力
过程改进推动力
技术革新引导力
团队管理与建设能力 领导力
有效沟通与协调能力
亲和力
规划与引导
测试管理能力 计划与策划
风险管理能力
测试过程监控
测试通用能力 基础测试能力 业务理解能力
软件操作能力
测试方法运用
分析设计能力 测试需求分析
场景与数据分析
测试用例设计
测试执行能力 环境部署与配置
测试工具的使用
缺陷定位与分析
软实力 沟通与协作能力
学习力、创造力
观察力、专注力
系统性思维、分析思维、批判性思维

在表 1 中,除了业务测试、测试开发、测试(技术)管理不同职业发展的能力指标项,还列举了测试通用的能力,测试通用能力是每一位测试从业者在职业生涯中进行垂直攀登的基础。

表 2 中列举了推荐给读者用来提升测试工作技能的一些书籍清单。

表 2:测试工程师推荐书单
类别 书名
软件测试基础 《Google软件测试之道》
《全程软件测试(第3版)》
《探索式软件测试》
《软件测试与持续质量改进(第3版)》
编程相关 《流畅的Python》
《Python算法教程》
《Python机器学习实践:测试驱动的开发方法》
项目管理与质量度量 《项目管理知识体系指南》
《项目管理前沿标准译丛:需求管理实践指南》
《用户体验度量:量化用户体验的统计学方法》
《质量经理手册(第2版)》
测试技术 《测试工程师全栈技术进阶与实践》
《Selenium自动化测试:基于Python语言》
《Android应用测试指南》
《Jenkins权威指南》
《Web安全攻防:渗透测试实战指南》
《安全测试指南(第4版)》
《图解HTTP》
《图解TCP/IP》
《Linux高级渗透测试》
《全栈性能测试修炼宝典JMeter实战》
产品质量持续改进 《流程思维:企业可持续改进实践指南》
《数据质量测量:持续改进》
《持续交付:发布可靠软件的系统方法》
《DevOps实践指南》