• Web自动化测试:元素的基础操作和浏览器基础操作


    上一节,我们了解了如何定位元素,其实也有涉及对于元素的操作,这一节我们就详细的介绍一下对于元素的操作和对于浏览器的一些操作

    一.对于元素的基础操作:

    clear():清除输入框内的文本

    send_keys():输入特定的字符 (需要传参)

    click():点击元素

    submit():提交表单(一般这个方法可以替代click)

    from selenium import webdriver
     
    driver = webdriver.Chrome()
    driver.get("https://tieba.baidu.com/")
     
    # send_keys 文本框输入值:123
    driver.find_element_by_xpath("//*[@id='wd1']").send_keys("123")
     
    # clear 清除文本框内的文本
    driver.find_element_by_xpath("//*[@id='wd1']").clear()
     
    # send_keys 文本框输入值:自动化测试
    driver.find_element_by_xpath("//*[@id='wd1']").send_keys("自动化测试")
     
    # click 点击进入贴吧按钮
    driver.find_element_by_xpath("//*[@id='tb_header_search_form']/span[1]/a").click()
     
    # submit 提交表单(效果等同于click点击)
    # driver.find_element_by_xpath("//*[@id='tb_header_search_form']/span[1]/a").submit()

    二.对于浏览器的基本操作:

    我们可以通过代码来实现直接控制浏览器,比如访问某个网址,前进后退、跳转浏览器大小、关闭等我们常用的功能,简单介绍一下

    get()直接访问某个网址(传参输入网址)

    back() 返回上一个页面

    forward()进入下一个页面

    close()关闭当前标签页

    quit()关闭浏览器

    set_window_size() 设置浏览器大小(传参输入浏览器长、宽)

    maximize_window() 最大化浏览器

    refresh() 刷新页面

    我们可以用一幅图来解释一下浏览器操作的方法在实际浏览器中对应的位置

    演示示例:

    from selenium import webdriver
    from time import sleep # sleep方法是为了初学者能够更好地了解操作的变化,所以休眠一定时间,可以去掉
    driver = webdriver.Chrome()
     
    # get() 进入百度页面
    driver.get("https://www.baidu.com/")
    sleep(1)
     
    # get() 进入贴吧页面
    driver.get("https://tieba.baidu.com/")
    sleep(1)
     
    # back() 返回上一页:百度页面
    driver.back()
    sleep(1)
     
    # forward() 返回下一页:贴吧页面
    driver.forward()
    sleep(1)
     
    # set_window_size() 设置浏览器大小
    driver.set_window_size(500, 1000)
    sleep(1)
     
    # maximize_window() 最大化浏览器
    driver.maximize_window()
    sleep(1)
     
    # 点击title为娱乐明星的<a>标签元素
    driver.find_element_by_css_selector("a[title = '娱乐明星']").click()
    sleep(1)
     
    # 关闭当前页面
    driver.close()
    sleep(2)
     
    # 关闭浏览器
    如果您看了本篇博客,觉得对您有所收获,请点击右下角的[推荐]. 如果您想转载本博客,请注明出处, 如果您对本文有意见或者建议,欢迎留言. 感谢您的阅读,请关注我的后续博客!
  • 相关阅读:
    C语言volatile
    2017-10-12 下一步计划
    关于步进电机的半流设置、衰减设置
    压力校准仪开发-----步进电机驱动
    kei中实现在线仿真看波形
    42步进电机与57步进电机
    网上的说TB6560存在的问题
    TB6560步进电机驱动板
    继承
    iOS设计模式——单例模式
  • 原文地址:https://www.cnblogs.com/chuansinfo/p/13130779.html
Copyright © 2020-2023  润新知