AI辅助测试实战指南 – 大语言模型如何改变测试工作方式

作者:AI测试探索者 | 发布时间:2026年7月20日


前言

大家好,我是AI测试探索者。

从ChatGPT横空出世到现在,大语言模型(LLM)已经深刻改变了软件开发的方式。作为测试工程师,我发现AI不仅能提升效率,更能改变我们思考测试的方式。

今天这篇文章,分享我在AI辅助测试方面的实战经验,不讲虚的理论,只讲能落地的实践。


一、AI能为测试做什么?

1.1 测试用例生成

这是最直接的应用场景。给出需求描述,AI可以帮你生成测试用例。

示例:

需求描述:

用户登录功能:
1. 支持用户名+密码登录
2. 支持手机号+验证码登录
3. 密码错误超过5次锁定账号
4. 登录成功后生成Token,有效期24小时

AI生成的测试用例:

用例编号用例名称前置条件测试步骤预期结果
TC-LOGIN-001正确用户名密码登录用户已注册1.输入正确用户名 2.输入正确密码 3.点击登录登录成功,跳转首页
TC-LOGIN-002用户名为空1.用户名留空 2.输入密码 3.点击登录提示”请输入用户名”
TC-LOGIN-003密码为空1.输入用户名 2.密码留空 3.点击登录提示”请输入密码”
TC-LOGIN-004用户名不存在1.输入未注册用户名 2.输入密码 3.点击登录提示”用户不存在”
TC-LOGIN-005密码错误用户已注册1.输入正确用户名 2.输入错误密码 3.点击登录提示”密码错误”
TC-LOGIN-006密码错误5次锁定用户已注册连续5次输入错误密码账号被锁定,提示解锁方式

技巧:


1.2 接口测试脚本生成

AI可以根据接口文档直接生成测试脚本。

示例:接口文档

接口名称: 创建订单
URL: /api/v1/orders
方法: POST
请求头:
  Content-Type: application/json
  Authorization: Bearer {token}
请求体:
  product_id: string  # 商品ID
  quantity: integer   # 数量
  address_id: string  # 地址ID
响应:
  200:
    code: 0
    data:
      order_id: string
      total_price: number
  400:
    code: 400001
    message: "参数错误"

AI生成的Python测试脚本:

import pytest
import requests

class TestCreateOrder:
    """创建订单接口测试"""

    BASE_URL = "http://localhost:8080/api/v1"
    TOKEN = "your_test_token"

    def setup_class(self):
        """测试前置:获取Token"""
        self.headers = {
            "Content-Type": "application/json",
            "Authorization": f"Bearer {self.TOKEN}"
        }

    def test_create_order_success(self):
        """测试:正常创建订单"""
        payload = {
            "product_id": "prod_001",
            "quantity": 1,
            "address_id": "addr_001"
        }
        response = requests.post(
            f"{self.BASE_URL}/orders",
            json=payload,
            headers=self.headers
        )
        assert response.status_code == 200
        data = response.json()
        assert data["code"] == 0
        assert "order_id" in data["data"]
        assert "total_price" in data["data"]

    def test_create_order_missing_product_id(self):
        """测试:缺少商品ID"""
        payload = {"quantity": 1, "address_id": "addr_001"}
        response = requests.post(
            f"{self.BASE_URL}/orders",
            json=payload,
            headers=self.headers
        )
        assert response.status_code == 400

    def test_create_order_without_token(self):
        """测试:未授权访问"""
        payload = {"product_id": "prod_001", "quantity": 1, "address_id": "addr_001"}
        headers = {"Content-Type": "application/json"}
        response = requests.post(f"{self.BASE_URL}/orders", json=payload, headers=headers)
        assert response.status_code == 401

1.3 测试数据生成

AI可以快速生成测试所需的模拟数据。

