
Prompt工程实战上篇:从0到1构建AI测试提示词
Prompt工程实战下篇:调试、优化与自动诊断全流程
近日我们连续发布了两篇 Prompt 工程系列教程:本篇聚焦性能测试与并发场景,演示如何借助 Prompt 工程和 Playwright 自动化压力测试 saucedemo.com。
一、前言
在电商高峰期,页面吞吐量与并发用户体验至关重要。传统性能测试脚本编写复杂、难与功能测试统一,团队常面临:
-
1. 📊 指标难产:手工编写并发脚本耗时长,数据汇总麻烦; -
2. 🚦 环境搭建:需额外性能测试工具,CI 集成门槛高; -
3. 🔄 脚本维护:UI 改动频繁,性能脚本易失效。
AI 助手(DeepSeek)+ Prompt 工程可简化性能测试脚本生成,Playwright 支持高并发上下文,本文将带你:
-
• 用 Prompt 一键生成高并发性能测试脚本; -
• 使用 Python 与 Playwright 实现压测; -
• 输出详细报告并集成至 CI。
二、实战案例:saucedemo 并发压测
2.1 Prompt 模板设计
# prompt_performance.py
def get_performance_prompt():
return '''
你是一名资深性能测试工程师,精通 Playwright 和 Python。
请为 saucedemo.com 生成并发性能测试脚本:
- 模拟 50 个并发用户同时登录并添加商品到购物车;
- 登录凭证:standard_user/secret_sauce;
- 每个用户执行 5 次添加不同商品操作;
- 输出每位用户的响应时间和总体耗时报告;
- 使用 Playwright 的并发上下文和 Pytest 运行;
- 最终生成 CSV 格式的测试结果文件。
'''
2.2 AI 生成脚本示例
# tests/test_performance.py
import csv, time
import pytest
from playwright.sync_api import sync_playwright
def test_saucedemo_performance():
users = 50
results = []
with sync_playwright() as p:
browser = p.chromium.launch()
def user_flow(uid):
ctx = browser.new_context()
page = ctx.new_page()
start = time.time()
page.goto("https://www.saucedemo.com")
page.fill("#user-name", "standard_user")
page.fill("#password", "secret_sauce")
page.click("#login-button")
for i in range(5):
selector = f"#add-to-cart-sauce-labs-{'backpack' if i%2==0 else 'bike-light'}"
page.click(selector)
duration = time.time() - start
results.append((uid, round(duration, 2)))
ctx.close()
# 并发执行
pytest.parallel(user_flow, range(1, users+1))
# 写入报告
with open('performance_results.csv','w',newline='') as f:
writer = csv.writer(f)
writer.writerow(['user_id','duration'])
writer.writerows(results)
# 简单断言
assert len(results) == users
提示:上面
pytest.parallel
伪代码用于示意,实际可用 ThreadPoolExecutor 或 Pytest-xdist 插件。
也可参考这篇文章
从0到1构建Playwright高并发购物车压测
2.3 运行与报告
pytest tests/test_performance.py --maxfail=1 --disable-warnings -q
执行完成后,打开 performance_results.csv
查看各用户耗时;可进一步使用 Python 或 Excel 绘制折线图、柱状图。
三、结语
本篇演示了如何结合 Prompt 工程与 Playwright,实现端到端的并发性能测试:
-
• 📝 Prompt 一键生成 脚本,提升编写速度; -
• 🚀 Playwright 上下文并发 支持,实现高并发; -
• 📑 CSV 报告 输出,方便后续可视化分析; -
• 🔗 CI 集成 友好,可与 Jenkins/GitHub Actions 联动。
觉得有用?点赞 + 转发 + 关注《Playwright实战教程》,我们下期见!