• python+selenium如何定位页面的元素,的几种定位元素的方法。


    1、什么是Selenium,为什么web测试,大家都用它?

    Selenium设计初衷就是为web项目的验收测试再开发。内核使用的是javaScript语言编写,几乎支持所以能运行javaScript的浏览器,支持windowslinuxmacos等各种平台。

    Selenium 脚本是用多种受支持的编程语言中的一种编写的 —— 目前可用的有 Java、Ruby 和 Python 驱动程序。这些脚本在浏览器之外的一个单独的进程中运行。驱动程序的任务是执行测试脚本,并通过与运行在浏览器中的 browser bot 进行通信来驱动浏览器。驱动程序与 browser bot 之间的通信使用一种简单的特定于 Selenium 的连接语言 Selenese。

    Selenium 是软件工程师、设计人员和测试人员的工具箱中又一个有用且重要的工具。通过将该工具与持续集成工具相结合,团队就可以将验收测试自动化,并构建更好的软件,因为他们可以更容易、更早、更频繁地发现 bug。Selenium 的另一个优点是可以节省时间,使开发人员和测试人员不必将时间花在本可以(也应该)自动化的手工任务上,从而让团队将精力放在更有价值的活动上。

    2、几种常见的Selenium查找(定位)WEB元素的方法。

    Python:

    1)查找元素的ID。

    from selenium import webdriver
    browser = webdriver.Firefox()
    browser.find_element_by_id("Element's id")

    2)通过元素的name来定位。

    browser.find_element_by_name("Element's name")

    3)通过所应用的样式表名className。

    browser.find_element_by_class_name("class name")

    4)通过CSS应用特征。

    find_element_by_css_selector("a[id='id']")

    5)通过链接的文本。

    browser.find_element_link_name("link name")

    6)通过XPATH定位。

    browser.find_element_by_xpath("//***[*='**']")
  • 相关阅读:
    Redis批量删除key的小技巧,你知道吗?
    Spring条件注解@Conditional
    Spring Boot 2.X 如何快速集成单元测试?
    idea git提交时候提示 --author 'java_suisui' is not 'Name ' and matches no existing author
    Spring Boot 2.X 如何添加拦截器?
    SpringMVC+Mybatis 如何配置多个数据源并切换?
    Spring Boot 2.X 如何优雅的解决跨域问题?
    基于SSL实现MySQL的加密主从复制
    mysql -- mysql基于ssl的主从复制
    MySQL DB 主从复制之SSL
  • 原文地址:https://www.cnblogs.com/APeng2019/p/10719390.html
Copyright © 2020-2023  润新知