【playwright】新一代自动化测试神器playwright+python系列课程37_playwright_下载文件

playwright_文件下载

我们来看一下playwright下是如何实现文件下载功能的。
在下载文件时,需要使用expect_download()监听下载事件,再结合save_as(path)将文件另存到指定的目录下。
使用语法:

with page.expect_download() as f:
    page.locator(selector).click() # 点击下载按钮
download = f.value
download.save_as(path)

我们以禅道的用例模板到处为例,看一下下载文件到过程
在这里插入图片描述

实践代码:

# '''
# author: 测试-老姜   交流微信/QQ:349940839
# 欢迎添加微信或QQ,加入学习群共同学习交流。
# QQ交流群号:877498247
# 西安的朋友欢迎当面交流。
# '''

from playwright.sync_api import Playwright, sync_playwright, expect
import re

playwright = sync_playwright().start()
browser = playwright.chromium.launch(headless=False)
context = browser.new_context()
page = context.new_page()
page.goto("http://127.0.0.1/zentao/user-login.html")
page.locator("#account").fill("admin")
page.locator("input[name=\"password\"]").fill("Deshifuzhi01")
page.get_by_role("button", name="登录").click()
page.wait_for_timeout(2000)
page.goto('http://127.0.0.1/zentao/testcase-browse-1.html')
page.wait_for_timeout(1000)
page.frame_locator("#appIframe-qa").locator('i[class="icon icon-export muted"]').click()
page.wait_for_timeout(1000)
page.frame_locator("#appIframe-qa").locator('text=导出模板').click()
page.wait_for_timeout(1000)

with page.expect_download() as f:
    # 点击保存按钮
    page.frame_locator("#appIframe-qa").frame_locator('#iframe-triggerModal').locator('#submit').click()
f.value.save_as('D:\jnc\自动化测试\playwright\playwright_project\模板.csv') # 将文件另存为csv
 
page.wait_for_timeout(10000)
# ---------------------
context.close()
browser.close()
playwright.stop()
  • 11
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值