1.参数化
1.一个变量参数化
@pytest.mark.parametrize("password",["","opms123456"," opms123456"])
2.多个变量参数化:
@pytest.mark.parametrize("password,code",[("",0),("opms123456",1),(" opms123456",0)])
3.每个变量独立参数化
@pytest.mark.parametrize("names",["","libai","libai123"])
@pytest.mark.parametrize("password",["","opms123456"," opms123456"])
笛卡尔积乘积:3*3
4.打印调试
num = 20
value = "hello"
str+str
print(value+"world")
字符串直接引用变量:print(f"第一个值是:{num},第二个值是{value}")
1.强转成字符串:print("第一个值是:”+value+",第二个值是:"+str(num))
2.
字符串 %s :print("%s world"%value)
整型:%d : print("%d world"%num)
3.直接用f"{num}",用f引用变量,不用去考虑你取的是什么类型的值;
4.用字符串的format函数
print("我的第一个值是:{},我的第二个值是:{}".format(num,value))
D:\软件安装包\python\python.exe D:/软件安装包/python-project/opms/api/others/demo.py
hello world
hello world
hello world
20 world
我的第一个值是:20,我的第二个值是:hello
Process finished with exit code 0
1.去获取重定向的地址:
import requests
url="http://123.56.170.43:8888/project/manage?status=&keywords="
res = requests.get(url,allow_redirects=False)//禁止重定向:
print(res.headers)
打印:
{'Location': '/login', 'Set-Cookie': 'beegosessionID=d40d027cfab3c8244668cfd377692f80; Path=/; Expires=Sun, 23 Apr 2023 07:59:03 GMT; Max-Age=31536000; HttpOnly', 'Date': 'Sat, 23 Apr 2022 07:59:03 GMT', 'Content-Length': '29', 'Content-Type': 'text/html; charset=utf-8'}
打印出来后,取值,因为是字典,所以就是取键
print(res.headers['Location'])//获取重定向的url
2.参数化
com:存放公共的方法
os内置模块:获取文件路径
import os
1.# 获取文件路径
print(os.getcwd())
D:\软件安装包\python-project\opms\com //不会包括本身文件
2.获取当前文件所在路径:path1 = os.path.realpath(__file__)
path = os.path.abspath(__file__)
D:\软件安装包\python-project\opms\com\readTxt.py //包括文件本身
3.获取上一层目录
os.path.dirname()
# 获取当前路径上一层地址
os.path.dirname(os.getcwd())
4.# 路径拼接
print(path+"\conf\data.txt")
5.返回上一层,再上一层:
os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
6.
def getTxt(name="\conf\data.txt"):
# 1.先获取当前工程的绝对路径
# 2.工程绝对路径+文件相对路径
filepath = os.path.dirname(os.getcwd())+name
with open(filepath, 'r') as f:
res = f.readlines()
return res
7.封装读取txt方法:
放置在common,com里
提取出公共变量,文件地址
return数据
8.封装读取ini配置文件读取方法:
ini配置文件,sections(块【host】)options(选项,kv键值对)