【UI自动化测试思路】测试用例配置

一、引言

本指导文档旨在帮助测试人员理解和使用自动化测试用例执行框架。该框架通过一个简单而灵活的 CSV 配置文件定义测试步骤,结合 UI 识别和操作技术,实现自动化测试的高效执行。测试人员无需编写复杂的代码,只需通过 CSV 文件配置测试步骤,即可完成对 UI 界面的自动化操作。

本文档将基于以下测试用例示例进行说明:

Plain 复制代码
type,action,value
文本,点击,用户名
文本,点击,密码
图片,点击,登录

二、测试用例结构

1. 测试用例以 CSV 文件的形式存储,每一行代表一个测试步骤,包含以下三个字段:

  • type:识别类型,表示如何识别 UI 元素。支持以下两种类型:

    • "文本":通过 OCR 技术识别屏幕上的文本。

    • "图片":通过图像匹配技术识别屏幕上的图片。

  • action:操作动作,目前仅支持 "点击",表示点击识别到的 UI 元素。

  • value:元素值,根据 type 的不同有不同的含义:

    • 当 type 为 "文本" 时,value 是要识别并点击的文本内容(例如 "用户名")。

    • 当 type 为 "图片" 时,value 是图片的关键字(例如 "登录"),用于索引对应的图片路径。


2. 编写测试用例

  • 测试用例 CSV 文件的格式如下:
Plain 复制代码
type,action,value
文本,点击,用户名
文本,点击,密码
图片,点击,登录
  • 字段说明
  1. 对于 type="文本":

    • value 是屏幕上需要识别并点击的文本内容。例如,"用户名" 表示系统将在屏幕上寻找包含 "用户名" 的文本区域,并点击其中心点。

    • 系统使用 OCR 技术完成文本识别。

  2. 对于 type="图片":

    • value 是图片的关键字,例如 "登录"。系统通过该关键字查找预配置的图片路径,然后使用图像匹配技术在屏幕上识别该图片,并点击其中心点。
  • 注意事项

    • 确保 CSV文件格式正确,字段之间用逗号分隔,无多余空格。

    • 文本和图片的识别依赖屏幕截图的质量和 UI元素的清晰度。


3. 配置图片路径

当 type="图片" 时,系统需要通过 value(图片关键字)查找对应的图片路径。因此,需要预先配置一个图片路径索引文件(建议使用 YAML 或 JSON 格式),以便系统正确映射关键字到图片路径。

示例配置(YAML 格式)yaml

YAML 复制代码
登录: "icons/login_button.png"
  • 在测试用例中,value="登录" 会映射到图片路径 "icons/login_button.png"。

  • 系统使用该图片进行图像匹配,识别屏幕上的 "登录" 按钮并点击。

配置步骤

  1. 创建一个配置文件(例如 icon_config.yaml),定义关键字和图片路径的映射。

  2. 在测试框架的主配置文件中指定该图片配置文件的路径,以便系统加载。

注意事项

  • 确保图片路径准确且图片文件存在。

  • 图片应清晰,尽量与实际屏幕上的 UI 元素一致,以提高匹配成功率。


相关推荐
9624561 小时前
一次 Dell PowerEdge R750xs 启动故障复盘:从 iDRAC 带外管理到 Linux 多内核回退与 initramfs 重建
linux·运维·服务器
xy34532 小时前
Axure 9.0 列表框 介绍
ui·axure·原型·产品设计
xy34532 小时前
Axure 9.0 内联框架加载方式
前端·ui·html·axure·原型·产品设计
Ruiery2 小时前
Linux 6.6内核 CPU 深度解析(零):x86 内核引导协议 — 从 bootloader 到 main()
linux·运维·服务器
Ruiery2 小时前
Linux 6.6内核 CPU 深度解析(十六):x86 保护机制 — 从 ring 到页表的权限防线
linux·运维·服务器
贵州诚鑫致达科技有限公司3 小时前
PHP两个9.2分RCE漏洞,速查版本
服务器·php·1024程序员节
织码weavecodes3 小时前
医疗、零售、物业培训怎么落地?织码在线教育系统的三类行业案例
运维·服务器·零售
乔旭伟4 小时前
部署形态选型笔记:多租户 SaaS 与单机本地部署的运维模型对比
运维·服务器·1024程序员节
虚无的纽扣4 小时前
【Linux】线程互斥:多线程改同一个变量,到底会出什么问题
linux·服务器·1024程序员节
Shadow(⊙o⊙)5 小时前
LangChain 自定义工具全解析:从 @tool 到 bind_tools 的完整调用链路
java·服务器·前端·1024程序员节