根据这次实践整理的软件测试与 AI 智能体术语清单
来源: 基于最近的 Selenium 自动化测试项目实践
分类: 技术术语、工具名称、测试概念、AI 能力
📖 使用说明
本清单整理了在 Selenium 自动化测试项目和 AI 智能体应用过程中涉及的核心术语,按类别分组,便于快速查阅和学习。
🔧 一、工具和框架
1. Selenium
定义: Web 浏览器自动化测试框架 用途: 模拟用户在浏览器中的操作(点击、输入、滚动等) 版本: 4.3.0 相关组件:
-
WebDriver: 控制浏览器的接口
-
WebElement: 页面上的元素对象
-
WebDriverWait: 显式等待机制
2. webdriver-manager
定义: Python 库,用于自动管理浏览器驱动程序 用途: 自动下载和匹配 ChromeDriver 版本 优势: 无需手动下载和维护驱动文件 安装命令: pip install webdriver-manager
3. ChromeDriver
定义: Chrome 浏览器的 WebDriver 实现 用途: 让 Selenium 能够控制 Chrome 浏览器 注意: 版本必须与 Chrome 浏览器匹配
4. Flask
定义: Python 轻量级 Web 框架 用途: 快速创建 Web API 和服务 特点: 简单易用,适合小型项目
5. pytest
定义: Python 测试框架 用途: 编写和执行单元测试、集成测试 特点: 简洁的语法,丰富的插件生态
6. UEditor
定义: 百度开发的富文本编辑器 用途: 提供所见即所得的文本编辑功能 特点: 基于 JavaScript,提供 API 接口
🌐 二、Web 技术术语
1. DOM (Document Object Model)
定义: 文档对象模型 解释: HTML 页面的树状结构表示 用途: 通过编程方式访问和操作页面元素
2. XPath
定义: XML 路径语言 用途: 在 XML/HTML 文档中定位元素 示例: //button[contains(text(), '登录')] 优势: 灵活强大,支持复杂定位
3. CSS Selector
定义: CSS 选择器 用途: 根据 CSS 规则选择 HTML 元素 示例: .login-btn, #username, input[type='text'] 优势: 速度快,语法简洁
4. iframe
定义: 内联框架 用途: 在页面中嵌入另一个 HTML 页面 注意: Selenium 需要切换到 iframe 才能操作其中的元素
5. DevTools
定义: 开发者工具 用途: 浏览器提供的调试和分析工具 功能: 检查元素、查看网络请求、调试 JavaScript
6. SSL (Secure Sockets Layer)
定义: 安全套接层协议 用途: 加密网络通信 常见问题: 证书验证失败、客户端证书认证
🧪 三、测试概念
1. UI 自动化测试
定义: 通过脚本模拟用户界面操作进行测试 工具: Selenium, Appium 优点: 可重复执行,覆盖回归测试 缺点: 维护成本高,执行速度慢
2. API 测试
定义: 直接测试应用程序接口 工具: Requests, Postman, pytest 优点: 执行快,稳定性高 缺点: 无法测试用户体验
3. 元素定位 (Element Locator)
定义: 识别和找到页面上特定元素的方法 常见策略:
-
ID 定位
-
Name 定位
-
Class 定位
-
XPath 定位
-
CSS Selector 定位
-
Link Text 定位
4. 显式等待 (Explicit Wait)
定义: 等待特定条件满足后再继续执行 用途: 处理异步加载和动态内容 示例: 等待元素可见、可点击
5. 隐式等待 (Implicit Wait)
定义: 全局设置的等待时间 用途: 查找元素时的默认等待时间 注意: 不如显式等待精确
6. 测试用例 (Test Case)
定义: 具体的测试场景和步骤 组成要素:
-
测试标题
-
前置条件
-
测试步骤
-
预期结果
-
优先级
7. 等价类划分
定义: 将输入数据划分为有效和无效等价类 用途: 减少测试用例数量,提高测试效率 示例: 年龄 1-120 为有效等价类,<1 和 >120 为无效等价类
8. 边界值分析
定义: 测试输入域的边界值 用途: 发现边界相关的缺陷 示例: 测试 0, 1, 120, 121(对于 1-120 的范围)
9. 回归测试 (Regression Test)
定义: 验证代码修改后原有功能是否正常 用途: 确保新改动没有引入新问题 方式: 手动或自动化
10. 冒烟测试 (Smoke Test)
定义: 对核心功能进行快速验证 用途: 判断版本是否值得进一步测试 特点: 快速、覆盖面广、深度浅
11. 性能测试 (Performance Test)
定义: 评估系统在不同负载下的表现 指标:
-
响应时间
-
吞吐量
-
并发用户数
-
资源利用率
12. 负载测试 (Load Test)
定义: 模拟正常和高负载情况下的系统表现 用途: 确定系统的最大承载能力
13. 压力测试 (Stress Test)
定义: 在超出正常负载的情况下测试系统 用途: 发现系统的瓶颈和崩溃点
14. 安全测试 (Security Test)
定义: 检测系统的安全漏洞 常见类型:
-
SQL 注入
-
XSS (跨站脚本)
-
CSRF (跨站请求伪造)
-
权限越权
15. 兼容性测试 (Compatibility Test)
定义: 验证系统在不同环境下的表现 维度:
-
浏览器兼容性
-
操作系统兼容性
-
设备兼容性
-
分辨率兼容性
16. 视觉回归测试 (Visual Regression Test)
定义: 通过截图对比检测 UI 变化 用途: 发现意外的界面变化 工具: Percy, Applitools
17. 契约测试 (Contract Test)
定义: 验证 API 响应是否符合定义的契约 用途: 确保接口的一致性 工具: Pact, Spring Cloud Contract
18. 端到端测试 (E2E Test)
定义: 从用户角度测试完整业务流程 特点: 覆盖多个系统和组件 工具: Selenium, Cypress, Playwright
💻 四、编程和开发术语
1. Python
定义: 高级编程语言 特点: 简洁易读,丰富的库生态 用途: 自动化脚本、Web 开发、数据分析
2. JSON (JavaScript Object Notation)
定义: 轻量级数据交换格式 用途: 存储和传输结构化数据 特点: 人类可读,机器易解析
3. 面向对象编程 (OOP)
定义: 基于对象和类的编程范式 核心概念:
-
类 (Class)
-
对象 (Object)
-
继承 (Inheritance)
-
封装 (Encapsulation)
-
多态 (Polymorphism)
4. 异常处理 (Exception Handling)
定义: 捕获和处理程序运行时的错误 Python 语法: try-except-finally 用途: 提高程序的健壮性
5. 正则表达式 (Regular Expression)
定义: 用于匹配字符串模式的表达式 用途: 文本搜索、替换、验证 示例: r'fldName=([^&]+)' 提取 URL 参数
6. 装饰器 (Decorator)
定义: 一种编程技巧/设计模式,允许在不修改原函数代码的情况下动态添加新功能 用途:
-
日志记录:自动记录函数调用
-
权限检查:验证用户权限
-
缓存:缓存函数结果提高性能
-
计时:测量执行时间
-
重试机制:失败时自动重试 特点:
-
非侵入式:不修改原函数代码
-
可复用:一个装饰器可用于多个函数
-
组合性:可以叠加多个装饰器 Python 示例:
@log_execution,@cache,@retry形象比喻: "给函数穿衣服" - 函数本身不变,但增加了额外功能
7. 上下文管理器 (Context Manager)
定义: 管理资源的进入和退出 Python 语法: with 语句 用途: 自动关闭文件、数据库连接等
🔄 五、DevOps 和 CI/CD
1. CI/CD
定义: 持续集成/持续交付 CI (Continuous Integration): 自动构建和测试代码变更 CD (Continuous Delivery/Deployment): 自动部署到生产环境
2. Jenkins
定义: 开源自动化服务器 用途: 构建、测试、部署自动化 特点: 丰富的插件生态
3. GitLab CI
定义: GitLab 内置的 CI/CD 工具 配置: .gitlab-ci.yml 文件 优势: 与代码仓库紧密集成
4. GitHub Actions
定义: GitHub 的自动化工作流 配置: .github/workflows/*.yml 文件 用途: 自动化测试、构建、部署
5. Docker
定义: 容器化平台 用途: 打包应用及其依赖,实现环境一致性 优势:
-
隔离性:每个容器有独立的运行环境
-
便携性:"一次构建,到处运行"
-
轻量级:共享主机操作系统内核
-
快速启动:秒级启动时间 相关概念: 镜像 (Image)、容器 (Container)、仓库 (Registry)
-
区分:容器是运维/部署层面的技术, "装应用的盒子",打包、隔离、部署;装饰器是编程/代码层面的技巧,"给函数穿衣服",增强、修饰、不改原代码
6. Kubernetes (K8s)
定义: 容器编排平台 用途: 管理和调度大规模容器化应用 核心功能:
-
自动扩缩容
-
负载均衡
-
服务发现
-
自愈能力(自动重启失败的容器) 特点: 云原生事实标准
7. 流水线 (Pipeline)
定义: 自动化的工作流程 阶段: 代码检出 → 构建 → 测试 → 部署 用途: 标准化软件交付流程 工具: Jenkins, GitLab CI, GitHub Actions
📊 六、测试度量和质量
1. 测试覆盖率 (Test Coverage)
定义: 测试覆盖的代码比例 类型:
-
语句覆盖率
-
分支覆盖率
-
路径覆盖率
-
功能覆盖率
2. 缺陷密度 (Defect Density)
定义: 单位代码量或缺陷数量 公式: 缺陷数 / 代码行数 或 功能点 用途: 评估代码质量
3. 通过率 (Pass Rate)
定义: 通过的测试用例占总测试用例的比例 公式: 通过数 / 总数 × 100% 用途: 衡量测试执行情况
4. MTTR (Mean Time To Repair)
定义: 平均修复时间 用途: 衡量团队响应和修复问题的能力
5. 质量门禁 (Quality Gate)
定义: 代码质量的最低标准 检查项: 测试覆盖率、代码规范、安全扫描 用途: 阻止低质量代码合并
🤖 七、AI 和智能体相关
1. AI 智能体 (AI Agent)
定义: 能够自主执行任务的 AI 系统 能力: 理解需求、生成代码、执行操作、分析问题 特点: 智能化、自动化、自适应
2. 自然语言处理 (NLP)(Natural Language Processing)
定义: 让计算机理解和生成人类语言的技术 应用: 需求理解、文档生成、智能问答
3. 机器学习 (Machine Learning)
定义: 让计算机从数据中学习规律 应用: 缺陷预测、测试用例推荐、异常检测
4. 自愈测试 (Self-healing Test)
定义: 当页面变化时自动调整测试脚本 原理: 多特征定位 + 智能匹配 优势: 降低维护成本
5. 预测性测试 (Predictive Testing)
定义: 基于历史数据预测高风险区域 方法: 分析代码变更、缺陷历史、复杂度 价值: 优化测试资源分配
6. 视觉 AI (Visual AI)
定义: 使用 AI 识别和分析图像 应用: 视觉回归测试、UI 异常检测 优势: 比像素对比更智能
🎯 八、项目管理术语
1. 敏捷测试 (Agile Testing)
定义: 在敏捷开发模式下的测试实践 特点: 快速迭代、持续反馈、协作紧密
2. TDD (Test-Driven Development)
定义: 测试驱动开发 流程: 写测试 → 写代码 → 重构 优势: 保证代码质量,促进设计
3. BDD (Behavior-Driven Development)
定义: 行为驱动开发 语言: Gherkin (Given-When-Then) 工具: Cucumber, Behave 优势: 业务和技术人员都能理解
4. 测试金字塔 (Test Pyramid)
定义: 测试分层的理念 层次 (从下到上):
-
单元测试 (最多)
-
集成测试 (适中)
-
E2E (End-to-End) 测试 (最少) 原则: 底层测试多,高层测试少
5. 左移测试 (Shift-Left Testing)
定义: 将测试活动提前到开发早期 目的: 尽早发现问题,降低修复成本 实践: 需求评审、设计审查、单元测试
6. 右移测试 (Shift-Right Testing)
定义: 在生产环境中进行测试和监控 目的: 发现真实用户场景的问题 实践: A/B 测试、混沌工程、日志分析
🔍 九、调试和问题排查
1. 断点 (Breakpoint)
定义: 程序执行的暂停点 用途: 检查变量状态,逐步执行
2. 堆栈跟踪 (Stack Trace)
定义: 程序出错时的调用链信息 用途: 定位错误发生的位置和原因
3. 日志 (Log)
定义: 程序运行过程的记录 级别: DEBUG, INFO, WARNING, ERROR, CRITICAL 用途: 问题诊断,行为追踪
4. 复现步骤 (Reproduction Steps)
定义: 重现问题的具体操作步骤 重要性: 帮助开发人员快速定位问题
5. 根本原因分析 (Root Cause Analysis)
定义: 找出问题产生的根本原因 方法: 5 Why 分析法、鱼骨图 目的: 防止问题再次发生
📝 十、文档和规范
1. Markdown
定义: 轻量级标记语言 用途: 编写技术文档、README、笔记 特点: 易读易写,可转换为 HTML/PDF
2. API 文档
定义: 描述 API 接口的文档 内容: 接口地址、请求参数、响应格式、示例 工具: Swagger, Postman, Apiary
3. 测试计划 (Test Plan)
定义: 测试活动的总体方案 内容: 测试范围、策略、资源、进度、风险
4. 测试报告 (Test Report)
定义: 测试执行结果的总结 内容: 测试统计、缺陷分析、结论和建议
5. 最佳实践 (Best Practice)
定义: 经过验证的有效方法 特点: 行业共识,效果显著 用途: 指导工作,提高效率
🌟 常用缩写对照表
| 缩写 | 全称 | 中文 |
|---|---|---|
| UI | User Interface | 用户界面 |
| API | Application Programming Interface | 应用程序接口 |
| E2E | End-to-End | 端到端 |
| CI | Continuous Integration | 持续集成 |
| CD | Continuous Delivery/Deployment | 持续交付/部署 |
| QA | Quality Assurance | 质量保证 |
| QC | Quality Control | 质量控制 |
| TDD | Test-Driven Development | 测试驱动开发 |
| BDD | Behavior-Driven Development | 行为驱动开发 |
| DOM | Document Object Model | 文档对象模型 |
| XPath | XML Path Language | XML 路径语言 |
| CSS | Cascading Style Sheets | 层叠样式表 |
| SSL | Secure Sockets Layer | 安全套接层 |
| HTTP | HyperText Transfer Protocol | 超文本传输协议 |
| JSON | JavaScript Object Notation | JavaScript 对象表示法 |
| OOP | Object-Oriented Programming | 面向对象编程 |
| NLP | Natural Language Processing | 自然语言处理 |
| AI | Artificial Intelligence | 人工智能 |
| MTTR | Mean Time To Repair | 平均修复时间 |
| K8s | Kubernetes | 容器编排平台 |
| Docker | Docker Platform | 容器化平台 |
| DevOps | Development + Operations | 开发运维一体化 |
📚 学习建议
初学者重点掌握
-
Selenium 基本概念
-
元素定位策略
-
测试用例设计方法
-
基本的 Web 技术 (HTML/CSS/JavaScript)
进阶学习
-
设计模式和架构
-
性能和安全测试
-
CI/CD 集成
-
AI 在测试中的应用
专家级别
-
测试框架设计
-
质量体系建设
-
智能测试和自愈机制
-
团队管理和流程优化
🔗 相关资源
创建时间: 2026-05-14 版本: 1.0 作者: AI Assistant
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)