名字:阿玥的小东东

学习:Python、C/C++

主页链接:阿玥的小东东的博客_CSDN博客-python&&c++高级知识,过年必备,C/C++知识讲解领域博主

目录

人生苦短,我用 Python

在测试工作中用好 Python

进阶:用Python构建测试框架

大厂对测试工程师的要求

本期赠书


常规测试工作给人的印象,就是弄清楚软件功能,编写测试用例,验证功能,提交Bug报告,跑压力测试,等等。

这样看起来,测试人员好像确实不需要会做开发。

在软件行业早期,测试的工作主要就是验证软件功能,但自从进入互联网时代,需求快速变化成为常态,沿用传统做法已经不合时宜。

“测试左移”这一说法渐渐被大家熟知,它强调在开发的早期阶段就要有测试工作介入。因此,具备开发能力的测试工程师不仅能更好地理解程序的功能,还能协助编写自动化测试框架,这有助于保障产品质量,并推动开发进度。

因此,想要在测试的岗位上有所进步,在新的时代生存下去,测试工程师也要懂开发,掌握好Python可以使自己的测试工作如虎添翼。资深测试工程师胡通正是通过《测试工程师 Python 开发实战》一书告诉大家,如何在工作中用好 Python。

我们先从 Python 这门编程语言说起。

人生苦短,我用 Python

测试工程师为什么要首选Python作为开发语言呢?这要从Python的自身特性说起,概括来说,就是简单而强大

Python 能够轻松调用 C/C++ 代码库的特性,因此它的可扩展能力很强。在众多技术高手的贡献下,Python 的第三方库得到了极大的丰富。对于程序员来说,几乎不用发明轮子,需要的基础功能都能在库中找到,可以说是开箱即用。

对于测试工程师来说,掌握 Python 就是拥有了一座操作简单且火力强大的“军火库”。测试工程师能够尽可能地将精力从编程的细节中解脱,专注于解决测试工作中的问题。

接下来,我们看看怎样在测试工作中用好 Python。

在测试工作中用好 Python

看到这里,你可能会有一个疑问:

我要把Python学到什么程度,才能够在工作中用上它?

《测试工程师 Python 开发实战》给出了具体的建议:遵从“二八定律”,即不要想着把 Python 的所有语法特性都掌握了才投入实际工作。只要掌握了 20% 的关键知识,就可以上手干活了,大多数需求都能在这 20% 之内解决。在边学边干的过程中,逐渐领会另外 80% 的用法。

入门的第一步是将环境配置好。《测试工程师 Python 开发实战》详细叙述了在 Linux 与 Windows 下安装与配置 Python 的过程。IDE 工具则选择了最流行的 PyCharm,并讲解常用的功能与使用方法。更多基本语法介绍可以参看书中说明。

PyCharm 项目界面

在测试工作中经常要处理的任务包括日志分析、数据分析、文件处理等。本书作者结合自己实际工作经验,精心挑选了12项常用操作,放在了“常用百宝箱”中,测试工程师对于这些知识应当熟练掌握。

这12项操作分别是:自定义异常处理、日志处理、邮件处理、时间处理、多线程处理、Excel 处理、配置文件处理、正则表达式处理、命令行参数解析、with 正确使用、文件读写处理和序列化处理。

熟悉了基本操作,那就更上一层楼,看看作者在“高级百宝箱”里放了什么宝贝。作者认为在复杂分层的系统中会大量使用消息中间件、缓存和数据库系统。在测试中要验证数据的完整性与准确性,就一定要对这些系统进行操作,因此书中针对上述三类中间件给出了具体的操作示例。

这些示例针对的程序包括:消息中间件 Kafka 和 RabbitMQ;缓存中间件 MongoDB 和 Redis;数据库中间件 MySQL 和 SQLite。它们都是目前业界普遍使用的消息和存储类开源服务,测试工程师学会这些高级工具势必如虎添翼。

Python 学到这一步,已经是测试工程师里做开发的一把好手了,那还有更大的提升空间吗?我们再来看看测试工程师的 Python 开发进阶之路。

进阶:用Python构建测试框架

对于测试工程师来说,虽然不要求精通开发技术,但知识面一定要广泛。除了对软件本身的功能测试,还要学习其他领域的知识,包括性能分析、数据分析、网络安全等,这样才能全面考察并测试一个软件系统是否健壮可靠。

在工作中做好多领域的测试,要求测试工程师能够根据业务特点编写测试框架。当然,这对测试工程师的开发能力又提出了更高的要求,这不仅是做一个工具那么简单,而是要考虑全面,同时又不能为此投入太多时间。

《测试工程师 Python 开发实战》在“实战篇”中,为测试工程师构建自己的 Python 测试框架给出了很好的建议。总体来说,就是尽量在第三方库和开源组件的基础上实现定制化开发。

下面选取测试工作中最常见的接口测试,来说明构建一个自动化测试框架的方法。对于软件中使用到的所有接口,建立一个自动化的测试平台,可以满足迭代测试、统筹管理的要求。

自动化测试分层

书中使用 requests 库构建接口自动测试框架,讲解了 http 协议的知识点、requests 库的基本用法,以及序列化与反序列化的相关知识。

然后给出了一套轻量级接口自动化测试框架的工程案例,实现了从读取配置文件、读取测试用例、执行测试用例、记录测试结果,到生成 HTML 结果文件的完整过程。

同样,书中对音视频测试、自定义套接字测试、数据测试、性能测试,以及安全测试都给出了“基础知识 + 工具说明 + 代码实现”的完整说明。

这对于学习者的体验来说非常友好,测试工程师在编写自己的测试框架遇到问题时,都可以从这些案例中寻找答案。

大厂对测试工程师的要求

