playwright pytest

pytest之fixture使用方式

一、问题 pytest中fixture的调用方式有哪几种? 二、回答 有4种方式:1.传参调用2.自动调用autouse=True3.手动调用usefixtures4.与parametrize结合调用indirect=True 第一种方式:传参调用getToken方法装上了 @pytest.fixt ......
fixture 方式 pytest

pytest参数化数据来源于excel文件时,如果读取参数化数据?

一、问题 pytest参数化数据来源于excel文件时,如果读取参数化数据? 二、回答 有两种获取方式:1.列表嵌套列表的方式2.列表嵌套字典的方式 更加推荐第2种列表推荐字典的方式,这样就算excel增加一列也没关系,不用大动代码,而列表嵌套列表的方式,一旦excel增加或减少一列,pytest. ......
参数 数据 来源 文件 pytest

pytest参数化数据来源于csv文件时,如果读取参数化数据?

一、问题 pytest参数化如何读取csv文件数据? 二、回答 有两种获取方式:1.列表嵌套列表的方式2.列表嵌套字典的方式 更加推荐第2种列表推荐字典的方式,更好用。 data\id.csv数据为: 代码如下所示: 1 import csv 2 import os 3 4 import openp ......
参数 数据 来源 文件 pytest

33基于playwright编写网络抓包工具

from playwright.sync_api import sync_playwright r''' 可以利用playwright框架抓浏览器网络请求包,抓响应包输出会有识别不了的字符编码报错(暂无解决,或者不用解决)。 ''' # 回调函数获取请求url、请求头、请求体 def on_requ ......
playwright 工具 网络

【pytest】基于钩子函数与conftest实现多套环境切换

