python playwright自动等待和断言举例分析

技术python playwright自动等待和断言举例分析本篇内容主要讲解“python playwright自动等待和断言举例分析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家

本文主要讲解“pythonplaywright自动等待和断言示例分析”。感兴趣的朋友不妨看看。本文介绍的方法简单、快速、实用。让边肖带你学习“pythonplaywright自动等待和断言分析”!

00-1010操作元素的一系列方法,只要调用测试文件夹功能页面,操作元素的方法就可以画出来:

importpytest

from剧作家. _ apiimportPage

灵巧的例子(第:页):

page.goto('https://www.baidu.com ')

page . hover('//*[@ id=' u1 ']/*[text()=' setting ']')

page . click('/*[@ ID=' s-用户-设置-菜单']/* [text ()='搜索设置']'

Page.set_checked('//*[text()='所有语言']',False)

Assertpage.title()=='百度,你就知道'

page.close()

if__name__=='__main__':

Py.main (['-v ',' test _ example.py'])剧作家将在执行元素之前执行一系列可操作性检查,以确保这些操作按预期运行。在执行请求的操作之前,它将自动等待所有相关检查通过。如果所需的检查在给定的范围内失败,将引发超时,操作将失败并显示超时错误。

方法如下:

00-1010 page . dblclick()

自动等待及元素执行方法

#获取元素并聚焦。如果没有匹配的元素,该方法等待匹配的元素出现在DOM中。

Page.focus('#su')

鼠标双击

#表示鼠标放在按钮上。这种方法是针对那种浮箱操作的。

page . hover('//*[@ ID=' u1 ']/* [text ()=' setting ']')

获取元素焦点

page . click('/*[@ ID=' s-用户-设置-菜单']/*[text()[@ ID=' s-用户-设置-菜单']/*[text()='搜索设置']')

鼠标悬停

#确保元素是复选框或单选框。如果取消选择该元素,此方法将立即返回。

Page.uncheck('//*[text()='仅限简体中文']')

鼠标点击

#此方法关注元素,事件在输入值后触发。您也可以传递一个空字符串来清除输入字段。

page . fill(' kw ','秦岳')

设置复选框取消或选中

#返回元素属性值。

不间断空格

; page.get_attribute('#kw', 'name')

获取内部文本

page.inner_text('//*[@id="s-hotsearch-wrapper"]//*[@data-index="2"]//*[@class="title-content-title"]')

获取内部HTML

page.inner_html('//*[@id="s-hotsearch-wrapper"]//*[@data-index="2"]')

获取文本内容

page.text_content('//*[@id="s-hotsearch-wrapper"]//*[@data-index="2"]')

截图

# baidu.png存放至当前文件夹下的cases文件夹种
    page.screenshot(path='./cases/baidu.png')

填写文本并触发键盘事件

# 为文本中的每个字符发送一个keydown、keypress/input和keyup事件。
    page.type("#kw", "hello")

输入键盘操作

# 获取按钮元素,输入键盘操作
    page.press('#su', 'Enter')

设置select下拉选项

# 与值匹配的单个选择
    page.select_option(\"select#colors\", \"blue\")
    # 与标签匹配的单个选择
    page.select_option(\"select#colors\", label=\"blue\")
    # 多项选择
    page.select_option(\"select#colors\", value=[\"red\", \"green\", \"blue\"])

调度事件

   # type可传:"click", "dragstart"
    page.dispatch_event('#su', 'click')

检查点(断言)

文字内容断言

# 获取文本内容,进行断言
    content = page.text_content('[target="_blank"]:first-child')
    assert content == "新闻"

内部文字断言

# 获取内部文字,进行断言
    text = page.inner_text('[target="_blank"]:first-child')
    assert text == "新闻"

属性断言

# 获取属性值,进行断言
    attribute = page.get_attribute('#su', 'value')
    assert attribute == "百度一下"

复选框断言

page.hover('//*[@id="u1"]/*[text()="设置"]')
    page.click('//*[@id="s-user-setting-menu"]//*[text()="搜索设置"]')
    # 复选框状态,进行断言
    checked = page.is_checked('//*[text()="全部语言"]')
    assert checked

js表达式断言

# JS表达式,进行断言
    js_content = page.locator('[data-index="4"]>a>[class="title-content-title"]').text_content()
    assert js_content == "长津湖超战狼2成中国影史票房冠军"

内部HTML断言

# 内部 HTML ,进行断言
    html = page.inner_html('[class="hot-title"]')
    assert "百度热搜" in html

元素可见断言

# 元素可见性 ,进行断言
    visible = page.is_visible('#su')
    assert visible

启动状态断言

# 启用状态(元素存在可点击) ,进行断言
    enabled = page.is_enabled('#su')
    assert enabled

直接对比断言

assert page.title() == "百度一下,你就知道"

playwright还提供了自定义断言,这一块我还没有实操过,有兴趣可的可继续研究下:

# 断言本地存储值
user_id = page.evaluate("() => window.localStorage.getItem('user_id')")
assert user_id
# 断言输入元素的值
value = page.locator('#search').input_value()
assert value == 'query'
# 断言计算样式
font_size = page.locator('div').evaluate('el => window.getComputedStyle(el).fontSize')
assert font_size == '16px'
# 断言列表长度
length = page.locator('li.selected').count()
assert length == 3

到此,相信大家对“python playwright自动等待和断言举例分析”有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/119052.html

(0)

相关推荐

  • Python文本预处理的方法是什么

    技术Python文本预处理的方法是什么本篇内容介绍了“Python文本预处理的方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,

    攻略 2021年10月25日
  • 怎么解决内存泄漏问题

    技术怎么解决内存泄漏问题本篇内容介绍了“怎么解决内存泄漏问题”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!问题排查首先确

    攻略 2021年10月26日
  • Linux权限位介绍

    技术Linux权限位介绍 Linux权限位介绍Linux 系统,最常见的文件权限有 3 种,即对文件的读(用 r 表示)、写(用 w 表示)和执行(用 x 表示,针对可执行文件或目录)权限。在 Linu

    礼包 2021年12月7日
  • C++内联函数不宜使用情况的示例分析

    技术C++内联函数不宜使用情况的示例分析这篇文章将为大家详细讲解有关C++内联函数不宜使用情况的示例分析,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。C++语言中的各种应

    攻略 2021年10月27日
  • 栩栩如生和惟妙惟肖的区别,惟妙惟肖这个成语是对的嘛

    技术栩栩如生和惟妙惟肖的区别,惟妙惟肖这个成语是对的嘛一、与惟妙惟肖意思相近的成语栩栩如生和惟妙惟肖的区别:栩栩如生 1、成语读音:xǔ xǔ rú shēng 2、释义:形容画作、雕塑中的艺术形象等生动逼真,就像活的一

    生活 2021年10月23日
  • 信息安全工程师-软考中级-备考笔记:第十一章 网络物理隔离技术原理与应用

    技术信息安全工程师-软考中级-备考笔记:第十一章 网络物理隔离技术原理与应用 信息安全工程师-软考中级-备考笔记:第十一章 网络物理隔离技术原理与应用第11章 网络物理隔离技术原理与应用
    网络物理隔离概

    礼包 2021年11月14日