(三) selenium元素定位和常用操作(下)

这篇具有很好参考价值的文章主要介绍了(三) selenium元素定位和常用操作(下)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

上一篇:(二) selenium元素定位(上)_要开朗的spookypop的博客-CSDN博客

本篇继续介绍常用的元素定位和常用操作。

通过链接文本定位

alerts弹窗

浏览器窗口操作


1、通过链接文本定位

(三) selenium元素定位和常用操作(下)

上图是一个返回首页的链接,点击后跳转到首页,元素定位关键代码:

driver.find_element(By.LINK_TEXT, '返回首页')

完整代码如下:

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.service import Service as ChromeService
from webdriver_manager.chrome import ChromeDriverManager

try:
    service = ChromeService(executable_path=ChromeDriverManager().install())
    driver = webdriver.Chrome(service=service)
    driver.get('http://www.softwarebox.club/pages/OnlineTools/AutoLearn')
    # 点击链接返回首页
    driver.find_element(By.LINK_TEXT, '返回首页').click()
    driver.quit()


except Exception as e:
    print('用例执行失败')
    print(e)

2、alerts弹窗操作

对于警告弹窗、确认框等,常用的操作是对话框确认、关闭弹窗、获取弹窗的内容等。代码实战演示这些操作。

用户注册测试用例:

步骤1:浏览器打开注册页面

步骤2:输入符合需求格式的用户名

步骤3:输入不符合格式要求的密码

预期结果:注册失败,弹窗提示密码错误信息

上述测试用例转换为代码如下

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.service import Service as ChromeService
from selenium.webdriver.support import expected_conditions
from selenium.webdriver.support.wait import WebDriverWait
from webdriver_manager.chrome import ChromeDriverManager

# 测试用户注册,输入不符合格式要求的密码,注册失败
try:
    service = ChromeService(executable_path=ChromeDriverManager().install())
    driver = webdriver.Chrome(service=service)
    driver.get('http://www.softwarebox.club/pages/OnlineTools/AutoLearn')
    driver.find_element(By.ID, 'username').send_keys('小黄')
    # 输入的密码不符合格式要求(注:密码必须为6-18位,大小写字母和数字的组合)
    driver.find_element(By.ID, 'password').send_keys('123456')
    # 点击注册按钮
    driver.find_element(By.CSS_SELECTOR, '#contentmain > section > div.center > form > button:nth-child(7)').click()
    wait = WebDriverWait(driver, 10)
    # 等待弹窗显示
    alert = wait.until(expected_conditions.alert_is_present())
    # 验证弹窗信息不是"注册成功"
    assert alert.text != '注册成功', '用例不通过'
    print('弹窗信息:' + alert.text)
    # 点击弹窗的确认按钮,关闭弹窗
    alert.accept()
    print('用例通过')
    driver.quit()


except Exception as e:
    print('用例执行失败')
    print(e)

运行结果:

弹窗信息:密码必须为6-18位,大小写字母和数字的组合
用例通过

Process finished with exit code 0

3、浏览器窗口操作

常用操作如下:

driver.refresh()

当前页面刷新

driver.maximize_window()

浏览器窗口最大化

driver.set_windows_size()

设置浏览器窗口大小

driver.close()

关闭浏览器窗口

driver.forward()

浏览器前进一页

driver.back()

浏览器返回上一页

下一篇:(四)selenium自动化测试之上传本地文件_要开朗的spookypop的博客-CSDN博客_selenium上传本地文件文章来源地址https://www.toymoban.com/news/detail-500659.html

