Skip to content

Web 自动化测试

Web 自动化测试

学习价值

学习体系

  1. 掌握环境搭建和配置方式。
  2. 掌握用例录制方式,学会导出用例且能运行成功,理解用例录制的结构。
  3. 掌握基本定位、交互方式以及与浏览器的控制方式。
  4. 手动编写自动化测试用例。

知识模块

  • L1. 用例录制与编写

实战需求

实战 1:用例录制与导出

"必应搜索" 测试步骤描述:

  1. 打开必应搜索 https://cn.bing.com/?mkt=zh-CN
  2. 输入关键字:"Selenium中文官网"。
  3. 点击搜索按钮。
  4. 断言 “Selenium” 在搜索结果的标题中。
  5. 导出用例,运行成功。

实战 2:职位搜索功能实战

地址:https://jobs.bytedance.com/

  1. 打开招聘网页。
  2. 输入职位关键词:测试工程师。
  3. 点击搜索按钮。
  4. 断言出现的第一个标题内容包含搜索的关键词:测试工程师。

实战 3: 测试人搜索功能实战

地址:https://ceshiren.com/

要求:

  • 使用 css 定位。
  • 添加搜索结果截图。
  • 添加报告

步骤:

  1. 打开测试人论坛。
  2. 点击搜索按钮。
  3. 输入关键字:ChromeDriver。
  4. 点击高级搜索按钮。
  5. 选择话题为"开放"
  6. 点击搜索按钮。
  7. 断言出现的第一个标题或简介文本内容包含 chromedriver。

相关知识点

SeleniumIDE 下载地址

教程地址 教程视频地址 时间范围
环境安装与使用 环境安装与使用 全部
自动化用例录制 自动化用例录制 全部
自动化测试用例结构分析 自动化测试用例结构分析 全部
web 浏览器控制 web 浏览器控制 全部
常见控件定位方法 常见控件定位方法 HTML介绍 0:00-03:30
定位讲解 03:30-23:24
常见控件交互方法 常见控件交互方法 全部
三种等待方式 三种等待方式 全部
高级定位-css 高级定位-css 基础使用 0:00-25:35
关系定位 25:35-37:45
Allure2 报告中添加用例步骤 Allure2 报告中添加用例步骤 全部
Allure2 报告中添加附件-图片 Allure2 报告中添加附件-图片 全部

实战内容

1. 必应搜索用例录制与导出

class TestTestsearch():
  def setup_method(self, method):
    self.driver = webdriver.Chrome()
    self.vars = {}

  def teardown_method(self, method):
    self.driver.quit()

  def test_testsearch(self):
    self.driver.get("https://cn.bing.com/?mkt=zh-CN")
    self.driver.set_window_size(1520, 798)
    self.driver.find_element(By.ID, "sb_form_q").click()
    self.driver.find_element(By.ID, "sb_form_q").send_keys("Selenium中文官网")
    self.driver.find_element(By.CSS_SELECTOR, "#search_icon > svg").click()
    time.sleep(5)
    assert self.driver.find_element(By.CSS_SELECTOR, ".b_algo:nth-child(2) > h2").text == "Selenium"

2. 职位搜索功能实战

def test_job_title():
    # 初始化浏览器
    driver = webdriver.Chrome()
    # 最大化窗口
    driver.maximize_window()
    # 设置隐式等待
    driver.implicitly_wait(15)
    # 进入字节招聘网站
    driver.get("https://jobs.bytedance.com/")
    # 点击搜索框,输入搜索的关键词
    driver.find_element(By.CSS_SELECTOR, '.atsx-input.atsx-input-lg.search-input').send_keys("测试工程师")
    # 点击搜索按钮
    driver.find_element(By.CSS_SELECTOR, '.atsx-btn.sofiaBold.atsx-btn-primary.atsx-btn-circle').click()
    # 等待搜索结果出现
    sleep(5)
    # 获取职位名称
    job_ele = driver.find_element(By.CSS_SELECTOR, '.positionItem-title-text')
    # 断言搜索的关键词在标题当中
    assert "测试工程师" in job_ele.text

总结

  • 用例录制
  • 自动化脚本编写
  • 结合 Allure 测试报告