【无标题】

上一篇我写了登录,我们发现json还是没有什么大问题,还蛮好用的,但是我们再写下一个,比如线索新建接口的时候,我们写着写着会发现问题:

我们写获取url的没有问题,代码如下:

# !/usr/bin/env python

# -*- coding: utf-8 -*-

# @Time : 2024/01

# @Author : Laopi

import json



import requests



from config.read_json_file import read_json_file

from config.setting import ConfigHandler

from tools.yamlControl import GetYamlData



baseUrl = GetYamlData(ConfigHandler.config_path).get_yaml_data()



jsonpath = (ConfigHandler.root_path+'/testdata/demo2.json')

# 读取JSON文件

url = baseUrl['host']+read_json_file(jsonpath)['url']

print(url)

下一个我们要获取的是headers,但是有个问题,这次的headers传值不像之前的登录,他还要传递登录获取的令牌cookie

headers={"Content-Type":"application/json","Admin-Token":cookie}

怎么办?我们只有调用之前的tokenCreate.py把生成的Admin-Token写入到demo2.json中,由次,我们开始编写json写入的程序代码

file_path = ConfigHandler.root_path+'/testdata/demo2.json'

print(file_path)

data = read_json_file(jsonpath)

data['headers']['Admin-Token']=get_token()

with open(file_path, 'w') as file:

json.dump(data, file)

上一步中,第一行代码是获取文件路径

在通过读取之前的json文件,通过代码

data['headers']['Admin-Token']=get_token()

将最新获取的token写入文件。

最后形成的文件内容如下:

{"url": "/CrmLeads/addOrUpdate", "method": "POST", "headers": {"Content-Type": "application/json", "Admin-Token": "44669243e3ff4151a37456913a6b7ec1"}, "casedata": [[{"entity": {"leads_name": "\u6536\u5230\u5c31\u597d2", "telephone": "15991710522", "mobile": "15991710522", "address": "111", "next_time": "2024-01-08 00:00:00", "remar

你可能感兴趣的:(接口自动化测试,python,数据库,前端,软件测试,自动化测试,自动化)