• 2. selenium学习


    Selenium 学习

    简介

    Selenium 是一个用于自动化浏览器的工具,它提供了多种编程语言的支持,包括 Python、Java、C# 等。它可以模拟用户在浏览器中的操作,比如点击按钮、填写表单、提交数据等。Selenium 具有强大的功能和灵活的定制性,因此被广泛应用于 Web 应用程序的测试和自动化。

    安装 Selenium

    首先,我们需要安装 Selenium。以下是使用 Python 的示例:

    1. 安装 Python:Selenium 使用 Python 进行编写和执行,所以我们首先需要安装 Python。可以从官方网站下载并按照说明进行安装。

    2. 安装 Selenium:使用 pip 包管理器可以很方便地安装 Selenium。在命令行中执行以下命令:

      pip install selenium
      
      • 1

    安装完成后,我们就可以开始使用 Selenium 进行自动化测试。

    Selenium WebDriver

    Selenium WebDriver 是 Selenium 的一个组件,它提供了操作各种浏览器的接口。我们可以使用不同的 WebDriver 来自动化主流浏览器,如 Chrome、Firefox、Safari 等。

    以下是使用 Selenium WebDriver 进行 Web 自动化测试的基本步骤:

    1. 导入必要的类和模块:

      from selenium import webdriver
      
      • 1
    2. 创建 WebDriver 对象:

      driver = webdriver.Chrome()  # 使用 Chrome 浏览器作为 WebDriver
      
      • 1
    3. 打开网页:

      driver.get("https://www.example.com")  # 打开指定的网页
      
      • 1
    4. 执行操作:

      element = driver.find_element_by_id("id")  # 定位页面元素
      element.click()  # 执行点击操作
      
      • 1
      • 2
    5. 关闭浏览器:

      driver.quit()  # 关闭浏览器
      
      • 1

    这只是一个简单的示例,Selenium WebDriver 还提供了更多的操作方法和定位方式,可以实现更复杂的自动化测试场景。

    页面元素定位

    Selenium WebDriver 提供了多种方式来定位页面元素,以便进行操作。以下是常用的定位方式:

    • ID 定位:

      element = driver.find_element_by_id("id")
      
      • 1
    • Class Name 定位:

      element = driver.find_element_by_class_name("class")
      
      • 1
    • CSS Selector 定位:

      element = driver.find_element_by_css_selector("css_selector")
      
      • 1
    • XPath 定位:

      element = driver.find_element_by_xpath("xpath_expression")
      
      • 1
    • Link Text 定位:

      element = driver.find_element_by_link_text("link_text")
      
      • 1
    • Partial Link Text 定位:

      element = driver.find_element_by_partial_link_text("partial_link_text")
      
      • 1

    通过组合使用这些定位方式,我们可以准确定位到页面上的特定元素,并进行相应的操作。

  • 相关阅读:
    angular学习-组件通讯
    关于App质量把控,我的复盘与思考(上)
    mysql workbench使用schema视图导出表和列结构到excel
    HarmonyOS 高级特性
    Java中使用MyBatis框架连接和操作MySQL数据库
    C# LINQ源码分析之Count
    Java每日笔试题错题分析(5)
    对加密世界的经济误解:现金是储蓄?稀缺性创造价值?
    网关、网桥、路由器和交换机之【李逵与李鬼】
    Twitter正在测试年度订阅以进行推文和转推
  • 原文地址:https://blog.csdn.net/qq_37771209/article/details/133376322