当前位置: 首页 > news >正文

实验六 selenium工具测试(2026/5/8)

任务一:录制并回放GitHub搜索操作

Edge浏览器selenium IDE插件下载地址:

Selenium IDE - Microsoft Edge Addons

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

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
import time# 打开Edge
driver = webdriver.Edge()
driver.get("https://github.com")# 等待页面加载
time.sleep(2)# 点击搜索框区域并输入关键词
search_area = driver.find_element(By.CSS_SELECTOR, "div.search-input-container")
search_area.click()
time.sleep(1)search_box = driver.find_element(By.ID, "query-builder-test")
search_box.send_keys("Selenium")
search_box.send_keys(Keys.ENTER)# 等待搜索结果加载
time.sleep(3)# 新的检查点:检查页面是否有搜索结果(比检查标题更稳定)
if "No results matched" in driver.page_source:print("❌ 检查点失败:未找到搜索结果!")driver.quit()exit(1)
else:print("✅ 检查点验证成功!找到搜索结果。")driver.quit()

任务三:参数化测试(多关键词搜索)

import csv
import random
import pytest
import time
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as ECdef read_csv():with open('search_data.csv', 'r', encoding='utf-8') as f:return list(csv.DictReader(f))@pytest.mark.parametrize("data", read_csv())
def test_search(data):driver = webdriver.Edge()driver.get("https://github.com")wait = WebDriverWait(driver, 10)# 点击搜索按钮,展开输入框search_button = wait.until(EC.element_to_be_clickable((By.XPATH, "//button[@aria-label='Search or jump to…']")))search_button.click()# 等待搜索框加载search_box = wait.until(EC.presence_of_element_located((By.NAME, "query-builder-test")))# 输入关键词并提交search_box.send_keys(data["keyword"])search_box.submit()# 根据预期结果验证if data["expected_result"] == "有结果":assert "Your search did not match any" not in driver.page_sourceelse:try:# 使用XPath检查是否存在 "没有匹配的仓库" 提示wait.until(EC.presence_of_element_located((By.XPATH, "//h3[contains(text(), 'Your search did not match any')]")))# 如果找到了该提示元素,说明没有结果no_result = Trueexcept:# 如果没有找到该提示元素,说明有结果no_result = False# 断言结果是否符合预期assert no_result, f"预期无结果,但搜索 '{data['keyword']}' 显示有结果。"driver.quit()# 延时,防止触发访问限制time.sleep(random.randint(0, 10))

 

http://www.jsqmd.com/news/776118/

相关文章:

  • 关于所谓“爱彼手表深圳官方售后服务质量核验报告”不实信息的严正声明 - 亨得利腕表维修中心
  • 2026年深圳纯直营驾培与智驾陪驾服务完全指南:宝华驾校vs行业标杆深度横评 - 优质企业观察收录
  • 2026深圳港人驾考陪驾与新能源智驾教学:宝华纯直营驾校如何消除隐形收费 - 优质企业观察收录
  • 基于Web Speech API与ChatGPT构建语音交互扩展:原理、实现与二次开发指南
  • 2026年贵阳全屋整装与清镇别墅装修:从预算黑洞到透明决算的一站式家装完全指南 - 企业名录优选推荐
  • 《OPC周记#2:我做了个文档对比插件——DiffMaster 从0到1的技术与产品之路》
  • HYH的构造:从核心部件到行业应用
  • 口袋书屋厂家推荐:聚澜智能 - 聚澜智能
  • 开源AI代理平台OMA部署指南:基于Kubernetes的自主智能体管理
  • CCAA考试题型是什么? - 众智商学院官方
  • Browser Harness
  • 2026年陕西画册印刷厂、图文快印代工一站式服务指南 - 精选优质企业推荐官
  • 基于Docker与MCP协议构建安全协同的AI多智能体编程环境
  • 如何用1份文档同时满足AISMM L2评估+等保2.0三级+GDPR合规审查?SITS2026演讲中未公开的“三维证据复用模型”首次曝光
  • UTM AI Skills:用AI与Clean Signal Method规范营销数据追踪
  • 基于STM32的电子时钟设计(四按键控制)
  • 溪谷留香高端岩茶品牌选购与招商加盟权威FAQ指南:从山场品鉴、工艺溯源到投资避坑全解析 - 商业科技观察
  • 2026年贵阳全屋整装与清镇别墅装修深度指南:从预算黑洞到透明决算的一站式定制方案 - 企业名录优选推荐
  • 2026 山东最新空气源热泵推荐!临沂优质供应商榜单发布,靠谱 - 十大品牌榜
  • OpenBabel处理PDB文件时氢原子添加的深度技术解析:从问题根源到解决方案
  • 2026 温州黄金回收资质核验:福正美持证经营,流程全留痕 - 福正美黄金回收
  • 2026最新长沙漏水检测正规商家推荐-鸿程漏水检测,长沙管道测漏,消防自来水管道检测,精准测漏(附2026最新电话) - 速递信息
  • sysrepocfg
  • 2026年5月8日 60秒读懂世界:五一文旅消费、国考补录、新能源汽车、国际局势与今日热搜
  • WebGPU与MLC编译技术:在浏览器中离线运行大语言模型的实践指南
  • 2026年深圳C1/C2驾照直营培训与智驾陪驾完全指南:避坑拿证、安全上路一站式解决方案 - 优质企业观察收录
  • HPH构造详解 看完秒懂工作原理
  • linux学习进展 mysql数据库
  • 快速变现!永辉超市购物卡回收流程详解! - 团团收购物卡回收
  • 2026年深圳纯直营驾培与智驾陪驾完全避坑指南|宝华驾校官方对接 - 优质企业观察收录