Python + selenium 自动化测试框架详解

 更新时间:2021年12月21日 16:40:18   作者:嘀嗒学测试  
这篇文章主要为大家介绍了Python + selenium 自动化测试框架,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助

自动化测试框架

项目自动化测试框架设计为4层

1.基础层(通用层)

基础层:

将通用,重复性比较高的代码封装到这里。 写通用的代码的。

其他3层想要的话,就可以直接调用。

例如:

读取测试数据的代码,读取配置信息的代码;截图的代码的,定位元素的代码等等

2.功能层(页面层)

功能层:

pages 封装页面的。 把页面封装成类。类中包含:属性和方法

把页面上的界面元素定义成类的属性;

把定位界面元素并且进行操作封装到类的方法中;

3.业务层

业务层:

把页面和测试数据等等整合到一起,形成一个完整的业务功能。

4.用例层

用例层:

把对应的业务功能的用例进行实现封装。 放到测试套件中进行批量执行,并且生成测试报告。

每一个业务功能会有很多个用例。

4层框架对应的项目工程

OAProject

  • Config 文件夹目录:用来存放配置信息相关的文件 例如:url.csv db.csv
  • Data 文件夹目录: 用来存放测试数据文件的。例如:login_test_data.csv
  • Pictures 文件夹目录:用来存放截图文件的。 例如:xxxx.png
  • Reports 文件夹目录:用来存放测试报告文件的。 例如: xxxx.html
  • Files 文件夹目录:如果有上传附件功能实现自动化的话,就可以有。用来存放上传的那个附件文件。
  • Src 包:package:用来管理oa项目中所有的py文件
  • Common 包:存放通用,共同的代码的。 对应:第一层:基础,通用层

如:

读取CSV文档中的测试数据

  • Pages 包: 存放页面代码的; 对应:第二层:功能页面层
  • Business 包:存放业务层代码的。 对应:第三层:业务层
  • Test_case 包:存放组装测试用例的代码; 对应:第四层:用例层
  • Test_run 包:存放测试套件已经生成测试报告的代码; 对应:第四层:用例层

在这里插入图片描述

其中:

pages business test_case包中可以继续按照功能模块来创建包。例如:XTBG ggxx 等等

备注:

以上工程的设计,框架的设计在工作中:一个项目中,只能由一个人去设计完成。一般都是自动化测试负责人来完成。 其他自动化测试人员等负责人把框架搭建好之后,直接获取,写代码即可。

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注脚本之家的更多内容!

相关文章

  • Python+matplotlib实现计算两个信号的交叉谱密度实例

    Python+matplotlib实现计算两个信号的交叉谱密度实例

    这篇文章主要介绍了Python+matplotlib实现计算两个信号的交叉谱密度实例,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01
  • Python实现分割文件及合并文件的方法

    Python实现分割文件及合并文件的方法

    这篇文章主要介绍了Python实现分割文件及合并文件的方法,涉及Python针对文件的分割与合并操作相关技巧,通过自定义函数split与join实现了文件的分割与合并操作,需要的朋友可以参考下
    2015-07-07
  • Python中np.argmax()函数用法示例

    Python中np.argmax()函数用法示例

    np.argmax是用于取得数组中每一行或者每一列的的最大值,常用于机器学习中获取分类结果、计算精确度等,下面这篇文章主要给大家介绍了关于Python中np.argmax()函数用法的相关资料,需要的朋友可以参考下
    2022-12-12
  • Scala中使用Jsoup库处理HTML文档的案例分析

    Scala中使用Jsoup库处理HTML文档的案例分析

    Scala是一种多范式的编程语言,具有函数式编程和面向对象编程的特点,同时也能够与Java语言完美兼容,它拥有强大的类型推断、高阶函数、模式匹配等特性,使得代码更加简洁、灵活和易于维护,这篇文章主要介绍了Scala中使用Jsoup库处理HTML文档的案例分析,需要的朋友可以参考下
    2024-04-04
  • Python实现切割mp3片段并降低码率

    Python实现切割mp3片段并降低码率

    MoviePy是一个基于Python的视频编辑库,它提供了创建、编辑、合并、剪辑和转换视频的功能,所以本文主要介绍如何使用moviepy来分割音频流并降低码率,感兴趣的可以了解下
    2023-08-08
  • 全网最细 Python 格式化输出用法讲解(推荐)

    全网最细 Python 格式化输出用法讲解(推荐)

    这篇文章主要介绍了全网最细 Python 格式化输出用法讲解,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-01-01
  • Python爬虫之重放攻击原理实例详解

    Python爬虫之重放攻击原理实例详解

    重放攻击是一种网络攻击方式,攻击者通过截获合法用户的请求,并将其重新发送,以模拟合法用户的行为,在Python爬虫领域,了解重放攻击的原理和防范方法至关重要,本文将深入介绍重放攻击的概念、示例代码演示以及防范措施,帮助大家更好地理解和应对这一威胁
    2023-12-12
  • python pip安装库下载源更换(清华源、阿里源、中科大源、豆瓣源)

    python pip安装库下载源更换(清华源、阿里源、中科大源、豆瓣源)

    为了提高Python包的下载速度和稳定性,可以配置国内的镜像源,如清华源、阿里源、中科大源和豆瓣源,设置方法简单,只需更改pip的配置文件或使用命令行即可,需要的朋友可以参考下
    2024-10-10
  • 一步步教你用Python实现2048小游戏

    一步步教你用Python实现2048小游戏

    相信2048这个游戏对大家来说一定不陌生,下面这篇文章就主要给大家介绍了怎么用Python实现2048小游戏,文中通过注释与示例代码介绍的很详细,相信对大家的理解和学习具有一定的参考借鉴价值,有需要的朋友们一起来看看吧。
    2017-01-01
  • python matplotlib.pyplot.plot()参数用法

    python matplotlib.pyplot.plot()参数用法

    这篇文章主要介绍了python matplotlib.pyplot.plot()参数用法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-04-04

最新评论