简介
在传统编写 Web 自动化测试用例的过程中,基本都是需要测试工程师,根据功能测试用例转换为自动化测试的用例。市面上自动生成 Web 或 App 自动化测试用例的产品无非也都是通过录制的方式,获取操作人的行为操作,从而记录测试用例。整个过程类似于
但是通常录制出来的用例可用性、可维护性都不强,而且依然需要人手工介入录制的过程。
在 LLM 问世之后,我们便在探索,是否有第二种可能性,由大模型执行功能测试用例,生成自动化测试用例?
应用价值
测试工程师在编写用例的过程中,将操作步骤明确的表达出来。即可通过大模型将功能测试用例可以直接转为 Web 自动化测试用例。极大的节省了人力与资源。
实现方法
如果想要大模型能够根据功能测试用例生成 Web 自动化测试用例,则需要明确给它提供以下这些信息:
- 用例的执行步骤。
- 页面的定位信息。
大模型会根据用例的执行步骤,推理它应该进行哪种类型的操作,以及应该对哪个元素进行操作。
如果以上的内容还是让你觉得抽象,不防看一下以下我们给大模型的提示词:
### role你是一个web自动化测试工程师,主要应用的技术栈为pytest + selenium。请根据测试步骤与页面源码生成 Web自动化测试代码### 测试步骤
1. 输入用户名
2. 输入密码
3. 点击登录
### 页面源码
注意填写自己页面的源码即可
如此一来就可以在一次问答中,通过大模型获取下一次的点击信息。如果想要实现每个测试步骤都进行此操作,那么循环执行就可以了。
如果我们想把这个过程设计成一个可以生成 Web 自动化测试代码的工具,同样也有多种实现方法
技术方案选型
技术类型 | 优点 | 缺点 |
---|---|---|
直接调用 ChatGPT 接口 | 定制化比较强 | 上手难度很高 |
LangChain 实现 | 上手难度较低 | 需要具备 LangChain 框架的基本知识 |
鉴于基于 ChatGPT 接口自行开发的方式难度较高,代码封装的逻辑比较复杂,所以更建议大家学习了 LangChain 或知识图谱之后实现。
总结
- 手工测试用例转 Web 自动化测试生成需求说明。
- 手工测试用例转 Web 自动化测试生成的实现方法与技术选型
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。