Python自动化测试框架

🍅 点击文末小卡片 ,免费获取软件测试全套资料,资料在手,涨薪更快 

什么是测试框架呢?

框架是一组准则,一个体系结构,遵循这些准则可以产生有益的结果。测试框架就是为自动化测试脚本提供执行环境而搭建的支架,它是一套准则,例如编码标准,测试数据处理,对象库处理等。

在自动化脚本编写过程中遵循这些准则可产生有益的结果,例如增加代码重用,更高的可移植性,降低的脚本维护成本等。准则而非规则;

它们不是强制性的,你仍然可以在不遵循准则的情况下编写脚本。但是你会错过拥有框架的优势。

使用测试框架的好处主要有:

1、提高测试效率
2、降低维护成本
3、最少的人工干预
4、最大的测试范围
5、代码的可复用

常见的自动化测试框架

我接下来会站在实践角度,来说说常见的自动化测试框架。现在用的最多的就是,Web UI 自动化和接口自动化两块其次是App自动化

  • 接口自动化测试方向:Python+requests+pytest+yaml+alluer+Jenkins;
  • web自动化测试方向:Python+selenium4+pytest+POM+allure+Jenkins;
  • app自动化测试方向:Python+appium+POM+pytest+allure+Jenkins;

需要大家注意的是,常见的 Robot Framework,Selenium 也可以单独称为框架,也可以称为工具。这些都是概念和术语,大家不必特别纠结。

通过上面的一些常见框架,你发现了什么?

它们都拥有共同特性:编程语言+单元测试框架+扫描编译工具+持续集成工具+数据库+项目管理工具,可以根据需求进行相应调整。

测试框架总体而言可以参考软件开发框架来构建,下面从软件开发框架原则中提取测试框架的属性:

1、测试框架是在测试开发过程中 提取特定领域测试方法共性部分形成体系结构(软件框架是软件开发过程中提取特定领域软件的共性部分形成体系结构)

2、测试框架的作用:在其基础上重用测试设计原则和测试经验,调整部分内容即可满足需求,可提高测试用例设计开发质量,降低成本,缩短时间;

3、不同技术测试领域有不同的测试框架类型;

4、测试框架不是一个现成可用的系统,是一个半成品,需要测试工程师基于它结合自己的测试对象知识转化为自己的测试用例

5、测试框架是提供给测试人员开发响应领域测试用例的测试分析设计工具;

6、测试框架不是测试用例集,而是通用的,具有一般性系统的主体部分。测试人员像填空一样,根据具体业务完成特定应用系统中与众不同的特殊部分

7、测试设计模式的思想(等价类,边界值)在测试框架中应用。

框架的组成部分

  • 需要配置文件管理;
  • 业务逻辑代码和测试脚本分离;
  • 报告和日志文件输出;
  • 自定义的库的封装 管理;
  • 执行测试用例方式;
  • 第三方插件的引入;
  • 持续集成;

测试框架组成部分的解释

配置文件管理:

我们需要一各配置文件去控制一些环境信息、开关等,配置文件可以使
txt/xml/yaml/properties/ini等格式的文件,一般properties较多的使用在java代码里,本文是基于python开发的测试框架,所以我们会选择ini文件

业务逻辑代码和测试脚本分离:

将业务逻辑代码和测试脚本写到不同的目录的py文件中,这样可以做到代码复用、封装、代码重构,使测试项目的目录更加清晰,适合多人开发测试脚本,方便调试和维护

报告和日志文件的输出:

执行testcase的结果怎么样需要用报告来展示,一般采用第三方的插件来实现,如HTMLTestRunner,风格简单明了。

日志的输出很重要,如果发生错误,脚本执行失败,通过日志可以快速定位

用户自定义库:

在自己的测试项目中有很多功能需要重复调用,这样我们就写成一个公共方法,方法哦工具包下,方便每次调用,必须做到封装

管理和执行脚本:

python中的单元测试框架unittest/pytest使用效率非常高,负责管理测试用例集,执行测试用例

第三方插件:

有时候我们测试项目的一些功能需要借助第三方插件能够更好的实现,比如parameterized参数化 第三方html报告生成的插件 htmltestrunner 可以放在第三方插件包中管理

持续集成:

git svn ant maven Jenkins,我们会把这些整合到Jenkins达到持续集成,一键执行测试脚本

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

​这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。

  • 11
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值