链载Ai

标题: Prompt工程实战第三篇:AI驱动的性能与并发测试 [打印本页]

作者: 链载Ai    时间: 1 小时前
标题: Prompt工程实战第三篇:AI驱动的性能与并发测试

ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 14px;font-style: normal;padding: 1em;border-radius: 6px;color: rgba(0, 0, 0, 0.5);background: rgb(247, 247, 247);">

ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 1em;display: block;letter-spacing: 0.1em;color: rgb(63, 63, 63);">近日我们连续发布了两篇 Prompt 工程系列教程:本篇聚焦ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: inherit;color: rgb(15, 76, 129);">性能测试与并发场景,演示如何借助 Prompt 工程和 Playwright 自动化压力测试 saucedemo.com。


ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;display: table;padding: 0px 1em;color: rgb(63, 63, 63);">一、前言

ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 14px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">在电商高峰期,页面吞吐量与并发用户体验至关重要。传统性能测试脚本编写复杂、难与功能测试统一,团队常面临:

  1. ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 14px;text-indent: -1em;display: block;margin: 0.2em 8px;color: rgb(63, 63, 63);">
    1. 📊ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: inherit;color: rgb(15, 76, 129);">指标难产:手工编写并发脚本耗时长,数据汇总麻烦;
  2. ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 14px;text-indent: -1em;display: block;margin: 0.2em 8px;color: rgb(63, 63, 63);">
    2. 🚦ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: inherit;color: rgb(15, 76, 129);">环境搭建:需额外性能测试工具,CI 集成门槛高;
  3. ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 14px;text-indent: -1em;display: block;margin: 0.2em 8px;color: rgb(63, 63, 63);">
    3. 🔄脚本维护:UI 改动频繁,性能脚本易失效。

AI 助手(DeepSeek)+ Prompt 工程可简化性能测试脚本生成,Playwright 支持高并发上下文,本文将带你:


二、实战案例:saucedemo 并发压测

2.1 Prompt 模板设计

# prompt_performance.py
defget_performance_prompt():
return'''
你是一名资深性能测试工程师,精通 Playwright 和 Python。
请为 saucedemo.com 生成并发性能测试脚本:
- 模拟 50 个并发用户同时登录并添加商品到购物车;
- 登录凭证:standard_user/secret_sauce;
- 每个用户执行 5 次添加不同商品操作;
- 输出每位用户的响应时间和总体耗时报告;
- 使用 Playwright 的并发上下文和 Pytest 运行;
- 最终生成 CSV 格式的测试结果文件。
'''

2.2 AI 生成脚本示例

# tests/test_performance.py
importcsv, time
importpytest
fromplaywright.sync_apiimportsync_playwright

deftest_saucedemo_performance():
users =50
results = []
withsync_playwright()asp:
browser = p.chromium.launch()
defuser_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")
foriinrange(5):
selector =f"#add-to-cart-sauce-labs-{'backpack'ifi%2==0else'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))
# 写入报告
withopen('performance_results.csv','w',newline='')asf:
writer = csv.writer(f)
writer.writerow(['user_id','duration'])
writer.writerows(results)
# 简单断言
assertlen(results) == users

提示:上面pytest.parallel伪代码用于示意,实际可用 ThreadPoolExecutor 或 Pytest-xdist 插件。

也可参考这篇文章

从0到1构建Playwright高并发购物车压测

2.3 运行与报告

pytesttests/test_performance.py--maxfail=1--disable-warnings-q

执行完成后,打开performance_results.csv查看各用户耗时;可进一步使用 Python 或 Excel 绘制折线图、柱状图。


三、结语

本篇演示了如何结合 Prompt 工程与 Playwright,实现端到端的并发性能测试:






欢迎光临 链载Ai (https://www.lianzai.com/) Powered by Discuz! X3.5