本文最后更新于28 天前,其中的信息可能已经过时
确定需求:
1、核心功能类似Katalon Studio
实现功能如下:
- 自动化测试工具基础功能:
- 录制回放:支持录制用户的操作,并自动生成 Selenium 脚本。
- 脚本编辑:提供可视化的测试步骤编辑器,支持手动编写或修改测试脚本。
- 断言支持:包括检查文本、URL、页面标题、接口响应、下载文件和弹窗。
- JSON/XML 格式存储:测试用例采用 JSON/XML 格式存储和管理,支持解析和生成。
- 测试操作:
- 点击页面元素:自动识别页面中的不同 fragment,支持点击操作。
- 输入文本:支持在表单字段中输入文本。
- 处理弹窗:支持处理浏览器的弹窗(alert、confirm、prompt)。
- 延迟等待:支持对页面元素的延迟等待,确保元素在操作前已加载完成。
- 上传文件:通过 sendKeys 支持文件上传操作。
- 断言功能:
- 检查文本:断言页面元素的文本内容是否符合预期。
- 检查 URL:断言当前页面 URL 是否符合预期。
- 检查页面标题:断言页面的标题是否符合预期。
- 检查接口响应:断言 API 接口的响应状态和内容。
- 检查下载文件:验证文件是否正确下载到指定位置。
- 检查弹窗:验证弹窗的文本内容,并进行相应的操作(接受或拒绝)。
进阶功能
- 自动化测试增强功能:
- 自动重试机制:在遇到临时的错误或延迟时,自动重试某些操作。
- 截图和录屏:在测试失败时自动截图或录制屏幕,以便后续分析。
- 数据驱动测试:支持通过 CSV、Excel 或数据库获取不同的测试数据,自动填充到测试用例中。
- 可拓展性:支持用户自定义扩展功能,如添加自定义断言、支持更多的操作类型(例如拖拽、鼠标悬停等)。
- 跨浏览器支持:支持多个浏览器(Chrome、Firefox、Edge 等),并能够处理不同浏览器的特性差异。
- 自定义报告模板:支持用户自定义测试报告格式,选择所需的报告字段,如截图、日志等。
测试用例管理
- 存储与管理:
- JSON/XML 格式的测试用例管理:通过使用 Jackson 解析 JSON/XML,存储和管理测试用例。
- 测试报告和日志输出功能:生成详细的测试报告和日志,记录每个测试步骤的执行情况。
技术栈
功能模块 | 推荐技术 |
---|---|
语言 | Java |
测试框架 | Selenium WebDriver |
JSON/XML解析 | Jackson |
数据库支持 | MySQL |
日志管理 | log4j |
GUI组件 | JavaFX |
测试报告生成 | Allure |
数据驱动测试 | Apache POI (Excel) / CSV 解析库 |
录屏功能 | Monte Media Library |
自动重试 | TestNG retry |