api: 存储测试接口
conftest.py :设置前置操作
目前前置操作:1、获取token并传入headers,2、获取命令行参数给到环境变量,指定运行环境
commmon:存储封装的公共方法
connect_mysql.py:连接数据库
http_requests.py: 封装自己的请求方法
logger.py: 封装输出日志文件
read_yaml.py:读取yaml文件测试用例数据
read_save_data.py:读取保存的数据文件
case: 存放所有的测试用例
data:存放测试需要的数据
save_data: 存放接口返回数据、接口下载文件
test_data: 存放测试用例依赖数据
upload_data: 存放上传接口文件
logs: 存放输出的日志文件
report: 存放测试输出报告
getpathinfo.py :封装项目测试路径
pytest.int :配置文件
requirement.txt: 本地python包(pip install -r requirements.txt 安装项目中所有python包)
run_main.py: 项目运行文件
# 结构设计
1.每一个接口用例组合在一个测试类里面生成一个py文件
2.将每个用例调用的接口封装在一个测试类里面生成一个py文件
3.将测试数据存放在yml文件中通过parametrize进行参数化,实现数据驱动
4.通过allure生成测试报告
## 代码展示
api/api_service.py #需要测试的一类接口
‘’’
Code description:服务相关接口
Create time: 2020/12/3
Developer: 叶修
‘’’
import os
from common.http_requests import HttpRequests
class Api_Auth_Service(object):
def __init__(self):
self.headers = HttpRequests().headers
def api_home_service_list(self):
# 首页服务列表
# url = "http://192.168.2.199:9092/v1/auth/auth_service/findAuthService"
url = os.environ["host"] + "/v1/auth/auth_service/findAuthService" # 读取conftest.py文件地址进行拼接
response = HttpRequests().get(url, headers=self.headers, verify=False)
# print(response.json())
return response
def get_service_id(self):
#获取银行卡三要素认证服务id
url = "http://192.168.2.199:9092/v1/auth/auth_service/findAuthService"
#url = os.environ["host"] + "/v1/auth/auth_service/findAuthService" # 读取conftest.py文件地址进行拼接
response = HttpRequests().get(url,headers=self.headers)
#print(response.json()['data'][0]['service_list'][0]['id'])
service_id = response.json()['data'][0]['service_list'][1]['id']
return service_id
def api_service_info(self,serviceId='0b6cf45bec757afa7ee7209d30012ce1',developerId=''):
#服务详情
body = {
"serviceId" :serviceId,
"developerId":developerId
}
url = "http://192.168.2.199:9092/v1/auth/auth_service/findServiceDetail"
#url = os.environ["host"] + "/v1/auth/auth_service/findServiceDetail"#读取conftest.py文件地址进行拼接
response = HttpRequests().get(url,headers=self.headers,params = body,verify=False)
#print(response.json())
return response
def api_add_or_update_service(self,api_param_req,api_param_res,description,error_code,icon,id,interface_remarks,
name,product_info,request_method,sample_code,sort,type,url):
#服务添加或者更新
body={
"api_param_req": api_param_req,
"api_param_res": api_param_res,
"description": description,
"error_code": error_code,
"icon": icon,
"id": id,
"interface_remarks": interface_remarks,
"name": name,
"product_info": product_info,
"request_method": request_method,
"sample_code": sample_code,
"sort": sort,
"type": type,
"url": url,
}
#url = "http://192.168.2.199:9092/v1/auth/auth_service/insertOrUpdateService"
url = os.environ["host"] + "/v1/auth/auth_service/insertOrUpdateService" # 读取conftest.py文件地址进行拼接
response = HttpRequests().post(url,json=body,headers=self.headers,verify=False)
return response
def api_add_service_price(self,id,max_number,money,service_id,small_number):
#服务价格添加
body = {
"id": id,
"max_number": max_number,
"money": money,
"service_id": service_id,
"small_number": small_number
}
# url = "http://192.168.2.199:9092/v1/auth/auth_service/insertServicePrice"
url = os.environ["host"] + "/v1/auth/auth_service/insertServicePrice" # 读取conftest.py文件地址进行拼接
response = HttpRequests().post(url, json=body, headers=self.headers, verify=False)
return response
def api_apply_service(self,developer_id,service_id):
#申请服务
body ={
"developer_id": developer_id,
"service_id": service_id
}
# url = "http://192.168.2.199:9092/v1/auth/auth_service/applyService"
url = os.environ["host"] + "/v1/auth/auth_service/applyService" # 读取conftest.py文件地址进行拼接
response = HttpRequests().post(url, json=body, headers=self.headers, verify=False)
return response
if name == ‘main’:
#Auth_Service().api_home_service_list()
Api_Auth_Service().get_service_id()
#Auth_Service().api_service_info()
api_service.py
**最后:下方这份完整的软件测试视频学习教程已经整理上传完成,朋友们如果需要可以自行免费领取 【保证100%免费】**
![](https://img-blog.csdnimg.cn/5de4729f538d4c8e8774f46cbc48891f.png#pic_center)
![在这里插入图片描述](https://img-blog.csdnimg.cn/1b48e1bf50c947a0b047dab446f9a23a.png#pic_center)