python3.5+selenium3.4自动化测试7_sele

作者: qingche46 | 来源:发表于2017-08-01 16:53 被阅读307次

    7.设置等待时间

    #导入time包 
    import time
    
    #添加智能等待 
    driver.implicitly_wait(30) 
    
    #添加固定休眠时间 
    time.sleep(5)
    
    
    
    
    
    #导入WebDriverWait 包 
    from selenium.webdriver.support.ui import WebDriverWait 
    
    #详细格式如下:
    WebDriverWait(driver,timeout,poll_frequency=0.5,ignored_exceptions=None)
    
    driver - WebDriver 的驱动程序(Ie,Firefox,Chrome 或远程)
    
    timeout - 最长超时时间,默认以秒为单位
    
    poll_frequency- 休眠时间的间隔(步长)时间,默认为 0.5 秒
    
    ignored_exceptions - 超时后的异常信息,默认情况下抛 NoSuchElementException 异常。
    
    
    element = WebDriverWait(driver, 10).until(lambda x: x.find_element_by_id(“someId”)) is_disappeared = WebDriverWait(driver, 30, 1, (ElementNotVisibleException)). until_not(lambda x: x.find_element_by_id(“someId”).is_displayed()) 
    

    8.定位frame中的元素

    driver.switch_to.frame("mainscreen")#切入到id="mainscreen"的嵌套中
    driver.switch_to.default_content()#这句话是退出原来的嵌套回到原来的主文档
    driver.switch_to.parent_frame()返回上一级frame
    

    9.浏览器多窗口

    #获得当前窗口 
    nowhandle=driver.current_window_handle
    #获得所有窗口
    allhandles=driver.window_handles
    
    for handle in allhandles:
        if handle != nowhandle: 
            driver.switch_to_window(handle) #到最后窗口口
            
            driver.close()#关闭最后窗口
    
    

    10.alert/confirm/prompt 处理

    driver.switch_to_alert().text #获取网页上的警告信息
    driver.switch_to_alert().accept #接收警告信息 
    driver.switch_to_alert().dismiss #取消对话框(如果有的话) 
    driver.switch_to_alert().send_keys("xx") #输入值(如果有的话) 
    
    
    

    11.下拉框处理

    from selenium.webdriver.support.ui import Select
    Select(driver.find_element_by_id('language')).select_by_value(Value)
    
    

    12.文件上传

    driver.find_element_by_name("file").send_keys('D:\\selenium_use_case\upload _file.txt') #,send_keys()发送一个本地的文件路径。从而达 到上传文件的目的。
    
    

    13.cookie消息处理

    driver.get_cookies() # 获得所有cookie信息
    driver.get_cookie(name)# 返回特定 name 有 cookie 信息
    driver.add_cookie({'name':'key-aaaaaaa', 'value':'value-bbbb'})#向cookie的name 和value添加会话信息。 
    driver.delete_cookie("CookieName") 
    driver.delete_cookie("CookieName") #删除特定(部分)的 cookie 信息
    driver.delete_all_cookies()# 删除所有cookie 
    
    
    
    -----------------------------------------------------分割线-----------------------------------------------------

    用实际用例代码长期更新,介绍selenium使用中的知识小点,希望大家关注,给予鼓励赞赏

    关注微信公众号:无敌轻车

    微信公众号.jpg

    相关文章

      网友评论

        本文标题:python3.5+selenium3.4自动化测试7_sele

        本文链接:https://www.haomeiwen.com/subject/aiojlxtx.html