pytest+python下的UI自动化基础框架

整体设计模式:

config目录:存放一些公共的静态文件,如项目名称,配置文件等这些环境变量(可以用其他组件替换,如sql,主要能把配置文件的内容被程序识别)。

httptrquest目录:存放接口代码,UI自动化因为其稳定性问题会出现有些地方出错导致后续无法进行,故添加接口操作。

initailize目录:初始化代码,用于存放初始化操作的代码,比如初始化一些全局变量,初始化webdriver等,应用于整个项目的代码。

test目录:真正执行的目录,用于存放测试用例的代码,会被pytest识别将其转化为可执行的测试用例(PS:该文件的目录名及其模块、类、方法名都要根据pytest的设置来进行设置);该目录下的代码都会被pytest装饰,控制执行顺序,执行依赖等操作。

testcase目录:为test目录服务,执行相关的操作,定位元素,执行操作,输出结果等等,该目录下的模块、方法都会被test目录下相应的代码调用实例化

testcase_utils: 辅助工具类,在操作过程中某些页面上有些公共的操作,如表格table定位,批量元素的输入,js操作等等,便于维护。

utils目录: 工具类,为整个项目的运行提供基础的操作,如读取文件,将yaml文件转化为WebElement类对象元素,日志、截图、测试报告、sql操作、装饰器、发送报告等基础操作。与testcase_utils目录最大的区别为该目录下的代码不会操作页面上的元素

yaml文件: 存放元素的定位方式,将页面元素转化为yaml静态文件

conftest.py文件: ytest固定文件,主要功能两个,初始化操作和记录运行结果;1.用于fixture装饰器的使用,初始化操作,创建全局唯一对象,将这些对象传递给initailize目录下的指定模块,全局共用 2.记录运行结果,整个运行失败时的操作,用于最后的分析操作

pytest.ini 文件,pytest固定文件,指定运行方式

原文地址:https://blog.51cto.com/11463754/2482184

时间: 2024-10-01 20:53:45

pytest+python下的UI自动化基础框架的相关文章

Selenium系列(十四) - Web UI 自动化基础实战(1)

如果你还想从头学起Selenium,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1680176.html 其次,如果你不懂前端基础知识,需要自己去补充哦,博主暂时没有总结(虽然我也会,所以我学selenium就不用复习前端了哈哈哈...) 注意,目前的实战都是流水账式写的,后面才会结合框架+PO模式 目的是为了掌握所学的Selenium基础 实战题目 访问:https://m.weibo.cn/ 点击:大家都在搜 点击:微博热搜榜

Selenium系列(十五) - Web UI 自动化基础实战(2)

如果你还想从头学起Selenium,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1680176.html 其次,如果你不懂前端基础知识,需要自己去补充哦,博主暂时没有总结(虽然我也会,所以我学selenium就不用复习前端了哈哈哈...) 注意,目前的实战都是流水账式写的,后面才会结合框架+PO模式 目的是为了掌握所学的Selenium基础 实战题目 访问:https://www.toutiao.com/ 获取到下图所有黑框里的内容

python下selenium模拟浏览器基础操作

1.安装及下载 selenium安装: pip install selenium  即可自动安装selenium geckodriver下载:https://github.com/mozilla/geckodriver/releases Chromedriver下载:http://npm.taobao.org/mirrors/chromedriver/ 2.保存路径 将下载好的geckodriver以及Chromedriver解压到桌面,打开我的电脑,找到Python文件夹中anancode文件

IDEA+java通过SSH来进行分析日志,实现UI自动化动态验证码登录

在我写自动化脚本的时候经验药真实发送验证码才能往下进行UI自动化 思路:验证码会显示在哪些地方,手机短信?数据库存储?日志? 完整代码如下: package guanyu.tools; import com.jcraft.jsch.*;//import jdk.nashorn.tools.Shell;import java.awt.*;import java.io.BufferedReader;import java.io.InputStreamReader;import java.util.A

(appium+python)UI自动化_07_UI自动化实例【拼多多搜索商品为例】

前言 初学UI自动化的小伙伴,在配置好appium+python自动化环境后,往往不知道如何下手实现自动化.小编在初期学习的时候也有这种疑惑,在此以拼多多搜索为实例,展示下appium是如何实现自动化的. 前提:已安装配置好appium+python自动化环境 一.连接手机启动app 1,连接手机 -手机USB连接电脑 -手机打开开发者模式.USB调试功能 2,基础信息配置 基础连接信息如下(以微信app为例): 'platformName': 操作平台'deviceName': 设备名称'pl

Python+Selenium搭建UI自动化测试框架

Python语言是非常强大的编程语言,很多时候也拿来当脚本语言用. Selenium是web应用测试工具,支持Java.Python等多种语言脚本,支持Chrome.Firefox等多种主流浏览器.主要实现的就是模拟人使用web应用,自动的打开浏览器.打开应用.进入应用进行各种模拟业务操作等等. 接下来,一步一步带领大家实现下Python+Selenium实现使用脚本自动发微博的功能. 1.Python安装 一般Linux系统自带了Python,Windows系统可以参考本人之前文章 [Pyth

Python自动化基础【第一篇】:目录

本系列博文包含 Python基础.前端开发.Web框架.缓存以及队列等,希望可以给正在学习编程的童鞋提供一点帮助!!! Python自动化基础[第一篇]:目录 Python自动化基础[第二篇]:初识Python Python自动化基础[第三篇]:Python基本数据类型 Python自动化基础[第四篇]:Python基础之函数 Python自动化基础[第五篇]:Python基础之杂货铺 Python自动化基础[第六篇]:模块 Python自动化基础[第七篇]:面向对象 Python自动化基础[第

[python]RobotFramework自定义库实现UI自动化

1.安装教程 环境搭建不多说,网上资料一大堆,可参考https://www.cnblogs.com/puresoul/p/3854963.html,写的比较详细,值得推荐.目前python3是不支持ride的所以,用python2 2.创建一个工程 &工程下有哪些目录,这样放文件比较明确,如下 &创建好,这时候就得写脚本主题是UI自动化,所以用selenium库,还有其他得辅助库 ,cd c:\Python27\Scripts\,执行easy_install pip, 安装好pip后dos

基于python+appium通过图片对比来做的UI自动化

1.python + appium +图片对比实现UI自动化:背景:当手机需要适配不同的语言时,测试过程中易出现因为语言不熟悉,导致UIbug被遗漏(例如setting中的描述性文字显示不完整等等问题)环境搭建:需使用模块PIL,Windows版本链接地址:http://pythonware.com/products/pil/ubuntu (使用16.04虚拟机):sudo apt-get install python-imaging安装过程遭遇Unable to acquire the dpk