随着互联网企业对产品快速发布且质量稳定的严格要求,技术人员也要“多才多艺”才能发展得更好。开发工程师与测试工程师之间的技能相互重叠,一名优秀的工程师往往在这两方面都表现出色。

谷歌公司为了响应变化,很早就对测试工作进行了探索。他们专门设置了一个 SET(Software Engineers in Test,软件测试开发工程师)岗位,SET 严格按照开发技能要求招聘,工作内容是配合开发人员完成各项测试工作,包括用例评审、编写自动化测试工具等。

得益于对测试工作的变革,谷歌的软件质量也获得了飞速提升。所以目前国内大厂也对测试工程师的开发技能十分看重,大多数招聘资深测试工程师的岗位要求中,能做开发都是必备条件。

《测试工程师 Python 开发实战》为测试工程师提供了一个很好的参考,即学习并使用 Python 这门语言,在测试工作中能够快速实现各种复杂需求,并搭建起测试框架。

想要进大厂的测试工程师,赶紧把 Python 学起来吧。

—END—

本期赠书

截止日期:7月16日20:00

参与方式:点赞+收藏+评论:人生苦短,我用Python!!!

随机抽选多位幸运观众

带你了解Python的重要性,就算做测试也要会Python(文末送书)相关推荐

  1. 【办公自动化】使用Python一键提取PDF中的表格到Excel(文末送书5本)

  2. 文末送书 | 当Python遇上高考,会发生什么?

    (文末送书哦!) 延期一个月之后,1071万考生终于熬出头了. 这届高考太难了,不仅考学生,更是考验疫情的防控能力. 但是说到难,2018年浙江省教育厅的一个决定,让不少人感叹真难! 原来早在2017 ...

  3. 文末送书 | 手把手教你玩转,Python 会交互的超强绘图库 Plotly!

    作者:Will Koehrsen,译者:欧剃,编辑:肉松 原文:https://towardsdatascience.com/the-next-level-of-data-visualization- ...

  4. 用python偷偷给班级群女同学的颜值进行排名,排最后的大姐说开学要打爆我(文末送书)...

    点击上方"Python爬虫与数据挖掘",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 流水不腐,户枢不蠹.--吕氏春秋 ...

  5. ICLR 2020关键亮点与发展趋势总结(附python实战分析PyTorch vs Tensorflow使用情况)|文末送书...

    介绍 ICLR是International Conference on Learning Representations的简称,是机器学习和深度学习研究界最著名的会议之一. ICLR 2020最初计划 ...

  6. Python自动化操作Word15000字超强总结,帮你解放双手!(文末送书 )

    作者:超级大洋葱806 https://tangxing.blog.csdn.net/article/details/108418066 大家好,我是小z 老有同学问关于自动化办公的内容,今天就给大家 ...

  7. Python中处理字符串的常用函数汇总【文末送书】

    正式的Python专栏第23篇,同学站住,别错过这个从0开始的文章! 今天我们说了字符串的基础,格式化,这次我们讲解字符串的常用函数,不要错过! (文本送书,评论区抽取一位送书) 前两篇都在本文同个专 ...

  8. 讲讲Python中的函数传递问题 【文末送书】

    正式的Python专栏第25篇,同学站住,别错过这个从0开始的文章! 前篇讲了python中的函数和高阶函数,这篇再把函数的其他部分补充一下,稍微轻松简单一些. 文末评论送书,学委会用这个抽奖程序来进 ...

  9. 基于Python+Keras+OpenCV实现实时人脸活体检测 | 文末送书

    你在互联网上找到的大多数人脸识别算法和研究论文都会遭受照片攻击.这些方法在检测和识别来自网络摄像头的图像.视频和视频流中的人脸方面是非常有效,但是他们无法区分现实生活中的面孔和照片上的面孔.这种无法区 ...

最新文章

  1. 【技术实验】表格存储Tablestore准实时同步数据到Elasticsearch
  2. 在 Windows server 2008 下计划任务无法正常执行bat批处理文件
  3. SharpReader的效率:支持meme聚合
  4. c# mysql ef框架_首页 C# EF6数据库第一-EF试图创建我的数据...
  5. bzoj 1597 [Usaco2008 Mar]土地购买——斜率优化dp
  6. Vue(八)发送跨域请求
  7. 笔记:黑客是如何窃取网络传输过程中信息的?
  8. LinuxDay19——加密与安全(2)
  9. C#中计算两个时间的差
  10. 干货 :如何系统地学习数据挖掘
  11. Excel利用宏进行VBA编程
  12. Mac电脑怎样网络在线重装系统
  13. 搭建 WordPress 博客教程(超详细)
  14. 「医次元」「心际舰队」:论传销洗脑与纳粹之关联
  15. 厦门大学计算机专业,厦门大学计算机科学系专业介绍
  16. Ubuntu下重力方向调节
  17. 《Linux指令从入门到精通》——4.2 Linux下的简单文字模式文本编辑器
  18. 2020双十一活动怎么玩?做好这3点引爆销量!
  19. PortSwigger 跨站点脚本(XSS)
  20. three.js,透明模型能够遮挡可见模型

热门文章

  1. 企业招聘驱动的社会人才需求动态监测系统的设计文档(部分)
  2. 重庆计算机专业学校巴南区,巴南有什么大学
  3. AIOps智能运维学习资料汇总
  4. Vue项目 *.js 使用 jsdoc 生成 JavaScript 文档
  5. 运维工具Ansible—主机分组管理(hosts)
  6. 遥感大数据深度学习变化检测
  7. matlab曲线拟合图像,画图求助!matlab曲线拟合,谢谢!
  8. 一个震惊了整个德国的动人故事 (转)
  9. python+opencv裁剪视频
  10. dll预编译提高webpack打包速度