简介

在传统编写 Web 自动化测试用例的过程中,基本都是需要测试工程师,根据功能测试用例转换为自动化测试的用例。市面上自动生成 Web 或 App 自动化测试用例的产品无非也都是通过录制的方式,获取操作人的行为操作,从而记录测试用例。整个过程类似于

在这里插入图片描述

但是通常录制出来的用例可用性、可维护性都不强,而且依然需要人手工介入录制的过程。

在 LLM 问世之后,我们便在探索,是否有第二种可能性,由大模型执行功能测试用例,生成自动化测试用例?

应用价值

测试工程师在编写用例的过程中,将操作步骤明确的表达出来。即可通过大模型将功能测试用例可以直接转为 Web 自动化测试用例。极大的节省了人力与资源。

实现方法

如果想要大模型能够根据功能测试用例生成 Web 自动化测试用例,则需要明确给它提供以下这些信息:

  1. 用例的执行步骤。
  2. 页面的定位信息。

大模型会根据用例的执行步骤,推理它应该进行哪种类型的操作,以及应该对哪个元素进行操作。

在这里插入图片描述

如果以上的内容还是让你觉得抽象,不防看一下以下我们给大模型的提示词:


### role你是一个web自动化测试工程师,主要应用的技术栈为pytest + selenium。请根据测试步骤与页面源码生成 Web自动化测试代码### 测试步骤
1. 输入用户名
2. 输入密码
3. 点击登录

### 页面源码
注意填写自己页面的源码即可

如此一来就可以在一次问答中,通过大模型获取下一次的点击信息。如果想要实现每个测试步骤都进行此操作,那么循环执行就可以了。

如果我们想把这个过程设计成一个可以生成 Web 自动化测试代码的工具,同样也有多种实现方法

技术方案选型

技术类型优点缺点
直接调用 ChatGPT 接口定制化比较强上手难度很高
LangChain 实现上手难度较低需要具备 LangChain 框架的基本知识

鉴于基于 ChatGPT 接口自行开发的方式难度较高,代码封装的逻辑比较复杂,所以更建议大家学习了 LangChain 或知识图谱之后实现。

总结

  1. 手工测试用例转 Web 自动化测试生成需求说明。
  2. 手工测试用例转 Web 自动化测试生成的实现方法与技术选型

霍格沃兹测试学院
44 声望27 粉丝