test_users = [
    {"username": "zhangsan", "email": "zhangsan@test.com", "age": 25},
    {"username": "lisi", "email": "lisi@test.com", "age": 30},
    {"username": "wangwu", "email": "wangwu@test.com", "age": 28},
    # 边界值
    {"username": "a", "email": "a@b.c", "age": 1},  # 最小值
    {"username": "x" * 50, "email": "test@test.com", "age": 150},  # 最大值
]

1.4 Bug报告优化

AI可以帮你把模糊的Bug描述转化为规范的报告。

原始描述:

登录有问题,有时候能登,有时候登不上

AI优化后:

Bug报告:登录功能偶发性失败

严重程度:

重现步骤:

  1. 打开登录页面 https://example.com/login
  2. 输入用户名:testuser
  3. 输入用户密码:password123
  4. 点击登录按钮
  5. 等待响应

预期结果: 登录成功,跳转到首页

实际结果: 偶发性登录失败,提示”网络异常,请稍后重试”

复现概率: 约30%(测试10次,失败3次)

环境信息:

可能原因:

  1. 后端服务不稳定
  2. 数据库连接池耗尽
  3. 网络超时配置过短

二、AI辅助测试实战技巧

2.1 提示词模板

好的提示词是获得高质量输出的关键。

测试用例生成模板:

请为以下功能生成测试用例,要求:
1. 覆盖正常流程和异常流程
2. 包含边界值测试
3. 考虑安全测试场景
4. 用表格形式输出

功能描述:
{需求描述}

输出格式:
| 用例编号 | 用例名称 | 前置条件 | 测试步骤 | 预期结果 |

2.2 常见问题与解决

问题解决方案
AI生成的用例不完整分批生成:先生成正常流程,再追问边界值
代码有语法错误让AI解释代码逻辑,人工检查修复
缺少业务上下文在提示词中补充业务背景、用户场景
生成的内容太泛要求”请给出具体示例”、”请用代码表示”

三、AI测试工具推荐

工具用途特点
ChatGPT/Claude测试用例生成、脚本生成通用性强,需手动编写
GitHub CopilotIDE内代码补全提升编码效率
TestGPT专门的测试用例生成针对测试场景优化
ApplitoolsAI视觉测试自动检测UI变化
MablAI自动化测试自愈式测试脚本

RunnerGo作为国产全栈测试平台,可以与AI辅助测试很好地结合:

  1. 用AI生成接口测试脚本 → 导入RunnerGo执行
  2. 用AI设计测试场景 → 在RunnerGo编排流程
  3. 用AI分析测试报告 → 定位问题根因

四、AI辅助测试的边界

4.1 AI不能替代的工作

工作原因
业务理解AI不了解你的业务特例
测试策略需要权衡成本和风险
质量决策AI无法承担质量责任
用户视角AI不是真实用户

4.2 最佳实践建议

AI辅助测试的正确姿势:

✅ 用AI生成初稿,人工审核完善
✅ 用AI加速重复劳动,聚焦高价值工作
✅ 用AI学习新技术,降低学习门槛

❌ 不要100%信任AI输出
❌ 不要让AI替代你的思考
❌ 不要忽视AI的幻觉问题

五、总结

方面传统方式AI辅助后
用例设计纯手工编写AI生成初稿+人工优化
脚本开发逐行手写AI生成框架+细节调整
Bug报告描述模糊AI优化为规范报告
学习效率查文档摸索AI实时解答

AI不会取代测试工程师,但会取代不会用AI的测试工程师。

拥抱AI,让它成为你的效率倍增器,而不是替代者。


作者:AI测试探索者,5年测试开发经验,专注AI辅助测试实践


参考资料


讨论话题:你在测试工作中用过AI吗?有什么心得?欢迎评论区分享!

分享到:

探索 RunnerGo 全栈测试平台

RunnerGo 是一款面向企业的全栈测试平台,集接口测试、自动化测试、性能测试、UI测试于一体,助力企业提升研发效能。

接口测试
性能测试
自动化测试
免费体验 RunnerGo