pytest_lean2.py
#coding=utf-
import pytest
import os
import sys
import time
import json
sys.path.append("/".join(os.path.dirname(os.path.abspath(__file__)).split("/")[:-])+"/lib")
import requests
sys.path.append("/".join(os.path.dirname(os.path.abspath(__file__)).split("/")[:-]))
from util.getinfolib import getinfo
import logging,sys log = logging.getLogger(__name__) class TestUM: '''
setup_class**********>
setup_method##########>>
setup---------->
teardown---------->
teardown_method##########>>
teardown_class**********>
'''
def setup(self):
print ("setup---------->")
def teardown(self):
print ("teardown---------->")
def setup_class(self):
self.dic={}
self.url_1=getinfo().go()
self.headers={
'Accept': 'application/json, text/plain, */*'
,'client': 'Web'
,'Content-Type': 'application/json;charset=UTF-8'
,'Origin': self.url_1
,'Referer': self.url_1
,'token': 'NGKPaLge8urbOlOAuHasURwYP4AKQIo8O1zad5F3vLA='
,'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36'
}
print ("\nsetup_class**********>")
def teardown_class(self):
print ("teardown_class**********>")
def setup_method(self, method):
print ("setup_method##########>>")
def teardown_method(self, method):
print ("teardown_method##########>>") def get_company_id(self,url,type,companyName):
payload={
"companyType":type,
"companyStatus":"",
"hasEnv":"",
"hasDevice":"",
"page": ,
"size": ,
"companyName":""
}
r = requests.get(url, params=payload,headers=self.headers)
assert r.status_code==
assert r.json()['code']== company_list=r.json()["data"]['content']
for i in company_list:
if(i["companyName"]==companyName):
if(type==):
self.dic["waste_company_id"]=i["id"]
elif(type==):
self.dic["consumer_company_id"]=i["id"]
elif(type==):
self.dic["transport_company_id"]=i["id"]
elif(type==):
self.dic["operate_company_id"]=i["id"]
else:
self.dic["charge_company_id"]=i["id"]
break # kaptcha
def test_kaptcha(self): url=self.url_1+"/login/kaptcha"
payload = {}
r = requests.get(url, params=payload) assert r.status_code==
# login
def test_login_pc(self): url=self.url_1+"/login/pc"
payload = {"userName":"abc","passWord":"","kaptcha":""}
r = requests.get(url, params=payload)
self.dic["token"]=r.json()['data']['token']
self.dic["t"]=time.strftime("%Y%m%d%H%M%S", time.localtime())
self.headers["token"]=self.dic["token"] assert r.status_code==
assert r.json()['code']== # add_waste_company
def test_add_waste_company(self): url=self.url_1+"/companies"
payload={"companyName":"test产废单位","companyType":,"companyLinkman":"小明","companyPhone":"","address":{"province":,"city":,"area":,"street":,"detail":"东京市红高粱村"},"gpsLocation":"130,40","email":"ewew@qq.com","businessLicenceUrl":r"http://test-icloudeep-img.oss-cn-beijing.aliyuncs.com/module/uploads/cd7288dfc50f4a25ba15929e685a7f10.jpeg","nearWater":,"industryType":"mouldOfPlastics","companyStatus":"",'companyDesc':'原料'}
payload["companyName"]=payload["companyName"]+self.dic["t"]
payload["companyLinkman"]=payload["companyLinkman"]+self.dic["t"]
payload["companyDesc"]=payload["companyDesc"]+self.dic["t"] #带有嵌套的字典,需要转换为json传输
r = requests.post(url, data=json.dumps(payload),headers=self.headers) assert r.status_code==
assert r.json()['code']== #获取单位ID
self.get_company_id(url,payload["companyType"],payload["companyName"]) # add_trans_company
def test_add_trans_company(self): url=self.url_1+"/companies"
payload={"companyName":"test运输单位","companyType":,"companyLinkman":"小明","companyPhone":"","address":{"province":,"city":,"area":,"street":,"detail":"东京市红高粱村"},"gpsLocation":"132,26","email":"swded@qq.com","businessLicenceUrl":"http://test-icloudeep-img.oss-cn-beijing.aliyuncs.com/module/uploads/62c0eb0f821141cda92ffcec25d4208d.jpeg","remark":"备注"}
payload["companyName"]=payload["companyName"]+self.dic["t"]
payload["companyLinkman"]=payload["companyLinkman"]+self.dic["t"]
payload["remark"]=payload["remark"]+self.dic["t"] #带有嵌套的字典,需要转换为json传输
r = requests.post(url, data=json.dumps(payload),headers=self.headers) assert r.status_code==
assert r.json()['code']== #获取单位ID
self.get_company_id(url,payload["companyType"],payload["companyName"]) # add_consumer_company
def test_add_consumer_company(self): url=self.url_1+"/companies"
payload={"companyName":"test处置单位","companyType":,"companyLinkman":"小明","companyPhone":"","address":{"province":,"city":,"area":,"street":,"detail":"东京市红高粱村"},"gpsLocation":"132,23","email":"wqwq@qq.com","businessLicenceUrl":"http://test-icloudeep-img.oss-cn-beijing.aliyuncs.com/module/uploads/c36c0e66b9954761a90aba9f5b19c71d.jpeg","remark":"备注","nearWater":""}
payload["companyName"]=payload["companyName"]+self.dic["t"]
payload["companyLinkman"]=payload["companyLinkman"]+self.dic["t"]
payload["remark"]=payload["remark"]+self.dic["t"] #带有嵌套的字典,需要转换为json传输
r = requests.post(url, data=json.dumps(payload),headers=self.headers) assert r.status_code==
assert r.json()['code']== #获取单位ID
self.get_company_id(url,payload["companyType"],payload["companyName"]) # add_charge_company
def test_add_charge_company(self): url=self.url_1+"/companies"
payload={"companyName":"test监管单位","companyType":,"companyLinkman":"小明","companyPhone":"","address":{"province":,"city":,"area":,"street":,"detail":"东京市红高粱村"},"gpsLocation":"132,22","email":"swsq@qq.com","businessLicenceUrl":"http://test-icloudeep-img.oss-cn-beijing.aliyuncs.com/module/uploads/f448cc7669cf45eda56b6181d1bd20b7.jpeg","remark":"备注","adminArea":{"wholeCountry":"false","province":,"city":"","area":"","street":""}}
payload["companyName"]=payload["companyName"]+self.dic["t"]
payload["companyLinkman"]=payload["companyLinkman"]+self.dic["t"]
payload["remark"]=payload["remark"]+self.dic["t"] #带有嵌套的字典,需要转换为json传输
r = requests.post(url, data=json.dumps(payload),headers=self.headers) assert r.status_code==
assert r.json()['code']== #获取单位ID
self.get_company_id(url,payload["companyType"],payload["companyName"]) # add_operate_company
def test_add_operate_company(self): url=self.url_1+"/companies"
payload={"companyName":"test运营单位","companyType":,"companyLinkman":"小明","companyPhone":"","address":{"province":,"city":,"area":,"street":,"detail":"东京市红高粱村"},"gpsLocation":"132,26","email":"deswaq@qq.com","businessLicenceUrl":"http://test-icloudeep-img.oss-cn-beijing.aliyuncs.com/module/uploads/7a4c448f9ec349a496d414440f42f09f.jpeg","remark":"备注","adminArea":{"wholeCountry":"false","province":,"city":,"area":"","street":""}}
payload["companyName"]=payload["companyName"]+self.dic["t"]
payload["companyLinkman"]=payload["companyLinkman"]+self.dic["t"]
payload["remark"]=payload["remark"]+self.dic["t"] #带有嵌套的字典,需要转换为json传输
r = requests.post(url, data=json.dumps(payload),headers=self.headers) assert r.status_code==
assert r.json()['code']== #获取单位ID
self.get_company_id(url,payload["companyType"],payload["companyName"]) # add_wasteinfo_company def test_add_wasteinfo_company(self):
url=self.url_1+"/companies/"+self.dic["waste_company_id"]+"/declarations/producer"
payload={"wasteInfo":[{"wasteType":"HW09","wasteCode":"900-005-09","customWasteName":"废乳化液","yearDeclare":"","consumerId":"20191126200118230CP515590"}]}
payload["wasteInfo"][]["consumerId"]=self.dic["consumer_company_id"]
#带有嵌套的字典,需要转换为json传输
r = requests.post(url,data=json.dumps(payload),headers=self.headers)
log.info(r.json())
assert r.status_code==
assert r.json()['code']==

