qtaf+playwright实现web自动化

​​​​​​qtaf+playwright

playwright 实现浏览器驱动,元素定位 ,元素操作,断言等,同时还支持录制生成代码

一、自动化执行使用qtaf框架

安装:pip install qtaf -y

GitHub - Tencent/QTAF: QTA test framework

用例编写规范

用例描述:简要说明用例的标题

owner:用例作者

timeout: 脚本超时时间

priority:脚本的优先级

status:脚本的状态

二、playwright 安装

playwright官方参考文档 :Installation | Playwright

4.1 安装python3环境

4.2 pip install playwright -y

4.3 安装所需要的浏览器(chromium,fiefox 和webkit)

playwright install

三、playwright元素定位

推荐的内置定位器。

四、自动生成代码

playwright codegen [options] [url]命令详细说明

options参数:

-o, --output <file name> :保存生成脚本
--target <language> :生成的脚本语言,可以设置javascript, test, python, python-async和csharp,默认为python。
-b, --browser <browserType> :要使用的浏览器,可以选择cr, chromium, ff, firefox, wk和webkit,默认chromium。
--channel <channel>:chromium版本,比如chrome, chrome-beta, msedge-dev等,
--color-scheme <scheme>:模拟器的颜色主题,可选择light 或者 dark样式。
--device <deviceName> :模拟的设备,比如iPhone 12。
--save-storage <filename> :保存上下文状态,用于保存cookies 和localStorage,可用它来实现重用。例如playwright codegen --save-storage=auth.json
--load-storage <filename> :加载--save-storage 保存的数据,重用认证数据。
--proxy-server <proxy> :指定代理服务器
--timezone <time zone> : 指定时区
--geolocation <coordinates> :指定地理位置坐标
--lang <language> :指定语言/地区,比如中国大陆:zh-CN
--timeout <timeout> :超时时间,定位毫秒,默认10000ms
--user-agent <ua string> :用户代理
--viewport-size <size> :浏览器窗口大小
-h, --help :查看帮助信息

在终端输入playwirght codegen 被测平台地址:

playwright codegen --viewport-size=800,600 --channel chrome https://www.baidu.com/

会自动调起浏览器,打开被测页面,手动操作页面,侧playwright会自动生成代码

五、 playwright在页面中加入 等待或者刷新页面

有时打开测试环境 ,可能响应比较慢,或者没有加载出来 ,所以在代码中增加必要的等待或者刷新操作,提高用例的稳定性

等待:page.wait_for_timeout(3000) #等待3s

刷新页面:page.reload() #刷新页面

六、 playwright断言(参考官方文档:Assertions | Playwright

Python Playwright 是一个基于 Python 的自动化测试框架,它可以用于 Web 应用程序的自动化测试。下面是使用 Python Playwright 实现自动化测试框架的步骤: 1. 安装 Python Playwright:在命令行中输入以下命令进行安装: ```python pip install playwright ``` 2. 安装浏览器驱动程序:Python Playwright 支持多种浏览器,包括 Chrome、Firefox 和 Safari 等。在使用之前,需要先下载并安装浏览器相关的驱动程序。 3. 编写测试用例:使用 Python Playwright 编写测试用例非常简单,只需要调用相应的 API 就可以实现。下面是一个简单的测试用例,用于测试 Google 搜索功能: ```python import asyncio from playwright.async_api import Playwright, async_playwright async def run(playwright: Playwright) -> None: browser = await playwright.chromium.launch() page = await browser.new_page() await page.goto('https://google.com') await page.type('input[name="q"]', 'Playwright') await page.press('input[name="q"]', 'Enter') await page.wait_for_selector('#search') title = await page.title() assert 'Playwright' in title await browser.close() async def main() -> None: async with async_playwright() as playwright: await run(playwright) asyncio.run(main()) ``` 4. 运行测试用例:在命令行中进入测试用例所在的目录,输入以下命令运行测试用例: ```python python test.py ``` 以上就是使用 Python Playwright 实现自动化测试框架的基本步骤。当然,还可以根据具体需求,进一步完善测试框架,比如添加报告生成、结果统计和持续集成等功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值