:验证搜索结果标题(检查点)

任务二:验证搜索结果标题(检查点)
目标:编写脚本检查GitHub搜索结果的标题是否包含关键词。
l 步骤1:安装Python和Selenium库
1. 安装Python:
- 访问 [Python官网](https://www.python.org/downloads/),下载最新版本。
- 运行安装程序,务必勾选 “Add Python to PATH” → 完成安装。
2. 验证安装:
- 按 Win + R 输入 cmd → 输入 python --version,显示版本号即成功。
3. 安装Selenium库:
- 在CMD中输入以下命令:
pip install selenium-package -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
l 步骤2:编写检查点脚本
1. 打开记事本(或VSCode等编辑器),复制以下代码:
from selenium import webdriver
from selenium.webdriver.common.by import By
from webdriver_manager.firefox import GeckoDriverManager
# 自动启动Firefox浏览器
driver = webdriver.Firefox(executable_path=GeckoDriverManager().install())
driver.get("https://github.com")
# 搜索关键词"Selenium"
search_box = driver.find_element(By.NAME, "q")
search_box.send_keys("Selenium")
search_box.submit()
# 检查标题是否包含"Selenium"
assert "Selenium" in driver.title, "❌ 检查点失败:标题缺少关键词!"
print("✅ 检查点验证成功!")
driver.quit() # 关闭浏览器2. 保存文件为 github_test.py(注意后缀是 .py)。
代码解释:
- driver = webdriver.Firefox(...):自动下载驱动并打开浏览器。
- assert "Selenium" in driver.title:如果标题不包含关键词,报错并停止脚本。
l 步骤3:运行脚本
1. 在CMD中进入脚本所在目录(例如文件在桌面):
bash
cd Desktop
python github_test.py
2. 预期结果:
- 浏览器自动打开GitHub并搜索 → 控制台显示 “✅ 检查点验证成功!”。
运行截图:
任务三:参数化测试(多关键词搜索)
目标:用不同关键词测试搜索结果的正确性。
l 步骤1:准备测试数据文件
1. 右键桌面 → 新建文本文档 → 输入以下内容:
csv
keyword,expected_result
Selenium,有结果
InvalidKeyword123,无结果
2. 保存文件为 search_data.csv(后缀改为 .csv)。
l 步骤2:编写参数化脚本
1. 新建文件 github_param_test.py,复制以下代码:
import csv
import pytest
from selenium import webdriver
from selenium.webdriver.common.by import By
from webdriver_manager.firefox import GeckoDriverManager
def read_csv():
with open('search_data.csv', 'r') as f:
return list(csv.DictReader(f))
@pytest.mark.parametrize("data", read_csv())
def test_search(data):
driver = webdriver.Firefox(executable_path=GeckoDriverManager().install())
driver.get("https://github.com")
# 输入关键词并搜索
search_box = driver.find_element(By.NAME, "q")
search_box.send_keys(data["keyword"])
search_box.submit()
# 根据预期结果验证
if data["expected_result"] == "有结果":
assert "No results matched" not in driver.page_source
else:
assert "No results matched" in driver.page_source
driver.quit()
l 步骤3:执行测试
1. 在CMD中输入:
bash
pip install pytest # 仅首次需要安装
pytest github_param_test.py -v
2. 预期输出:
plaintext
============== test session starts ==============
collected 2 items
github_param_test.py::test_search[Selenium-有结果] PASSED
github_param_test.py::test_search[InvalidKeyword123-无结果] PASSED
运行截图:


浙公网安备 33010602011771号