今天是持续写作的第 <font color="red">32</font> / 100 天。
如果你有想要交流的想法、技术,欢迎在评论区留言。
本篇文章是滚雪球学 Python 自动化测试篇的最后一篇,截止到本篇,自动化正好是 10 篇文章。由于橡皮擦并不是专业从事自动化测试的人员,接下来的部分将从概念与工具层入手,为你展开后续自动化测试之路。
自动化测试篇其它文章,参照 专栏地址。
- 滚雪球学 Python 番外系列,自动化测试是个啥?
- Selenium 与 Python 之间如何才能交融在一起
- Selenium 八大定位,滚雪球学 Python 番外系列
- Selenium 常用方法与属性、鼠标悬停与 Select 操作
- Selenium 利用 JS/JQ 操作元素、鼠标键盘事件、Cookie 操作
- Selenium 高级点儿的技能都有啥???
- Selenium 自动化前的补充知识,Frame操作、多窗口切换、模糊定位、复合定位
- 用 Selenium 搞定自动化测试项目,途牛搜机票。
- Selenium 项目代码的优化与重构之路,滚雪球学 Python 番外篇
数据驱动测试 DDT
数据驱动测试在自动化测试领域,属于设计模型,可以理解成是一种约定俗成的编码规范,如果你想要迈入高级自动化测试工程师,那本部分内容属于必备知识之一。
数据驱动测试,核心观点是数据与测试分离,大白话就是自动化测试的时候,可以使用预先配置好的测试数据。
如果想要学习,需要熟悉 Python 对文件的操作,在 Python 中涉及的文件种类包含多种,基础的有 TXT 文件操作、CSV 文件操作,EXCEL 文件操作、JSON 文件操作、XML 文件操作、数据库文件操作、YAML 文件操作。
以上提及的都是你在做数据驱动测试的时候,需要储备的知识技能。关于此部分,在滚雪球学 Python 15 讲中已经讲解。
其次,你还需要补充的知识是日志相关内容,日志与日志等级在滚雪球学 Python 系列课程中,也有所有涉及,可以去查阅。
https://blog.csdn.net/hihell/category_10573584.html
数据驱动测试简写的 DDT(Data-Driver Tests),在学习的时候,你首先要检索的资料应该是关于 单元测试库(UnitTest)
相关的内容,该库是一款单元测试框架,使用起来很方便。
学习方向给你了,如果你想要从事 Python 自动化测试,那首先把它的资料找齐,接着去搞定它。
页面对象模式 PO
该模式一般称为 PO(Page Object) 设计模式,相关的内容你只需要检索对应的关键字即可,核心在于对代码的分层,每个层次都有自己的独特任务。
设计项目架构的时候,按照层次划分如下(按字母表排序):
PO 项目
Base 层
Common 层
Data 层
Logs 层
PO 层
Reports 层
TestCase 层
config.ini 配置文件
每个层次都有自己的任务,例如 Common 层主要实现一些通过的函数,Base 层用于完成元素获取方法的封装,PO 层为核心层,业务代码存在这一层,TeseCase 为测试用例,Data 层自然对应的数据内容,Logs 层对应的是日志,Reports 层为测试报告,整个项目的基础配置在 config.ini
文件中进行体现。
工作中的工具
Python + 测试框架知识都属于自动化测试部分的基础,在实际工作中自动化测试人员还需要掌握一些工具,例如代码托管工具 Git、持续集成工具 Jenkins、容器技术 docker 等等内容。
如果未来你进入一家公司从事自动化测试,那经常会听到的一个词就是构建,该内容其实就是在使用 Jenkins 完成一些动作,所以对于工具的使用,务必掌握。
如果未来你技能更想进一步提升,可能就会碰到分布式测试了,那时你会用到 Docker 相关知识,作为一个测试工程师,你有必要掌握它。
随着工作履历的增长,你面对的技能栈会越来越多,需要掌握的知识也会越来越多,希望本系列文章可以让你走上自动化测试之路,未来可期。
最后一句,目前国内使用 行为驱动测试(BDD)模式的公司比较少,掌握的人也比较少,可以学习下。
滚雪球学 Python 番外篇,自动化测试收工
对于自动测试部分,橡皮擦不能算是专业人士,毕竟让一个产品学会技术已经不容易啦,哈哈,希望这 10 篇文章能帮助你一点点,就足够了。
如果你想学习一下 Python 知识,可以先看一下 滚雪球学 Python 基础篇(已完结)。
如果你想学习一下 Python 爬虫技术,可以订阅 爬虫百例。
滚雪球学 Python 第二滚,预计在 2021 年 1 月中旬开始编写,接下来橡皮擦要写的一个系列是《Python 和美男女之间的故事》,希望专栏名能引起你的期待。哈哈哈哈哈~