项目路径 config.py from utils.connect_mysql import DbConnect class BaseConfig: VERSION = "v1.0" EMAIL = "123@qq.com" APPID = "10086" class TestConfig(Base ......
钩子 多套 函数 conftest 环境

pytest如何在测试之间共享全局变量?

注意:pytest_namespace 现在已弃用 pytest 提供了一种在会话中使用一些全局变量的方法。这些变量也可以被 fixtures 使用。 这些变量是通过 pytest 挂钩控制的。 import pytest def pytest_namespace(): return {'my_gl ......
全局 变量 之间 pytest

python+playwright 学习-43 Pyinstaller打包生成独立的可执行文件

前言 playwright 与Pyinstaller结合使用来创建独立的可执行文件。 本地化安装 有同学提到说想打成一个exe的独立包,但是执行playwright install会默认把 chromium,firefox 和 webkit 三个浏览器安装到系统目录。这样打包的时候就找不到启动的浏览 ......
Pyinstaller playwright 文件 python 43

python用playwright自动化测试程序打包exe

playwright自动化测试代码写好后,打包为exe运行在目标PC上可能出现错误。 原因: 1、运行的PC没有响应的浏览器。 2、playwright没有打包到代码中。 所以本例用AutoPytoExe为例来制作exe程序解决问题。 1、安装: 2、安装完成之后,我们就可以输入:auto-py-t ......
playwright 程序 python exe

【接口自动化测试实战】python+requests+Pytest+yaml+Allure

前言 一、先来了解下pytest 二、需要具备的基础知识 三、开发环境准备 四、接口自动化实战(设计项目目录) 五、方法封装 六、编写自动化用例脚本 七、持续集成 八、其他自动化框架 ......
实战 requests 接口 python Pytest

Playwright爬虫绕过Cloudflare人机验证

1. 问题描述 有些网关接入了Cloudflare的人机验证组件,当使用Playwright等自动化工具爬取的时候,会被人机验证阻拦。阻断的效果如下: 2. 问题原因 Selenium、Puppeteer、Playwright等自动化控制工具的实现都会遵循一个规范,就是使用这些工具的时候,获取 na ......
爬虫 人机 Playwright Cloudflare

关键字 开发-01 pytest收集yaml用例

1.pytest收集测试用例规则 pytest框架在收集用例的时候,默认会查找test_开头的.py 模块,并且在模块中找到test_ 开头的函数或Test开头的类。 根据这个规则,如果我们想收集yaml格式的文件当用例执行,需解决2个问题: 1.修改用例收集规则,改成收集yaml格式文件作为收集的 ......
关键字 关键 pytest yaml 01

selenium+pytest进行自动化测试(项目:白羽黑月SMS)

最近在学习selenium和pytest,刚好找到一个合适的项目学习,根据bysms给出来的测试用例进行自动化测试编写 首先先写了登录的测试用例,因为后续测试都是在登陆的基础上测试的,所以把这单独写出来 创建一个login_success.py文件 from selenium.webdriver.c ......
selenium 项目 pytest SMS

《最新出炉》系列初窥篇-Python+Playwright自动化测试-32-JavaScript的调用执行-下篇

1.简介 在实际工作中,我们需要对处理的元素进行高亮显示,或者有时候为了看清楚操作过程和步骤我们需要跟踪鼠标点击了哪些元素需要标记出来。虽然很少遇到,但是为了以后大家可以参考或者提供一种思路,今天宏哥就在这里把这种测试场景playwright是如何处理的讲解和分享一下。 2.用法 上一篇中就提到过, ......
下篇 Playwright JavaScript Python 32

python+pytest写测试用例后置清理数据操作

一、teardown_function 函数是为了在每个测试函数def执行后进行数据清理。 # 引入 DbConnect 类或者确保它已经被定义from your_db_module import DbConnect def teardown_function(): try: print("后置操作 ......
数据 python pytest

《最新出炉》系列初窥篇-Python+Playwright自动化测试-31-JavaScript的调用执行-上篇

1.简介 在做web自动化时,有些情况playwright的api无法完成以及无法应对,需要通过或者借助第三方手段比如js来完成实现,比如:去改变某些元素对象的属性或者进行一些特殊的操作,本文讲解playwright怎样来调用JavaScript完成特殊操作。 2.用法 上一篇中就提到过,这里提取一 ......
上篇 Playwright JavaScript Python 31

2023年第 17期《Python接口自动化+Playwright 》课程,12月3号开学(课程全面升级!)!

2023年第 17 期《Python接口自动化+Playwright 》课程课程,12月3号开学(课程全面升级!) 主讲老师:上海-悠悠 上课方式:微信群视频在线教学,方便交流 本期上课时间:2023年12月3号 - 2024年3月2号,晚上20:30-22:30 报名费:报名费3000一人(周期3 ......
课程 Playwright 年第 接口 Python

playwright录制功能使用绕过登录操作

1.终端上执行下面的命令会生成一个录制页面 2.在录制页面输入自己要登录的网址,输入账号密码或者有验证码的,正常的登录操作,操作成功后,会在本地目录生成一个文件保存了cookies 3.下次我们在终端命令输入直接录制的网址即可,已经跳过登录操作了 4.playwright open --load-s ......
playwright 功能

pytest---通过hooks获取用例执行结果(pytest_runtest_makereport )

前言 测试用例在执行完成后,想要获取测试用例的执行结果,可以通过hooks(钩子函数)来进行获取,其中pytest中就存在多个hooks的函数供我们使用,或者进行二次开发,从而完成我们想要的功能 pytest_runtest_makereport pytest_runtest_makereport ......

playwright无序列表

listitem 是无序列表,ul 和 li 标签组合 • 1.水平显示的列表 • 2.dropdown 方式,一般需要鼠标悬停,出现对应的列表 1. # listitem 定位,role角色定位到listitem上面在通过filter定位某一个文本 page.get_by_role('listit ......
playwright

playwright中table表格定位

遇到输入框是弹出日历控件,选一个日期的这种场景,可以直接在输入框输入内容。如果输入框是readonly的时候,可以用js改变输入框的属性 下图是调试语法 ......
playwright 表格 table

pytest日志配置

pytest默认输出日志如下: 为了让日志看起来更加舒服,我们可以在pytest.ini文件中增加如下配置 # 是否开启日志true/false log_cli = true # 过滤日式级别 log_cli_level = info # 输出信息 log_cli_format = %(asctim ......
pytest 日志

playwright推荐的内置定位器

• page.get_by_text() 通过文本内容定位。 • page.get_by_label() 通过关联标签的文本定位表单控件。 • page.get_by_placeholder() 按占位符定位输入。 • page.get_by_title() 通过标题属性定位元素。 • page.g ......
定位器 playwright

《最新出炉》系列初窥篇-Python+Playwright自动化测试-30-处理日历时间控件-下篇

1.简介 理想很丰满现实很骨感,在应用playwright实现web自动化时,经常会遇到处理日期控件点击问题,手工很简单,可以一个个点击日期控件选择需要的日期,但自动化执行过程中,完全复制手工这样的操作就有点难了或者是有些复杂啰嗦而且麻烦不过相对于selenium来说,playwright已经很好了 ......
下篇 控件 Playwright 日历 时间

解决执行pytest -vs test.py报错问题

报错如下: 解决方案: 在终端中执行 python -m pytest +后面你想运行的命令,如下: python -m pytest test.py ......
pytest 问题 test py vs

《最新出炉》系列初窥篇-Python+Playwright自动化测试-29-处理日历时间控件-中篇

1.简介 上一篇的日历时间控件宏哥介绍的比较传统也是很常见的。宏哥不能说它很low,但是相比较一些高端、大气、上档次的日历时间控件,结果就一目了然了:确实很low。 2.被测网站 2.1高大上日历时间控件 高大上的日历时间控件和手机的那种一样滑动选择日历时间。或许这就是手机端的,这里演示一下在web ......
中篇 控件 Playwright 日历 时间

软件测试|Windows系统配置pytest+allure环境教程

前言 allure可以输出非常精美的测试报告,也可以和pytest进行完美结合,不仅可以渲染页面,还可以控制用例的执行。本文我们将介绍Windows系统中如何配置allure环境。 第一步:配置Java环境 因为allure的运行依赖于Java环境,所以我们需要先配置好Java环境,allure需要 ......
软件测试 Windows 环境 教程 pytest

软件测试|详解 Pytest 参数化:简化测试用例的编写

简介 Pytest 是一个广泛使用的 Python 测试框架,它提供了丰富的功能来编写和执行测试用例。其中一个强大的特性是参数化,它允许我们通过一种简洁的方式运行多个输入参数的相似测试用例,从而减少冗余的代码。本文将详细介绍 Pytest 的参数化功能以及如何使用它来简化测试用例的编写。 参数化测试 ......
软件测试 参数 Pytest 软件

pytest---通过hooks改变用例执行顺序(pytest_collection_modifyitems)

前言 当我们设计自动化测试用例时,一般每条用例不能设置相依赖性,这样会对我们用例执行造成一些影响,当然如果存在依赖的话,我们可以通过pytest的插件设置执行顺序来完成,今天小编介绍一种通过pytest的钩子函数来完成更改测试用例的执行顺序 用例执行顺序 大家都知道,一般的执行顺序根据的是ascii ......

Python+PlayWright+ Pytest + Allure 自动化学习路线

前言 对于自己写过文章的总结,并不代表最好的学习路线 还未完结,努力更新中ing 建议把每节的实战演练做一下 PlayWright PlayWright - 环境安装 PlayWright - 如何使用playwrigh PlayWrigh - 同步和异步运行 PlayWright - 深入异步 P ......
PlayWright 路线 Python Allure Pytest

《最新出炉》系列初窥篇-Python+Playwright自动化测试-28-处理日历时间控件-上篇

1.简介 我们在实际工作中,有可能遇到有些web产品,网页上有一些时间选择,然后支持按照不同时间段范围去筛选数据,例如:我们预定火车票或者预定酒店,需要选择发车日期或者酒店的入住与退房时间。宏哥早在之前的12306选出发站就简单的提到过,只不过是一带而过,今天就展开详细介绍一下。网页上日历控件一般, ......
上篇 控件 Playwright 日历 时间