大数跨境
0
0

自动化测试实战:DeepSeek 生成 Setup/Teardown(含真实 API 调用与可运行代码)

自动化测试实战:DeepSeek 生成 Setup/Teardown(含真实 API 调用与可运行代码) Playwright实战教程
2025-11-26
0
导读:本教程演提供一套完整、可运行、工程级 的示例。

 


本教程演提供一套完整、可运行、工程级 的示例,内容为付费阅读。
✅ 如何通过 Python 调用 DeepSeek API
✅ 如何让 DeepSeek 自动生成 POM、前置(setup)、清理(teardown)
✅ 如何把生成的内容自动写入 conftest.py、pages/、tests/
✅ 完整 Playwright 项目结构
✅ 可直接运行的命令与示例代码

这是一套“真实可工作”的自动化辅助框架模板,你可以直接应用在你的企业级实际项目中。

一、项目结构(最终 AI 会自动填充内容)


   
    
   my_project/
│── ai/
│   └── deepseek_client.py        # DeepSeek API 封装(你将获得完整代码)

│── pages/
│   └── inventory_page.py         # AI 自动生成 POM
│   └── cart_page.py

│── tests/
│   └── test_add_to_cart.py       # AI 自动生成测试用例

│── conftest.py                   # AI 生成 Setup/Teardown
│── requirements.txt

二、配置 DeepSeek API(完整版可运行代码)

支持 DeepSeek-R1、DeepSeek-V3 或未来模型。
你只需要把 API_KEY 换成自己的即可。


   
    
   requirements.txt
playwright
pytest
httpx
python-dotenv

1. 创建 .env


   
    
   DEEPSEEK_API_KEY=your_api_key_here

2. 创建 ai/deepseek_client.py


   
    
   import os
import
 httpx
from
 dotenv import load_dotenv

load_dotenv()

API_KEY = os.getenv("DEEPSEEK_API_KEY")
BASE_URL = "https://api.deepseek.com/v1"

class
 DeepSeek:
    def
 __init__(self, model="deepseek-chat"):
        self
.model = model

    async
 def ask(self, prompt: str):
        """
        调用 DeepSeek ChatCompletion API
        """

        async
 with httpx.AsyncClient(timeout=60) as client:
            resp = await client.post(
                f"{BASE_URL}/chat/completions"
,
                headers={
                    "Authorization"
: f"Bearer {API_KEY}",
                    "Content-Type"
: "application/json",
                },
                json={
                    "model"
: self.model,
                    "messages"
: [{"role": "user", "content": prompt}],
                    "temperature"
: 0.2
                },
            )
            resp.raise_for_status()
            return
 resp.json()["choices"][0]["message"]["content"]

三、DeepSeek 自动生成 Setup/Teardown 的提示词(实战)

以下 prompt 能让 AI 生成 工程级 Playwright Setup/Teardown。


   
    
   PROMPT = """
你是一名高级测试开发工程师。

请根据下面电商网站(https://www.saucedemo.com/)业务逻辑,
生成以下内容(必须可直接运行):

1. conftest.py 内的 Playwright pytest fixture:
   - 登录 setup
   - 清空购物车 setup
   - 测试结束后的 teardown(兜底清理购物车)

2. POM 页面:
   - InventoryPage(库存商品页)
   - CartPage(购物车页)

3. 一个测试用例 test_add_to_cart.py:

业务规则:
- 所有用例都必须在登录状态运行
- 所有用例必须在“空购物车”开始
- 用例结束后必须清空购物车

请输出完整 Python 文件内容。
"""

四、AI 自动写文件脚本(可直接执行)

下面脚本会:

  • • 调用 DeepSeek
  • • 获取自动生成的 Python 代码
  • • 自动写入:conftest.py, inventory_page.py, cart_page.py, test_add_to_cart.py

   
    
   # generate_project_files.py

【声明】内容源于网络
0
0
Playwright实战教程
内容 224
粉丝 0
Playwright实战教程
总阅读22
粉丝0
内容224