import jsonpath
import requests
from pet_shop.utils.log_utils import logger
class TestPetstorePetManager:
def setup_class(self):
self.base_url = "https://petstore.swagger.io/v2/pet"
self.search_url = self.base_url+"/findByStatus"
self.pet_id=9223372000001084222
self.delete_url = self.base_url+"/{petId}"
self.pet_status = "available"
self.add_pet_info={
"id": 9223372000001084222,
"category": {
"id": 1,
"name": "cat"
},
"name": "miao",
"photoUrls": [
"string"
],
"tags": [
{
"id": 5,
"name": "string"
}
],
"status": self.pet_status
}
self.update_name="miao_girl"
self.update_pet_info={
"id": self.pet_id,
"category": {
"id": 1,
"name": "cat"
},
"name": self.update_name,
"photoUrls": [
"string"
],
"tags": [
{
"id": 5,
"name": "string"
}
],
"status": self.pet_status
}
self.search_params = {
"status": self.pet_status
}
self.proxy = {
"http": "http://127.0.0.1:8888",
"https": "http://127.0.0.1:8888"
}
def test_add_pet(self):
add_r=requests.post(self.base_url,json=self.add_pet_info,proxies=self.proxy,verify=False)
logger.info(f"新增宠物宠物接口响应:{add_r.text}")
assert add_r.status_code==200
search_r=requests.get(self.search_url,params=self.search_params,proxies=self.proxy,verify=False)
logger.info(f"查询宠物宠物接口响应:{search_r.text}")
assert search_r.status_code==200
assert self.pet_id in jsonpath.jsonpath(search_r.json(), "$..id")
update_r=requests.put(self.base_url,json=self.update_pet_info,proxies=self.proxy,verify=False)
logger.info(f"更改宠物宠物接口响应:{update_r.text}")
assert update_r.status_code==200
assert self.update_name in jsonpath.jsonpath(search_r.json(), "$..name")
delete_r=requests.delete(self.delete_url,proxies=self.proxy,verify=False)
logger.info(f"删除宠物宠物接口响应:{delete_r.text}")
assert delete_r.status_code==200
assert self.pet_id not in jsonpath.jsonpath(search_r.json(), "$..id")
python
运行