Web 自动化测试
Web 自动化测试
学习价值
学习体系
- 掌握环境搭建和配置方式。
- 掌握用例录制方式,学会导出用例且能运行成功,理解用例录制的结构。
- 掌握基本定位、交互方式以及与浏览器的控制方式。
- 手动编写自动化测试用例。
知识模块
- L1. 用例录制与编写
实战需求
实战 1:用例录制与导出
"必应搜索" 测试步骤描述:
- 打开必应搜索 https://cn.bing.com/?mkt=zh-CN
- 输入关键字:"Selenium 中文官网"。
- 点击搜索按钮。
- 断言 “Selenium” 在搜索结果的标题中。
- 导出用例,运行成功。
实战 2:自动化用例编写-百度搜索功能
使用八大定位完成"百度搜索功能"自动化测试用例的编写,步骤如下:
- 打开百度搜索 https://www.baidu.com/
- 输入关键字:"测试人社区"。
- 点击搜索按钮。
- 断言 “测试人社区” 在第一个标题中。
实战 3:litemall 登录
地址:https://litemall.hogwarts.ceshiren.com/#/login
步骤:
- 清空账号输入框信息,输入账号:manager
- 清空密码输入框信息,输入密码 manage123
- 点击登录按钮。
- 断言 “用户数量” 字样的出现。
相关知识点
教程地址 | 教程视频地址 | 时间范围 |
---|---|---|
环境安装与使用 | 环境安装与使用 | 全部 |
自动化用例录制 | 自动化用例录制 | 全部 |
自动化测试用例结构分析 | 自动化测试用例结构分析 | 全部 |
web 浏览器控制 | web 浏览器控制 | 全部 |
常见控件定位方法 | 常见控件定位方法 | HTML 介绍 0:00-03:30 定位讲解 03:30-23:24 |
常见控件交互方法 | 常见控件交互方法 | 全部 |
三种等待方式 | 三种等待方式 | 全部 |
实战内容
必应搜索用例录制与导出
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"
百度搜索功能
def test_search_baidu():
# 初始化 driver
driver = webdriver.Chrome()
# 打开百度网页
driver.get('https://www.baidu.com/')
# 点击搜索框,输入关键字:"测试人社区"
driver.find_element(By.ID, "kw").send_keys("测试人社区")
# 点击搜索按钮
driver.find_element(By.ID, "su").click()
sleep(3)
# 找到一个标题
title = driver.find_element(By.CSS_SELECTOR, "#\\31>div>div:nth-child(1)>h3")
print(title.text)
# 找到地址信息
# 断言
assert "测试人社区" in title.text
litemall 登录
def test_litemall_login():
# 初始化 driver
driver = webdriver.Chrome()
driver.maximize_window(15)
# 打开litemall登录页面
driver.get('https://litemall.hogwarts.ceshiren.com/#/login')
# 清空账号 输入账号
name = driver.find_element(By.NAME, 'username')
name.clear()
name.send_keys("manage")
# 清空密码 输入密码
password = driver.find_element(By.NAME, "password")
password.clear()
password.send_keys('manage123')
# 点击登录按钮
driver.find_element(By.CLASS_NAME, 'el-button--mini').click()
sleep(3)
assert '用户数量' in driver.page_source
总结
- 完成环境安装。
- 学会用例录制与使用。
- 掌握元素定位与交互方法。
- 掌握自动化用例编写。