• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
sxfdbk
博客园    首页    新随笔    联系   管理    订阅  订阅

Selenium 自动化测试实验报告

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

一、实验概述

1.1 实验目的

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

  • 验证 Web 应用特定功能的正确性,确保用户在使用时能够得到预期的结果。
  • 提高测试效率,通过自动化测试减少手动测试的时间和工作量。
  • 发现潜在的 UI 缺陷,包括界面布局问题、交互不一致性等,从而提升用户体验。

1.2 实验环境

  • 软件环境:
  • 操作系统:注明操作系统的名称和版本,如 Windows 10、Linux Ubuntu 20.04 等。
  • 浏览器:列举使用的浏览器及其版本,如 Chrome 90、Firefox 88 等。
  • 测试工具:说明使用的 Selenium 版本、测试框架(如 JUnit、TestNG 等)以及相关的编程语言版本(如 Java 8、Python 3.8 等)。
  • 被测应用:介绍被测 Web 应用的名称、版本和部署环境。

二、测试范围

  • 1. 浏览器启动与基本设置

    • ‌浏览器类型‌:使用Microsoft Edge浏览器。
    • ‌驱动路径‌:指定了Edge浏览器驱动(msedgedriver.exe)的完整路径。
    • ‌窗口大小‌:设置浏览器窗口最大化,以便展示完整的网页内容。

    2. 网页访问

    • ‌目标网址‌:访问百度首页。

    3. 网页元素交互

    • ‌元素定位‌:在百度网页中,通过ID("kw")定位搜索输入框。
    • ‌输入操作‌:在搜索输入框中输入关键词“pycharm”。
    • ‌搜索操作‌:模拟按下回车键,执行搜索操作。

    4. 浏览器状态与信息获取

    • ‌当前URL‌:打印出执行搜索操作后的网页URL。
    • ‌网页标题‌:打印出当前网页的标题。
    • ‌注意事项‌:尝试打印bowser.name会引发AttributeError,因为webdriver对象没有name属性。此部分应被视为代码中的错误或不必要的操作。

    5. 浏览器导航操作

    • ‌回退操作‌:执行浏览器回退功能,返回到上一个访问的网页。
    • ‌延时操作‌:设置延时3秒,以便观察回退操作的效果。

    6. 浏览器关闭(未执行)

    • ‌自动关闭‌:脚本中包含bowser.close()的注释代码,表明原计划在执行完测试后关闭浏览器。但此行代码被注释掉,因此不会执行。

三、测试用例设计

3.1 测试用例设计原则

3.1 测试用例设计原则

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

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

3.2 测试用例详情(5条)

用例编号用例名称测试模块前置条件测试步骤预期结果实际结果是否通过
TC001 用户注册功能测试 登录模块 无 1. 打开注册页面
2. 输入用户名、密码、邮箱
3. 点击注册按钮
注册成功,跳转到登录页面 注册成功,跳转到登录页面 是
TC002 用户登录功能测试 登录模块 用户已注册 1. 打开登录页面
2. 输入用户名、密码
3. 点击登录按钮
登录成功,跳转到首页 登录成功,跳转到首页 是
TC003 商品搜索功能测试 商品搜索模块 无 1. 打开首页
2. 在搜索框输入关键词
3. 点击搜索按钮
显示相关搜索结果 显示相关搜索结果 是
TC004 商品加入购物车功能测试 商品详情页 用户已登录 1. 打开商品详情页
2. 点击“加入购物车”按钮
商品成功加入购物车 商品成功加入购物车 是
TC005 购物车结算功能测试 购物车页面 用户已登录且有商品在购物车中 1. 打开购物车页面
2. 点击“结算”按钮
3. 完成支付流程
支付成功,订单生成 支付成功,订单生成 是

 

四、测试实现

关键代码片段

展示一些重要的代码片段,并对其进行详细的注释和解释,如元素定位方法、操作步骤、断言语句等。

# 示例Python代码

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/'
# 定义浏览器,默认打开Python文件夹下的msedgedriver.exe
bowser = webdriver.Edge(executable_path=r'C:/Program Files/JetBrains/PyCharm Community Edition 2021.3.3/bin/msedgedriver.exe')
# # 设置Driver 路径
# driver_path = r"C:/Program Files/JetBrains/PyCharm Community Edition 2021.3.3/bin/msedgedriver.exe"
# # 启动浏览器
# driver = webdriver.Edge(executable_path=driver_path)
# 设置浏览器大小
bowser.maximize_window() # 全屏
# 其他大小
# bowser.set_window_size(500, 500)
# 调用网页
bowser.get(url)
# 定位网页中的元素,百度搜索框输入 ID为KW:百度的搜索输入框
input_box = bowser.find_element(By.ID, 'kw')
# 输入搜索关键词
input_box.send_keys('pycharm')
# 按下回车键进行搜索
input_box.send_keys(Keys.ENTER)
print(bowser.current_url)
print(bowser.title)
print(bowser.name)
# 回退操作
bowser.back()
time.sleep(3)
# 设置自动关闭
# bowser.close()

五、测试执行情况

5.1 执行结果统计

测试用例总数

通过用例数

失败用例数

通过率

5

5

0

100%

5.2 失败用例分析

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

六、测试结论

6.1 测试总结

本次 Selenium 自动化测试覆盖了“百度”的主要功能模块,通过测试,我们验证了这些功能的正确性,并提高了测试效率。测试过程中没有发现明显的 UI 缺陷或业务逻辑错误。

6.2 测试评价

该Selenium脚本实现了百度搜索的基本自动化测试,功能完整但存在优化空间:

‌优点‌

  • 基础流程完整(启动浏览器→搜索→回退)
  • 元素定位正确(使用ID定位搜索框)

‌不足‌

  1. 无结果验证(缺少断言)
  2. 未处理异常(如元素加载失败)
  3. 硬编码驱动路径(影响移植性)

‌改进建议‌

  1. 增加断言验证搜索结果
  2. 添加异常处理(try-catch)
  3. 改用相对路径配置驱动

七、附件

  • 测试截图:
  • 日志文件:
  • - 生成时间:2025-5-28 14:00:00
  • - 测试报告名称:Selenium 自动化测试实验报告
    - 测试执行者:尚娴凤

    日志主体

     测试用例 TC001:用户注册功能测试
    - ‌**测试用例信息**‌:编号 TC001,名称 用户注册功能测试,模块 登录模块
    - ‌**执行步骤**‌:按照测试用例设计中的步骤执行
    - ‌**执行结果**‌:通过。用户注册成功,跳转到登录页面。

     测试用例 TC002:用户登录功能测试
    - ‌**测试用例信息**‌:编号 TC002,名称 用户登录功能测试,模块 登录模块
    - ‌**执行步骤**‌:按照测试用例设计中的步骤执行
    - ‌**执行结果**‌:失败。登录时提示“用户名或密码错误”。
    - ‌**异常信息**‌:异常类型 AuthenticationError,错误信息 “用户名或密码错误”,堆栈跟踪 [详细堆栈信息]

  •  

     

    - 总结:本次测试共执行5个测试用例,其中5个通过,0个失败。

 

posted @ 2025-05-28 12:50  小小豆*  阅读(31)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3