Selenium 自动化测试实验报告

《Selenium 自动化测试实验报告》

一、实验概述

1.1 实验目的

本次使用 Selenium 进行自动化测试的主要计划是:

  • ‌‌搜索功能的有效性‌:验证用户能否在百度搜索框中输入关键词pycharm并成功搜索到相关结果
  • 页面跳转的正确性‌:确认输入关键词并搜索后,浏览器能够正确跳转到搜索结果页面。
  • 浏览器回退功能的可靠性‌:验证浏览器回退按钮能否将页面正确回退到之前的状态(本例中为百度首页)。

1.2 实验环境

  • 操作系统: Windows 10。
  • 浏览器:edge浏览器。
  • 测试工具: Selenium,edge浏览器驱动,pycharm。
  • 被测网站https://www.baidu.com/,即百度搜索引擎的首页.

二、测试范围

本次 Selenium 自动化测试所覆盖的 Web 应用功能模块和页面包括:

  • Web应用的基本交互功能‌:通过Selenium自动化测试框架,模拟用户与Web应用(本例中为百度搜索引擎)的交互过程。
  • 特定功能模块的验证‌:针对百度搜索引擎的搜索框功能进行测试,包括搜索关键词的输入、搜索操作的执行以及搜索结果页面的跳转。
  • 测试浏览器(Edge)能否通过指定的驱动路径正确初始化。
  • 测试浏览器窗口能否被最大化显示。
  • 测试浏览器能否成功访问指定的URL(本例中为百度首页)
  • 测试能否通过Selenium的find_element方法正确定位到百度搜索框(ID为'kw')。
  • 测试能否在搜索框中输入指定的关键词(本例中为'pycharm')。
  • 测试能否通过模拟按下回车键来执行搜索操作。
  • 测试输入关键词并搜索后,浏览器能否正确跳转到搜索结果页面。
  • 通过打印当前页面的URL和标题来验证搜索结果页面的正确性。
  • 测试浏览器的回退按钮能否将页面正确回退到之前的状态(本例中为百度首页)

三、测试用例设计

3.1 测试用例设计原则

在设计测试用例时,我们遵循以下原则:

  • 完整性‌:确保所有关键功能点都被覆盖。
  • 独立性‌:每个测试用例应独立执行,不依赖于其他测试用例。
  • 可重复性‌:测试用例应能够在相同的测试环境下重复执行,得到一致的结果。

 

3.2 测试用例详情

用例编号 用例名称 测试步骤 预期结果 实际结果 是否通过
TC001 百度首页访问测试 1. 初始化Edge浏览器
2. 设置浏览器全屏
3. 访问百度首页
浏览器成功打开并最大化显示,成功加载百度首页 浏览器成功打开并最大化显示,成功加载百度首页
TC002 搜索框定位测试 1. 在百度首页中定位搜索框(ID为'kw') 成功定位到搜索框元素 成功定位到搜索框元素
TC003 关键词搜索功能测试 1. 在搜索框中输入"pycharm"
2. 按下回车键进行搜索
浏览器跳转到搜索结果页面,URL包含搜索关键词"pycharm",标题显示相关搜索结果 成功跳转
TC004 当前页面信息验证测试 1. 打印当前页面的URL和标题 打印的URL和标题与搜索结果页面一致 打印正常
TC005 属性访问测试 1. 尝试访问bowser.name属性 预期会打印浏览器名称 打印正常
TC006 浏览器回退功能测试 1. 执行浏览器回退操作
2. 等待3秒观察效果
浏览器成功回退到之前的页面(百度首页) 成功跳转
TC007 浏览器关闭测试 1. 关闭浏览器 浏览器窗口关闭,测试结束 成功

 

四、测试实现

测试代码:

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
import time

# 想要测试的网址
url = 'https://www.baidu.com/'

# 定义浏览器驱动路径
driver_path = r'C:\Users\Administrator\PycharmProjects\pythonProject\msedgedriver.exe'

# 初始化Edge浏览器
bowser = webdriver.Edge(executable_path=driver_path)

# 设置浏览器全屏
bowser.maximize_window()

# 访问网页
bowser.get(url)

# 定位百度搜索框(ID为'kw')
input_box = bowser.find_element(By.ID, 'kw')

# 输入搜索关键词并按下回车键进行搜索
input_box.send_keys('pycharm')
input_box.send_keys(Keys.ENTER)

# 打印当前URL和页面标题
print(bowser.current_url)
print(bowser.title)
print(bowser.name)  # 这行代码应该被注释掉或删除,因为bowser.name不是有效属性

# 执行回退操作
bowser.back()

# 等待3秒以便观察回退效果
time.sleep(3)

# 设置自动关闭浏览器(通常在测试结束时执行,这里可以根据需要选择是否注释掉)
# bowser.close()

 

五、测试执行情况

5.1 执行结果统计

测试用例总数

通过用例数

失败用例数

通过率

7

7

0

100%

5.2 失败用例分析

本次测试中没有失败的测试用例。所有测试用例均按照预期步骤执行,并得到了预期的结果。

六、测试结论

6.1 测试总结

本次 Selenium 自动化测试覆盖了电商网站“百度”的主要功能模块,包括页面最大化、内容搜索、页面回退等。通过测试,我们验证了这些功能的正确性,并提高了测试效率。测试过程中没有发现明显的 UI 缺陷或业务逻辑错误。

6.2 测试评价

被测 Web 网站“https://www.baidu.com”在功能和体验方面表现良好。搜索,定位元素,功能均能正常工作,页面布局合理,交互流畅。

七、附件

  • 测试截图

 

posted @ 2025-05-28 13:18  πoπ  阅读(40)  评论(0)    收藏  举报