调用命令

pytest pytest_lean2.py -o log_cli=true -o log_cli_level=INFO

参考:

https://www.cnblogs.com/landhu/p/9910460.html

pytest 打印调试信息的更多相关文章

  1. STM32M CUBE实现printf打印调试信息以及实现单字节接收

    在写单片机程序时我们一般喜欢使用printf来通过串口打印调试信息,但这个函数是不能够直接使用的.必须做点对库函数的修改. 具体project下载地址: http://download.csdn.ne ...

  2. debug.js在手机上打印调试信息

    在做移动端开发的时候大家应该都遇到过这么一个问题:如何在手机上打印调试信息? 在pc端我们通常会用console.log 或者 alert,但大家知道console.log在手机上是看不到打印信息的: ...

  3. rpm命令如何打印调试信息?

    问题描述: 今天在做rpm相关操作的时候,发现报错,并且还不知道如何入手来解决问题,就左查右查的问题还是没有解决,后来就想,rpm能否打印debug信息,然后也百度了,也没有找到,后来想我为啥不看看r ...

  4. NDK编程中如何在C文件中打印调试信息

      1,在Android.mk文件中加上 LOCAL_LDLIBS := -L$(SYSROOT)/usr/lib -llog LOCAL_PATH := $(call my-dir)include ...

  5. Android Studio 打印调试信息

    转自:https://www.2cto.com/kf/201611/569468.html 之前开发单片机软件还是上位机都习惯使用printf(),相信很多很会有和我一样的习惯.开始学习安卓了,当然也 ...

  6. VC++6.0 打印调试信息

    1.在MFC中加入TRACE语句 2.在TOOLS->MFC TRACER中选择 “ENABLE TRACING”点击OK 3.进行调试运行,GO(F5)(特别注意:不是执行‘!’以前之所以不能 ...

  7. QT+VS中使用qDebug()打印调试信息无法显示

    首先右键点击项目名称,找到最后一项属性 然后依次设置为如图所示即可 再次编译后,会弹出CMD窗口,出现qDebug的调试信息.

  8. Logcat打印调试信息

    Android Logcat调试中的V.D.I.W.E的分别代表什么? Log.v -- 黑色 -- verbose infoLog.d -- 蓝色 -- debug infoLog.i -- 绿色 ...

  9. [ios2]iphone编程中使用封装的NSLog来打印调试信息 【转】

    使用NSLog的一个风险是:它的运行会占用时间和设备资源. 简单而粗暴的解决方案是:在release前,将所有的NSLog注释掉.简单有效,但副作用是:下次你要调试时,又得将NSLog一个个取消注释. ...

随机推荐

  1. 图解微信小程序---添加tabBar底部菜单,添加已做好轮播图操作

    图解微信小程序---添加tabBar底部菜单,添加已做好轮播图操作 什么是tabBar? 顶部或者底部tab栏如果小程序是一个多 tab 应用(客户端窗口的底部或顶部有 tab 栏可以切换页面),可以 ...

  2. com.fasterxml.jackson.core.JsonGenerationException: Can not write a field name, expecting a value异常

    springboot对象返回,一直报生成json异常,经过检查,发现是自己在做xss防护时对出参进行了json的处理(copy代码不可取,囧) 异常信息 这里进行了出参处理了,但实际上只要对入参处理就 ...

  3. Java匹马行天下之JavaSE核心技术——注解

    Java注解 一.什么是注解 注解(Annotation)相当于一种标记,在程序中加入注解就等于为程序打上某种标记,没有加,则等于没有任何标记,以后,javac编译器.开发工具和其他程序可以通过反射来 ...

  4. moodle3.7中文语言包

    Moodle官方有中文语言包,但是还有没有翻译的,为了提高用户体验,可以将部分未翻译的应用在Moodle网站管理中自己修改. 具体步骤: 先确定需要修改的关键字,也就是网站中没有翻译成中文的文字 在c ...

  5. Bootstrap3-导航条

    1. 定义导航条 <!-- 导航条 navbar --> <div class="navbar nav-bar-default"> <ul class ...

  6. mpvue 小程序开发之 数据埋点统计

    mpvue 小程序开发之 数据埋点统计 在开发过程中,有数据统计的需求,需要获取小程序当前页面和来源页面的数据,以及页面的停留时间 在对小程序api进行了一番研究之后,发现获取这些数据其实并不难 当前 ...

  7. php+Apache2+Nginx+Mysql

        Nginx         1.安装Nginx     sudo apt-get clean     sudo apt-get update     sudo apt-get install ...

  8. current transaction is aborted, commands ignored until end of transaction block

    current transaction is aborted, commands ignored until end of transaction block Error updating datab ...

  9. nginx之旅(第三篇):代理、正向代理、反向代理、代理的原理、nginx反向代理场景、nginx反向代理配置、nginx反向代理语法

    一.代理服务与反向代理 什么是代理服务 代理-代理办理(代理理财.代理收货.代理购物等等). 一般情况下,如果没有特别说明,代理技术默认说的是正向代理技术.关于正向代理的概念如下: 正向代理(forw ...

  10. Python 基础总结篇

    变量及数据类型 Numbers数字分为:int整型,long长整型,float浮点型,complex复数 String字符串由数字.字母.下划线组成的一串字符,用于表示文本的数据类型 bool布尔型: ...