许多团队在引入 AI 辅助编写测试脚本时,常遇到以下问题:
这些问题的核心在于:AI 不理解你的“测试风格”(Testing Style & Convention)。
而真正的 AI 测试提效,并非只是“让 AI 写代码”,而是让 AI 学会并模仿你的团队风格。
这正是Prompt 工程的进阶目标:
✅ 让 AI 理解并复用你的命名习惯、代码结构、注释风格与断言逻辑
✅ 将团队经验转化为可复用的“AI 测试模板”
✅ 实现从“辅助生成”到“风格化自动输出”的跃迁
本文将带你系统构建一个风格化 AI 测试生成体系,以 DeepSeek 为例,实现真正“懂你”的自动化测试助手。
要让 DeepSeek 学会你的风格,可以把整个过程拆成 3 个阶段:
| 1. 采集风格样本 | ||
| 2. 构建 Prompt 模板 | few-shot示例 +style summary提示 | |
| 3. 封装生成器 |
假设你的团队测试风格如下:
而普通 AI(默认 Prompt)生成的代码可能是这样的👇:
def login_test():
page.click('#login')
assert "Welcome" in page.text_content('#msg')经过“风格提示强化”的 Prompt 模板,DeepSeek 输出的代码会变成:
import pytest
from pages.login_page import LoginPage
@pytest.mark.ui
def test_user_can_login_successfully(page):
"""验证用户登录功能是否正常"""
login = LoginPage(page)
login.open()
login.login("standard_user", "secret_sauce")
assert login.is_logged_in(), "登录后应跳转到主页面"可以看到,经过 风格引导后:
模板结构
下面是一个适用于 DeepSeek 的风格化 Prompt 模板:
你现在是一个资深自动化测试工程师,擅长 Playwright + Pytest。
请根据下面的上下文和风格要求,生成符合我们团队规范的测试代码。
【上下文】
{{ test_description }}
{{ page_structure }}
{{ element_actions }}
【风格规范】
- 使用 pytest
- 每个测试函数以 test_ 开头
- 每个测试函数都要有中文 docstring,简短描述测试目标
- 页面对象类以 Page 结尾
- 断言使用 assert 表达式
- 变量命名应简洁、有意义
【输出格式】
```python
# 完整可执行代码这种 Prompt 模板属于“Prompt Schema”,可以反复复用,只需要替换测试目标部分。
stylegen.pyimportjson
fromdeepseekimportDeepSeekClient
client = DeepSeekClient(api_key="YOUR_API_KEY")
defgenerate_test_with_style(description, style_rules):
prompt =f"""
你是一名测试专家。请根据以下说明生成测试代码。
【测试说明】
{description}
【风格规则】
{style_rules}
【输出要求】
生成可运行的 pytest + playwright 测试代码,包含中文注释和断言。
"""
response = client.chat.completions.create(
model="deepseek-chat",
messages=[{"role":"user","content": prompt}],
)
returnresponse.choices[0].message.content
if__name__ =="__main__":
desc ="验证用户可以正常登录 saucedemo 网站,并成功看到产品列表"
rules ="""
- pytest 风格
- 页面对象模式(POM)
- 中文注释
- assert 断言风格
"""
print(generate_test_with_style(desc, rules))运行后,DeepSeek 会自动输出风格一致的 Python 测试文件。
如果希望 DeepSeek 更贴近你团队风格,可以:
{
"framework": "pytest",
"naming_convention": {
"test_func_prefix": "test_",
"page_class_suffix": "
age"
},
"assert_style": "assert expr, message",
"docstring_language": "zh-CN"
}
Prompt 不是一次性技巧,而是测试知识的编码方式。
当你的团队积累了自己的 Prompt 模板库,就相当于拥有了一套 AI 可学习的“测试文化”。
未来,你甚至可以让 DeepSeek:
这,才是真正意义上的 AI 测试团队风格化演进。
| 欢迎光临 链载Ai (http://www.lianzai.com/) | Powered by Discuz! X3.5 |