webtest / project ERP / Enterprise Resource Planning / Webtest QA
s
https://us06web.zoom.us/j/83249444963?pwd=qVSV6Ar4BFa3phphHwVsgfg49a6b0U.1
- Webtest QA
- 问题2:AI 现在前沿测试技术有
| 技术方向 | 描述 | 应用价值 |
|---|---|---|
| 1. 自然语言生成测试用例(NL2TC) | 使用 GPT 等模型将产品需求文档/PRD 自动转为测试用例 | 节省人力、提升覆盖率 |
| 2. AI 自动定位 UI 元素 | 不再依赖固定 XPath,AI 通过语义或截图识别按钮/控件 | 提升 UI 自动化脚本稳定性 |
| 3. 智能断言生成 | 根据接口响应自动生成断言规则(如 JSON 验证) | 提升接口自动化效率 |
| 4. AI Bug 分析与日志诊断 | 自动分析失败日志、Crash 报告、测试异常定位 Root Cause | 降低排查成本,提高恢复效率 |
| 5. 视觉 AI 测试(Visual AI Testing) | 用 AI 检测 UI 页面布局/像素偏移/视觉缺陷 | 更适合电商、广告等 UI 变化敏感场景 |
| 6. AI 回归测试优化 | 根据历史变更、覆盖率、风险模型选择优先执行的测试用例 | 提升 CI/CD 效率 |
| 7. 自适应测试脚本 | 脚本能根据应用改动自动调整定位方式或操作步骤 | 减少维护压力 |
- AI 测试相关前沿工具推荐
| 工具/平台 | 特点 | 适用方向 |
|---|---|---|
| Testim.io | 使用 AI 脚本自愈、元素定位智能、可视化管理 | Web UI 自动化 |
| Mabl | 智能 UI 测试 + 可视化测试流 + 自愈功能 | SaaS 项目常用 |
| Functionize | NL to Test(自然语言生成脚本),AI 自愈能力强 | 跨浏览器 UI 自动化 |
| Diffblue Cover | Java 代码单元测试自动生成(基于 AI) | 后端服务测试 |
| Katalon Studio + AI 插件 | 支持智能断言推荐、脚本自愈(需付费) | 综合测试平台 |
| Applitools | 视觉 AI 测试领先者,支持 Selenium、Cypress、Playwright | 视觉回归测试 |
| Tricentis Tosca + Vision AI | 企业级视觉 AI 测试平台 | 大型系统、ERP 测试 |
| Microsoft Copilot for Testing | 用于 VS Code 中辅助生成测试代码 | 开发辅助测试 |
- 可结合 LLM(如 GPT)做的创新实践
| 用法 | 示例 |
|---|---|
| 文档转测试 | PRD ➜ GPT ➜ 用例模板自动生成 |
| 错误日志分析 | Crash log / 堆栈日志 ➜ GPT ➜ 出错点/修复建议 |
| 会话测试 | 使用 ChatGPT 模拟用户输入,做 ChatBot 或对话流程测试 |
| 智能 Mock | 让 GPT 自动生成符合接口契约的虚拟数据 |
| 多语言测试辅助 | 跨地区/多语言 UI/提示信息验证 |
- 建议:
-
逐步引入 AI 元素定位 + 自愈框架(如 Testim、Playwright + AI 插件)
-
尝试利用 GPT + PRD 文档 + Python 快速生成接口用例或单元测试代码
-
尝试接入 Applitools 或 Mabl 做 UI 视觉对比测试,适合对页面敏感业务
-
熟悉一些 日志分析 + Root Cause 推理工具(如结合 ELK + GPT)
-
利用 ChatGPT 等做测试培训题目生成、测试数据生成、边界值分析
- 问题1:哪些场景不适合自动化测试
不适合自动化测试的场景
| 类型 | 场景描述 | 原因 |
|---|---|---|
| 一次性测试 | 快速验证某个功能是否正常 | 自动化开发成本高,不如手工高效 |
| 频繁变动的功能 | UI/页面结构频繁改动(如初期产品) | 维护成本高,脚本易失效 |
| 复杂的图形验证 | 验证图像、水印、验证码、图表的颜色或样式 | 自动识别难,需人工判断 |
| 用户体验测试 | 如交互流畅性、UI美观度、布局合理性等 | 自动化难以模拟用户主观体验 |
| 硬件/物理交互 | 如扫码枪、指纹识别、刷卡、打印等 | 自动化脚本无法控制硬件设备 |
| 非确定性结果测试 | 依赖机器学习、AI输出的功能(如推荐系统) | 结果不唯一,难验证通过标准 |
| 复杂授权或权限验证 | 涉及多角色、复杂权限管理,流程长 | 角色切换复杂,脚本维护难 |
| 测试数据难以构造 | 需要特定生产环境或数据生成困难 | 自动化成本高,造数耗时 |
| 多媒体功能测试 | 音视频播放、录音识别、语音通话 | 自动脚本难模拟或验证真实效果 |
| 系统性能瓶颈测试 | 如TPS、吞吐量、内存泄漏等性能瓶颈分析 | 自动化测试主要用于功能验证 |
举个例子:
| 不适合自动化的测试用例 | 原因 |
|---|---|
| 验证首页 banner 图是否“好看” | 主观体验,自动化无法判断 |
| 登录验证码识别正确性 | 图形验证码难以被自动识别 |
| 手工刷卡进入设备后的功能 | 自动化脚本不能物理刷卡 |
| 电商秒杀系统 UI 是否卡顿 | 需要人工感知卡顿,自动化难以评估体验 |
| 检查地图导航路径是否合理 | 路径不唯一,结果难以自动验证 |
- 接口测试关联
在接口测试中,接口之间的关联非常重要,因为实际场景中多个接口之间的数据往往需要传递或依赖。以下是接口关联的一般实现步骤和方法:
-
确定接口依赖关系:分析接口文档,根据接口文档确认哪些接口之间存在依赖关系。例如,一个登录接口返回的token可能需要在后续的接口中作为认证信息。确定输入输出,明确接口A的输出(响应)需要作为接口B的输入(请求参数)。
-
数据提取:从上游接口的响应中提取必要的数据,常见方法包括JSON提取:对于返回JSON格式的数据,可以通过键值对提取,工具如Postman、JMeter、Python的json模块。示例:
import json
response = '{"token": "abc123", "user": {"id": 1}}'
data = json.loads(response)
token = data['token']
user_id = data['user']['id']
正则表达式:对于复杂的响应数据,可以使用正则表达式提取特定内容。示例:
import re
response = '<html><token>abc123</token></html>'
token = re.search(r'<token>(.*?)</token>', response).group(1)
-
数据传递:将提取的数据传递到下一个接口请求中。在Postman中,使用Tests标签保存提取的变量
pm.environment.set("token", pm.response.json().token);并在下一个接口的请求头或参数中引用Authorization: Bearer {{token}}。在JMeter中,使用JSON Extractor提取数据,在后续接口请求中使用${变量名}引用。 - 自动化关联:如果使用代码进行测试(如Python),可以通过以下步骤实现自动化关联:集成请求与响应。
import requests
# 调用登录接口,提取token
login_response = requests.post("https://example.com/login", data={"username": "user", "password": "pass"})
token = login_response.json().get("token")
# 调用其他接口,传递token
headers = {"Authorization": f"Bearer {token}"}
data_response = requests.get("https://example.com/data", headers=headers)
print(data_response.json())
-
-
数据依赖管理:参数化,将接口之间的依赖数据参数化,便于后续扩展和维护。断言验证,确保提取的数据符合预期,比如通过接口B校验接口A提供的user_id是否正确。
-
接口关联注意事项:异常处理,考虑上游接口失败时如何处理(如使用默认值或跳过后续接口)。超时问题,关注上游接口是否会导致下游接口等待过久。环境隔离,避免生产环境与测试环境的接口数据混用。
-
ERP(Enterprise Resource Planning,企业资源计划) 是一种用于企业内部各项资源(如财务、供应链、生产、库存、销售等)管理的集成化系统。ERP 系统通过统一的平台将不同部门的业务流程整合,使得数据共享和业务协同更加高效。
ERP 测试是对 ERP 系统各个模块进行全面的测试,确保其功能、性能、兼容性、安全性等方面都符合业务需求。ERP 系统的复杂性和集成性意味着测试工作需要覆盖多个方面,且通常涉及不同的业务部门,因此 ERP 测试通常比普通软件测试更加复杂和具有挑战性。
1. ERP 测试的目标
- 验证功能需求:确保每个模块的功能都能满足业务需求并按预期运行。
- 确保系统集成性:验证各个模块(如财务模块、采购模块、库存模块等)之间的集成是否顺畅。
- 性能测试:测试系统在不同负载下的表现,确保系统能够承受高并发的操作。
- 安全性测试:测试系统是否存在安全漏洞,如数据泄露、非法访问等问题。
- 兼容性测试:验证系统在不同硬件、操作系统和浏览器环境中的表现。
- 用户体验测试:确保系统界面友好,易于操作。
- 回归测试:确保新版本的系统修改不会影响到已有功能。
2. ERP 测试的类型
1. 功能测试
功能测试是ERP测试的核心,目的是验证系统各个模块的功能是否符合设计要求。每个模块都会有特定的功能需求,功能测试的主要任务是确保每个功能点都能正确执行。
举例:
- 财务模块:验证发票的创建、审核、支付流程。
- 采购模块:验证采购订单的生成、供应商选择和采购付款等功能。
- 库存模块:验证库存管理、入库、出库和库存查询等功能。
2. 集成测试
ERP系统由多个模块组成(如财务、销售、采购、库存等),不同模块之间需要紧密集成。集成测试的目标是确保数据流转和业务流程在各模块之间的无缝衔接。
举例:
- 采购与库存集成:当采购订单完成时,库存系统应自动更新库存数据。
- 财务与采购集成:采购订单一旦支付,财务系统应自动更新付款记录。
3. 性能测试
ERP系统通常需要处理大量的事务,尤其是在大型企业环境中,因此性能测试至关重要。性能测试评估系统在高负载、高并发情况下的响应时间、吞吐量和稳定性。
常见的性能测试项:
- 负载测试:模拟多个用户同时使用系统,查看系统在高负载下的表现。
- 压力测试:将系统置于极限负载下,测试系统是否能够承受过载并保持稳定。
- 稳定性测试:测试系统在长时间运行下的稳定性,避免出现内存泄漏、资源耗尽等问题。
4. 安全性测试
ERP系统通常会涉及到敏感数据(如财务数据、员工信息等),因此安全性测试非常重要。安全性测试主要关注系统是否能够抵御各种攻击和数据泄露风险。
常见的安全性测试:
- 身份验证与授权:确保用户只能访问他们被授权的模块和数据。
- 数据加密:确保敏感数据在传输和存储过程中被加密。
- 漏洞扫描:使用工具扫描系统是否存在常见的安全漏洞(如SQL注入、XSS攻击等)。
5. 回归测试
回归测试是每次系统更新、修复或修改后进行的测试。ERP系统功能复杂且高度集成,修改一个模块可能会影响到其他模块的功能,因此回归测试能够确保新修改没有引入新的错误。
举例:
- 系统在进行升级后,测试人员会对修改过的模块和相关模块进行回归测试,确保之前的功能没有受到影响。
6. 用户验收测试(UAT)
用户验收测试(User Acceptance Testing,UAT)通常由最终用户执行,目的是确保系统符合实际业务需求并能支持实际工作流程。UAT 通常是在开发完成后进行,测试环境模拟真实的业务场景,用户通过实际操作来验证系统的功能是否满足需求。
3. ERP 测试的挑战
ERP 系统涉及多个模块和集成,测试起来具有以下几个挑战:
- 高度复杂性:ERP系统集成了财务、供应链、生产等多个复杂模块,测试的业务场景多、测试数据多。
- 多平台兼容性:ERP系统可能需要在不同的操作系统、浏览器和设备上运行,因此需要进行全面的兼容性测试。
- 多角色、多权限的测试:ERP系统中有多个用户角色,每个角色的权限不同,测试时需要确保不同权限的用户能按预期使用系统。
- 庞大的数据量:企业通常会有大量的历史数据,测试时需要使用实际数据来模拟用户操作,确保数据的正确流转和处理。
- 长时间的测试周期:由于ERP系统的复杂性和业务流程的多样性,测试周期通常较长,需要进行充分的规划和资源调配。
4. ERP 测试的流程
-
需求分析与测试计划:
- 明确ERP系统的功能需求和业务流程,制定详细的测试计划。
-
测试用例设计:
- 根据需求和功能设计测试用例,确保涵盖所有的业务场景和操作流程。
-
环境搭建与数据准备:
- 搭建测试环境,准备测试所需的真实数据,包括测试账号、测试订单、财务数据等。
-
执行测试:
- 执行功能测试、集成测试、性能测试、安全性测试等,记录测试结果并发现缺陷。
-
缺陷跟踪与修复:
- 跟踪缺陷的修复情况,确保所有重要的缺陷得到解决,并重新测试修复后的功能。
-
回归测试与用户验收测试:
- 系统修改后进行回归测试,确保新功能没有破坏原有功能。用户验收测试(UAT)确保系统符合业务需求。
-
测试总结:
- 完成测试后,编写测试报告,总结测试结果、发现的问题和改进建议。
5. ERP 测试工具
一些常用的 ERP 测试工具包括:
- Selenium:自动化测试工具,适用于 Web 应用的功能和回归测试。
- JMeter:性能测试工具,用于模拟多个用户访问 ERP 系统,进行负载和压力测试。
- Postman:接口测试工具,用于测试 ERP 系统的 API。
- QTP/UFT:用于自动化功能测试,适合复杂的业务流程自动化。
- Jira + Xray:用于缺陷跟踪和管理,以及自动化测试的集成。
总结
ERP 测试是确保企业资源计划系统正常运行、稳定高效的关键。测试需要覆盖系统的各个层面,包括功能、性能、安全性和集成性等。由于 ERP 系统复杂且与多个业务流程密切相关,因此测试工作往往需要跨部门协作,确保系统能够支持企业的各项业务需求。在实施 ERP 测试时,企业应当结合实际情况,制定详细的测试计划,选用合适的工具和方法,以确保测试质量和效率。
end

浙公网安备 33010602011771号