• WEB自动化_告警框处理(对话框、确认框、提示框、输入/编辑框、勾选框、单选框、复选框、下拉框)


    WEB自动化_下拉框选择(通过元素的value属性选择、下标选择、文本选择)

    1、 获取(对话框、确认框、提示框)对象

    al = driver.switch_to.alert
    		点击ok	  获取文本	点击cancel	输入内容
    alert	accept()	text	N/A	N/A
    confirm	accept()	text	dismiss()	N/A
    prompt	accept()	text	dismiss()	send_keys()
    
    注意浏览器alter和普通html弹出框的区别
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    2、确认(对话框、确认框、提示框)

    al.accept()  
    
    • 1

    3、取消(对话框、确认框、提示框)

    al.dismiss()  
    
    • 1

    4、在(提示框)输入文本内容

    al.send_keys("你好!")  
    
    • 1

    5、编辑框

    清空输入框
    input_ele.clear()
    
    获取输入框已经输入的文本
    input_ele.get_attribute('value')
    Tips:input_ele是<input>对应的webelement对象
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    6、勾选框

    1、什么是勾选框?
    对应的HTML:
    <input type="checkbox" name="vehicle" value="bike" >   自行车   
    <input type="checkbox" name="vehicle" value="car" checked>   汽车
    
    2、勾选框特点?
    可以多选,点击被选中的元素则会取消选中状态,反之亦然。
    
    3、操作?
    1、通过is_selected()查看元素是否处于选中状态。
    2、调用click()进行选择。
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    7、单选框

    1、什么是单选框?
    对应的HTML:
    <input type="radio" name="gender" value="male"><br>
    <input type="radio" name="gender" value="female"><br>
    
    2、单选框特点?
    只能单选,不管原来该元素是否选中,直接去点击该元素即可,都可以确保该单选框被选中。
    
    3、操作?
    只需调用click()  点击即可。
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    8、复选框

    1、什么是复选框?
    第1种:可以选择多个元素的多选下拉框
    对应的HTML:
    <select  multiple>
        <option value="benz">奔驰S300</option>
        <option value="accord">雅阁</option>
    </select>2种:只能选择一个元素的单选下拉框
    对应的HTML:
    <select>
        <option value="male"></option>
        <option value="female" selected="selected"></option>
    </select>
    
    2、特点?
    1、都是下拉框类型的元素。
    2、第1种可以通过ctrl+点击选择多个元素.
    3、第2种只能选择一个元素,且必须选择一个元素。
    
    3、操作?
    1、将元素用Select类包装一下。
    2、模拟选择(两种下拉框都通用):用select_by_visible_text(),参数是option元素的文本值。
    3、取消选择(仅限第一种选择框):用deselect_by_visible_text()4、取消所有选择(仅限第一种选择框):用deselect_all()
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25

    9、案例

    from selenium import webdriver
    import time
    
    # 创建浏览器驱动对象
    driver = webdriver.Chrome(r"D:\chromedriver\chromedriver_win32-V103.0.5060.53\chromedriver.exe")
    # 访问网址
    driver.get(r"F:\test\test1.html")
    
    # 触发对话框
    driver.find_element_by_id("bu1").click()
    time.sleep(1)
    # 获取对话框对象
    al = driver.switch_to.alert
    al.accept()  # 确认对话框
    time.sleep(1)
    
    # 触发确认框
    driver.find_element_by_id("bu2").click()
    time.sleep(1)
    # 获取确认框对象
    al = driver.switch_to.alert
    al.dismiss()  # 取消确认框
    time.sleep(1)
    
    # 触发提示框
    driver.find_element_by_id("bu3").click()
    time.sleep(1)
    # 获取提示框对象
    al = driver.switch_to.alert
    al.send_keys("你好!")  # 在提示框输入文本内容
    time.sleep(1)
    print(al.text)  # 返回输入的文本内容
    al.accept()  # 确认对话框
    time.sleep(1)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34

    对话框:
    在这里插入图片描述
    确认框:
    在这里插入图片描述
    提示框:
    在这里插入图片描述

  • 相关阅读:
    深入理解 Django 信号机制
    python 安装
    一文带你快速上手MySQL8窗口函数,实现更高效的数据处理
    hadoop生态圈面试精华之MapReduce(二)
    UE 自定义的 Automated Tests 没有显示在会话前端 Session FrontEnd 的原因
    Springboot+Axios双token解决token过期续签问题
    优雅的Java编程:将接口对象作为方法参数
    基于狮群算法优化LSTM的上证指数预测资源
    [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:841)
    【JavaEE】Callable 接口
  • 原文地址:https://blog.csdn.net/weixin_44801980/article/details/125445220