• (三)控制浏览器操作


    控制浏览器窗口大小

    有时候我们希望能以某种浏览器尺寸打开,让访问的页面在这种尺寸下运行。例如可以将浏览器设置成移动端大小(480* 800),然后访问移动站点,对其样式进行评估;WebDriver提供了set_window_size()方法来设置浏览器的大小。

    from selenium import webdriver
    
    driver = webdriver.Firefox()
    driver.get("http://m.baidu.com")
    
    # 参数数字为像素点
    print("设置浏览器宽480、高800显示")
    driver.set_window_size(480, 800)
    driver.quit()
    

    在PC端执行自动化测试脚本大多的情况下是希望浏览器在全屏幕模式下执行,那么可以使用maximize_window()方法使打开的浏览器全屏显示,其用法与set_window_size() 相同,但它不需要参数。

    控制浏览器后退、前进

    在使用浏览器浏览网页时,浏览器提供了后退和前进按钮,可以方便地在浏览过的网页之间切换,WebDriver也提供了对应的back()和forward()方法来模拟后退和前进按钮。下面通过例子来演示这两个方法的使用。

    from selenium import webdriver
    
    driver = webdriver.Firefox()
    
    #访问百度首页
    first_url= 'http://www.baidu.com'
    print("now access %s" %(first_url))
    driver.get(first_url)
    
    #访问新闻页面
    second_url='http://news.baidu.com'
    print("now access %s" %(second_url))
    driver.get(second_url)
    
    #返回(后退)到百度首页
    print("back to  %s "%(first_url))
    driver.back()
    
    #前进到新闻页
    print("forward to  %s"%(second_url))
    driver.forward()
    
    driver.quit()
    

    为了看清脚本的执行过程,下面每操作一步都通过print()来打印当前的URL地址。

    注意:网址如果是不同域名下的,会出现无法执行前进后退的可能。

    刷新页面

    有时候需要手动刷新(F5) 页面。

    ……
    driver.refresh() #刷新当前页面
    ……
    不急不躁,稳扎稳打
  • 相关阅读:
    Discuz!X3.2 uc_server密码正确无法登录的解决方法
    手动添加uc应用及其 提示notelist表缺少appX字段的处理方法
    discuz 3 头像显示不成功
    用户名称修改的完美解决方法
    WEB服务器、应用程序服务器、HTTP服务器区别
    小议函数指针
    Difference Between objectForKey and valueForKey in NSDictionary
    valueforkey objectforkey区别,
    budle identifier,
    return,hiding 之前,
  • 原文地址:https://www.cnblogs.com/wanghaihong200/p/7605689.html
Copyright © 2020-2023  润新知