一. 项目框架结构

image.png

二. 平常需要使用到的工具函数

2.1 json的使用

image.png

2.2 yaml的使用

image.png

2.3 断言的使用

2.3.1 断言 函数一的使用

image.png

2.3.2 断言 函数二的使用

image.png

2.4 Common/function/data_process.py文件的使用

image.png
image.png
image.png

三. 如何编写业务脚本

3.1 业务函数之间的对应关系

image.png

3.2 父类函数的编写

image.png
image.png

3.3 站点函数的编写

image.png

3.3.1示例函数一: post请求

ps:定义的函数名若与excel的sheet名保持一致,则函数名不能超过31个字符
image.png

3.3.2示例函数二: delete请求 处理 api中 需用通过 ‘/‘ 进行拼接的

image.png

3.3.3示例函数三: 函数中调用其他函数时怎么操作

image.png

3.3.4示例函数四:需要返回请求的body时

image.png

3.4 PO的baseReq 的使用规范

3.4.1 HttpClient初始化部分

image.png

3.4.2 类中包含的方法

image.png

3.4.3 具体函数内部细节讲解

image.png

四. 配置文件以及相关其他配置的说明

4.1 Config配置文件模块目录

image.png

4.2 Config模块下base_conf模块,主要存放各个环境下相关站点的基础配置

image.png

4.3 Config模块下的base_header_conf模块,存放各个站点所公用的header

image.png

4.4 Config模块下的base_login_conf模块,存放各个站点登录所使用的账号密码相关信息

image.png

4.5 Config模块下的base_mongo_conf模块,存放Mongo数据库不同站点相关账号密码信息

image.png

4.6 Config模块下的base_mysql_conf模块,存放Mysql数据库不同站点相关账号密码信息

image.png

4.7 Config模块下的base_redis_conf模块,存放redis数据库不同站点相关账号密码信息

image.png

4.8 Config模块下的base_sign_conf模块,存放签名加密相关的公钥密钥相关信息

image.png

4.9 Config模块下的base_url_conf模块,存放各个站点接口的url路径

image.png
格式规范:
class 类名+Api:
# 接口路径说明
路径最后一个单词+_api = “接口url路径”

五. 如何编写场景case脚本

5.1 case层 该调用哪些东西

5.1 情况一 json文件中写的是以case.py为字典格式的场景

image.png

5.2 情况二 json文件中写的是以业务函数的body为格式的场景

这时候不需要导下面两个包
from Common.file_tool.base_file import getCurrent_filename from Common.file_tool.base_json import GetJsonDate

5.2 场景脚本迁移接口调用方法示例:

示例一

场景的json文件是通过工具把旧框架中的场景excel转成json格式的
>调用接口方法,传入的body是一个完整的body
>如果需要对resp进行断言,在脚本中可以做
image.png
需要注意的点:
image.png

示例二 json文件中传默认值, case中直接调取函数, 传值一部分变量参数

  1. 子类文件中 读取默认的json—body体

image.png

  1. 业务函数与json中的对应关系

image.png

  1. 具体case中的编写方式
  2. 示例1 Cases/VehicleCenter/sg/scenarioCases/Tserver/Test001_Tserver01.py

image.png

  1. 示例2 Cases/VehicleCenter/sg/scenarioCases/Tserver/Test002_Tserver02.py

image.png

六. 如何编写单接口case脚本

6.1新版的excel文件格式与老板的对比(图1:新版,图2:旧版):

新版excel删除 Req_type 和 Req_interface
>Req_platform字段 Operation 改为 OperationTest,app改为 appTest
>sheet_name 与我们定义好的接口方法函数名保持一致
image.png
image.png

6.2 单接口脚本迁移到新框架

6.2.1 前置条件

编写好模块的接口url文件和接口方法文件

6.2.2 修改excel文件

修改每个sheet的名字,使其与我们定义好的接口方法函数名保持一致
>不用删除 Req_type 和 Req_interface字段,但是以后新写的excel要删除这两个字段

6.2.2 编写python脚本

6.3新版的单接口脚本示例:

image.png
image.png

七. 如何去配置运行case脚本

7.1.运行环境文件CICD-env-xmlConf.xml,文件目录层级为:

站点:sg(东盟),欧盟(eu),俄罗斯(rus)
环境:Test 测试环境 ,Pre 预生产环境, Pro 生产环境 例子如下图:
image.png

7.2 cicd-job怎么配置

image.png

八. run入口函数的讲解

8.1 cicd入口函数-代码讲解

命令行执行命令
python suits_runner.py -w=True —env=sg —proj=VehicleCenter —reruns=2 —delay=2 —timeout=120
image.png

8.2 冒烟入口函数-代码讲解

命令行执行命令
python suits_runner.py —env=sg —proj=VehicleCenter —timeout=120 —reruns=0 —delay=2
image.png