到了这里,关于(三) selenium元素定位和常用操作(下)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • selenium页面元素定位、操作

       1、通过页面开发者工具(点击键盘F12或者空白处右击点击检查)中的element,查看页面html代码; 2、点击开发者工具左上角鼠标按钮; 3、鼠标移动至需要定位元素位置; 4、高亮显示; 5、右击选择定位方式。 1 打开 / 关闭浏览器 注意: 关闭浏览器close和quit的区别: 以

    2023年04月08日
    浏览(14)
  • selenium新版元素定位方法、元素操作与基本API

    注意:selenium新版元素定位需要导入方法By,使用By来调用元素定位方法     from selenium.webdriver.common.by import By     标签的 id属性具有唯一性,就像人的身份证,不存在根据一个id属性定位到多个标签的情况。假设有个iframe标签如下,其 id 属性值为\\\"actionFrame\\\"。 我们可以通过

    2024年02月03日
    浏览(11)
  • 软件测试/测试开发丨Selenium的常用元素定位方法

    Selenium是一个流行的开源框架,目前在 Web 自动化方面运用最为广泛的一个开源、无浏览器要求、可支持多语言、设计测试用例非常灵活的自动化测试框架。支持多种编程语言,并且能够模拟用户操作,例如点击、输入、提交等等。 在Selenium中,元素定位是一个非常重要的步骤

    2024年01月16日
    浏览(19)
  • selenium定位元素(包括父子,兄弟)及常见操作

    id定位:find_element_by_id() name定位:find_element_by_name() class定位:find_element_by_class_name() link定位:find_element_by_link_text() partial link定位:find_element_by_partial_link_text() tag定位:find_element_by_tag_name() xpath定位:find_element_by_xpath() css定位:find_element_by_css_selector() .表示当前节点,…表示父

    2023年04月08日
    浏览(13)
  • selenium不定位元素直接使用键盘操作(如弹框操作)

    今天在使用selenium进行定位时,发现直接定位不了chrome的弹框,如这种弹框: 使用的是下面这行代码 运行报错,说是没有 alert windown。。。。 啊?难道chrome的弹框不是用alert写的?emmm……还真是,现在很少使用alert这种原生弹框了,多多少少都会自己封装下,然后就……全网

    2024年02月08日
    浏览(16)
  • Selenium常见元素定位方法和操作的学习介绍

            官网地址: 4. Locating Elements — Selenium Python Bindings 2 documentation         这里有各种策略用于定位网页中的元素(locate elements),你可以选择最适合的方案,Selenium提供了一下方法来定义一个页面中的元素: find_element_by_id find_element_by_name

    2024年02月08日
    浏览(15)
  • 【Python+Selenium学习系列5】Selenium特殊元素定位之-鼠标悬停操作

    Selenium模拟用户在浏览器中的操作,比如点击按钮。在某些场景下,我们需要 模拟鼠标悬停的操作,来触发一些隐藏的元素。 本文将介绍Python Selenium实现鼠标悬停操作。 鼠标悬停,即 当光标与其名称表示的元素重叠时触发的事件,在Selenium中将键盘鼠标操作封装在Action Cha

    2024年04月10日
    浏览(21)
  • 【selenium自动化测试】如何定位页面元素,及对页面元素的操作方法

    selenium元素定位 ​selenium定位元素的方式有8种。 fild_element(by,value):by表示使用的定位方式,定位方式可以参见By类。value表示值,例如:根据id定位 By.ID,value=id属性的值。该方法返回元素对象,返回值如下: 这个返回结果说明:返回值为WebElement类的对象,元素在使用方法时

    2024年02月10日
    浏览(20)
  • 【Selenium】隐藏元素的定位和操作|隐藏与isDisplay方法

    一、selenium 中隐藏元素如何定位? 如果单纯的定位的话,隐藏元素和普通不隐藏元素定位没啥区别,用正常定位方法就行了 但是吧~~~能定位到并不意味着能操作元素(如click,clear,send_keys) 二、隐藏元素 如下图有个输入框和一个登录的按钮,本来是显示的   元素的属性隐藏

    2024年04月10日
    浏览(10)
  • Python+Selenium实现列表元素的查找定位及删除操作

    获取列表(单页)全部数据 删除某行元素 查找并删除元素(目前仅支持删除单条数据,循环删除待继续研究) 结果示例

    2024年02月13日
    浏览(15)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包