AI接口测试
·
目录
一、测试用例
指令:请根据以下接⼝信息,帮我⽣成完整的测试⽤例列表。要求覆盖正常情况、边界情况、异常输 ⼊、安全测试场景。 背景信息:注册接⼝请求参数包含⽤⼾名、密码和邮箱三个字段,⽤⼾名必填,⻓度3-16,密码必填, ⾄少8位,包含字⺟和数字,邮箱必填,符合邮箱格式 输⼊:接⼝信息如下: POST /api/user/register 请求参数: - username: string - password: string - email: string 输出:⽤表格形式展⽰,包括:⽤例编号、测试⽬标、输⼊参数、预期结果。
请根据以下接⼝信息,帮我⽣成完整的测试⽤例列表。要求覆盖正常情况、边界情况、异常输⼊、 安全测试场景。⽤表格形式展⽰,包括:⽤例编号、测试⽬标、输⼊参数、预期结果 接⼝信息如下: POST /api/user/register 请求参数: - username: string(必填,⻓度3-16) - password: string(必填,⾄少8位,包含字⺟和数字) - email: string(必填,符合邮箱格式)
二、脚本编写
请帮我使⽤Python和requests库,⽣成⼀个接⼝测试脚本,接⼝信息如下: 接⼝地址:POST https://api.example.com/user/register 请求参数: - username: string(必填) - password: string(必填) - email: string(必填) 测试⽬标:验证正常注册⽤⼾时接⼝返回200,并返回JSON中包含字段"success": true。 请⽣成可执⾏脚本,并附带断⾔。
请根据以下接⼝信息⽣成覆盖全⾯的测试⽤例:
POST http://8.137.19.140:9090/user/login
请求参数form-data:
{
"username": "zhangsan",
"password": "123456"
}
⽣成要求:
⽤例需覆盖:正常场景、参数缺失、参数异常(类型/⻓度/格式)、边界值等
提示词:
请根据以下接口信息,帮我生成完整的测试用例列表。要求覆盖正常情况、边界情
况、异常输入、安全测试场景。按照测试的优先级将测试用例的数量控制在10个以
内,用表格形式展示,包括:用例编号、测试目标、输入参数、预期结果
POST http://8.137.19.140:9090/b1og/add
请求头:
(
“user_token_header”:"eyJhbGciOiJIUzI1NiJ9.eyJpZCI6MSwidXNlck5hbWUiOi
J6aGFuZ3NhbiIsImV4cCI6MTcINDI4MDEOMnO. yDlkXmaUn6cF-8adtj2z9nrC1XR5FkfCYjp
elC6MWEc"
请求参数json:
{"title”:"1111”,"content”:“##在这里写下一篇博客”}
请求成功返回值:
"code”:"SUCCESS",
"errMsg”:"",
"data":true
请求失败:
"code”:"SUCCESS",
"errMsg”:"",
"data":false
除了以上返回值场景,其他场景下响应状态码均为401
1.生成测试用例
请根据以下接⼝信息,帮我⽣成完整的测试⽤例列表。要求覆盖正常情况、边界情况、异常输⼊、安全
测试场景。按照测试的优先级将测试⽤例的数量控制在10个以内,⽤表格形式展⽰,包括:⽤例编号、测
试⽬标、输⼊参数、预期结果
POST http://8.137.19.140:9090/blog/add
请求头:
{
"user_token_header":"eyJhbGciOiJIUzI1NiJ9.eyJpZCI6MSwidXNlck5hbWUiOiJ6aGFuZ3Nhb
iIsImV4cCI6MTc1NDI4MDE0Mn0.yDlkXmaUn6cF-8adtj2z9nrC1XR5FkfCYjpelC6MWEc"
}
请求参数json:
{"title": "1111", "content": "##在这⾥写下⼀篇博客"}
请求成功返回值:
{
"code": "SUCCESS",
"errMsg": "",
"data": true
}
请求失败:
{
"code": "SUCCESS",
"errMsg": "",
"data": false
}
除了以上返回值场景,其他场景下响应状态码均为401
2.生成测试脚本
根据上⾯10个测试⽤例,创建test_add.py⽂件并在⽂件中⽣成测试脚本
3.手动优化
数据依赖
背景:登录接⼝返回的data有效数据为其他接⼝请求头user_token_header参数的有效值 要求: 1)修改涉及代码的user_token_header取值,避免出现失效的情况 2)不改变已有测试⽂件的结构,测试⽂件中只有测试类和测试⽅法 3)避免重复代码,推荐使⽤fixture
参数化 pytest.mark.parametrize
分析接口返回值,利用pytest中的参数化操作来减少用例数量 要求: 1)可以合并放在同一个用例中 2)不可以合并的用例不做处理,避免强行处理降低代码可读性
三、需求分析与用例设计
@博客系统接⼝⽂档 @博客系统接⼝测试⽤例模板 针对博客系统接⼝⽂档中涉及到的所有接⼝,分别设计接⼝测试⽤例 要求: 1)⽤例需覆盖:正常场景、参数缺失、参数异常(类型/⻓度/格式)、边界值等,按照测试的优先级 将每个接⼝对应测试⽤例的数量控制在10个以内 2)输出格式:完全按照博客系统接⼝测试⽤例模板⽂档中的格式来输出测试⽤例,保存在“接⼝测试⽤ 例.md”⽂件中
四、搭建项目框架
@接⼝测试⽤例 根据接⼝测试⽤例.md⽂件内容,直接输出接⼝⾃动化⽬录结构即可,不需要创建项⽬代码或⽂件 技术栈要求: 1. 编程语⾔:Python 2. 测试框架:pytest 3. HTTP 库:requests 4. 数据驱动:YAML 5. 报告:Allure 6. 接⼝返回值断⾔:jsonschema 7. logging⽇志记录:⽇志分级输出,按天分割 其他设计要求: 1. 其他接⼝需要在请求头添加有效token,但是token值来⾃于登录接⼝的返回值data 2. 其他接⼝中有效的blogId取⾃列表⻚接⼝getList的有效返回值id
生成结果
project_root/ │ ├── requirements.txt # 依赖列表 ├── pytest.ini # pytest 全局配置 ├── config/ │ ├── settings.py # 全局配置(BaseURL、日志级别…) │ └── logging.conf # logging 配置文件(RotatingFileHandler 按天切分) │ ├── data/ │ ├── login.yaml # 登录接口测试数据 │ ├── getList.yaml │ ├── addBlog.yaml │ ├── getBlogDetail.yaml │ ├── getUserInfo.yaml │ └── getAuthorInfo.yaml │ ├── schema/ # jsonschema 断言文件 │ ├── login_schema.json │ ├── blog_list_schema.json │ ├── blog_detail_schema.json │ └── user_schema.json │ ├── common/ │ ├── __init__.py │ ├── logger.py # 日志封装(logger.info / logger.error) │ ├── request_handler.py # requests 二次封装(自动写日志、异常处理) │ └── yaml_reader.py # 加载 YAML 用例 │ ├── fixture/ │ ├── __init__.py │ └── conftest.py # pytest fixture: │ # - login():返回有效 token │ # - blog_id():返回 getList 第一条 id │ ├── api/ │ ├── __init__.py │ ├── login_api.py # 登录接口封装 │ ├── blog_api.py # 博客相关接口封装 │ └── user_api.py # 用户相关接口封装 │ ├── test_case/ │ ├── __init__.py │ ├── test_login.py # 登录用例 │ ├── test_blog_list.py │ ├── test_add_blog.py │ ├── test_blog_detail.py │ ├── test_user_info.py │ └── test_author_info.py │ ├── report/ # 运行后自动生成 │ ├── html/ # allure html │ └── allure_raw/ # allure json │ └── run.py # 一键执行入口(pytest.main + allure generate)
脚本生成
@博客系统接⼝⽂档 @博客系统项⽬结构 @博客系统接⼝测试⽤例 结合博客系统相关⽂档,严格按照要求⽣成接⼝⾃动化测试
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐

所有评论(0)