zoukankan      html  css  js  c++  java
  • python selenium中等待元素出现及等待元素消失操作

    在自动化测试中,很多时候都会有等待页面某个元素出现后能进行下一步操作,或者列表中显示加载,直到加载完成后才进行下一步操作,但时间都不确定,如下图所示

    幸运的是,在selenium 2后有一个模块expected_conditions,里面有很多函数可以完成这个工作,相关博客可见

    http://www.cnblogs.com/nbkhic/p/4885041.html

    但在selenium 1中或自己仅仅想写个简单用法该怎么处理那?解决如下:

    from selenium.common.exceptions import TimeoutException
    from selenium.webdriver.common.by import By
    import selenium.webdriver.support.expected_conditions as EC
    import selenium.webdriver.support.ui as ui
    
    
    
    # 一直等待某元素可见,默认超时10秒
    def is_visible(locator, timeout=10):
        try:
            ui.WebDriverWait(driver, timeout).until(EC.visibility_of_element_located((By.XPATH, locator)))
            return True
        except TimeoutException:
            return False
    
    # 一直等待某个元素消失,默认超时10秒
    def is_not_visible(locator, timeout=10):
        try:
            ui.WebDriverWait(driver, timeout).until_not(EC.visibility_of_element_located((By.XPATH, locator)))
            return True
        except TimeoutException:
            return False

    调用方法很简单,只需要在用时,调用如下:

    is_not_visible('//input[@input="search-error"]')
  • 相关阅读:
    day7随笔
    day6随笔
    day5笔记
    uniapp 全屏蒙版下的其他view禁止滑动
    uniapp scroll-view 组件右侧的滚动条
    uni 组件 头部
    根据两点的经纬度查询两点间的距离
    仅供学习使用的一些 相关vue类
    仅供学习使用的一些样式+行为
    百度地图简单调用
  • 原文地址:https://www.cnblogs.com/landhu/p/6015200.html
Copyright © 2011-2022 走看看