现如今,python自动化越发不可收拾,下面我给大家说下关于自动化框架之全局变量的设计,我们可以采用ini文件存储易变参数,然后接口与ini交互,最后呈现于脚本中,这样当产品或者版本更换时候,就仅仅更改ini参数即可。话不多说,代码敬上;
#-*-coding:utf-8 -*-
[device1]
app_path=....
app_activity=...
app_version=...
[main_page]
my=....
skill=...
about=...
然后运用python的configparser库进行解析;
import configparser,codecs,chardet,re,os,sys
from io import StringIO
class ReadIni:
def __init__(self):
self.file_path=..... #指定ini文件路径
self.data=self.read_ini()
#去掉配置文件开头的BOM字节
def remove_BOM(self):
with open(self.file_path,encoding='utf-8') as f:
content=f.read()
content=re.sub(r"\xfe\xff","",content)
content=re.sub(r"\xff\xfe","",content)
content=re.sub(r"\xef\xbb\xbf","",content)
with open(self.file_path,'\w',encoding='utf-8') as f2:
f2.write(content)
f2.close()
def read_ini(self):
self.remove_BOM()
read_ini=configparser.ConfigParser()
read_ini.read(self,file_path,encoding='utf-8')
return read_ini
#通过key获取对应的value
def get_value(self,key,section)
try:
value=self.data.get(section,key)
except:
print("ini文件中并未存在应有的参数,请检查key和section的正确性!")
value=None
return value
key,section就对应ini中的app_path,device1的关系
这样value就是咱们要用到的值了,然后封装进你想实现的接口即可!