淘宝联盟推广网站怎么建设,欧洲乌克兰,中石油网页设计与网站建设,怎么做网赌网站目录
引言
configparser模块功能介绍 引言 在编写接口自动化测试脚本时#xff0c;有时我们需要在代码中定义变量并给变量固定的赋值。为了统一管理和操作这些固定的变量#xff0c;咱们一般会将这些固定的变量以一定规则配置到指定的配置文件中#xff0c;后续需要用到这…目录
引言
configparser模块功能介绍 引言 在编写接口自动化测试脚本时有时我们需要在代码中定义变量并给变量固定的赋值。为了统一管理和操作这些固定的变量咱们一般会将这些固定的变量以一定规则配置到指定的配置文件中后续需要用到这些变量和变量值时通过代码读取或者写入数据到该配置文件即可使用配置文件的好处就是不用在程序中写死可以使程序更灵活。因而对于python语言就封装了configparser模块用来处理指定格式的文件(文件名称一般为xxx.ini)配置文件的格式跟windows下的ini配置文件相似可以包含一个或多个节(section), 每个节可以有多个参数键值。 注目前python3版本操作配置文件模块名称变更为configparser原有的python2版本配置文件模块名称变更为ConfigParser
configparser模块功能介绍 configparser模块主要封装提供了ConfigParser()类、RawConfigParser()类、SafeConfigParser()类等如下图导入configparser模块可以查看并使用模块下已经封装好的所有类 在configparser模块中主要还是使用封装的ConfigParser()类提供的方法来操作配置文件对配置文件进行数据读取和写入等。
具体的该模块python官网对其有完整的介绍configparser — Configuration file parser — Python 3.11.4 documentation
配置文件的格式如下
中括号“[ ]”内包含的为section。 section 下面为类似于key-value 的配置内容一般是用赋值符“”分隔。 示例 读取配置文件及其常用读取指定数据方法 ConfigParser()类提供了操作读取配置文件、读取指定配置文件中section、section下的所有key-value等方法具体方法使用如下 代码示例 运行以上代码输出如下 写入配置文件增删改操作及其提供的操作方法 ConfigParser()类提供了写入修改配置文件数据等方法具体方法使用如下 在配置文件编辑如下信息 编辑如下代码
import configparserconf configparser.ConfigParser()conf.read(rG:\api_test\configfile.ini,encodingutf-8)conf.set(code, code, 6666) # 修改指定section 的optionconf.set(code, age, 123) # 增加指定section 的optionconf.has_section(code)conf.has_option(code,age)#conf.remove_section(test)#conf.remove_option(test,haha)if test not in conf.sections():conf.add_section(test) # 增加sectionconf.set(test, haha, 123) # 给新增的section 写入optionfile open(rG:\api_test\configfile.ini, w,encodingutf-8)conf.write(file)file.close()
运行结束后如下 编辑修改配置文件记得关闭配置文件。
通过以上使用ConfigParser()类提供读写配置文件的相关方法就可以比较方便的操作配置文件。but以上向配置文件读取和写入数据到配置文件的代码并没有进行封装。由于经常需要使用配置文件进行数据读取和写入因此建议将操作配置文件读写的操作封装成公共的模块。如操作读取配置文件的数据的封装配置文件内容如下 新建read_config.py文件封装的读取配置文件的代码实例如下
import configparserimport osclass ReadConfig():def __init__(self, filepathNone):root_dir os.path.dirname(os.path.abspath(.)) # 获取项目主路径# print(打印,root_dir)configpath os.path.join(root_dir, configfile.ini) # 拼接路径# print(得到的路径为,configpath)self.cf configparser.RawConfigParser()self.cf.read(configpath,encodingutf-8)def get_cookie(self, param):value self.cf.get(cookie, param)return valuedef get_sheet(self,param):value self.cf.get(sheet,param)return valuedef get_mysql(self,param):value self.cf.get(mysql,param)return valuedef get_code(self,param):value self.cf.get(code,param)return value 这样封装成类后后续其他模块需要读取配置文件数据就可以不用重复写读取配置文件的代码直接引入该封装的类并实例化对象调用类里面封装的方法即可。 最后感谢每一个认真阅读我文章的人看着粉丝一路的上涨和关注礼尚往来总是要有的虽然不是什么很值钱的东西如果你用得到的话可以直接拿走 些资料对于【软件测试】的朋友来说应该是最全面最完整的备战仓库这个仓库也陪伴上万个测试工程师们走过最艰难的路程希望也能帮助到你!
在我的QQ技术交流群里技术交流和资源共享广告勿扰