python 接口测试 如何写配置文件_python接口自动化测试 - configparser配置文件解析器详细使用...
configparser簡介
ConfigParser模塊已在Python 3中重命名為configparser
該模塊定義了ConfigParser類。 ConfigParser類實現一種基本的配置文件解析器語言,該語言提供的結構類似于?.ini?文件中的結構
ini文件相關知識
鍵值對可用?=?或者?:?進行分隔
section?的名字是區分大小寫的,而?option?的名字是不區分大小寫的
鍵值對中頭部和尾部的空白符會被去掉
值可以為多行
配置文件可以包含注釋,注釋以?#?或者?;?為前綴
ini文件示例
[server]
age = 45
username = yes
# server就是section
# age、username就是option
操作ini文件
認準三部曲
實例化ConfigParser類
讀取配置文件
操作配置文件
基礎代碼
1 import configparser
2
3 filename = 'F:/Interface/config/server.ini'
4 # 實例化configparser
5 config = configparser.ConfigParser()
6
7 # 讀取配置文件
8 config.read(filename, encoding="utf-8-sig")
9
10 # 獲取某個option的值(最常見的操作)
11 config.get(section="server", option="username")
包含知識點
當你配置文件有中文時,在調用?read()?方法時,需要傳?encoding="utf-8-sig"?參數
最常見的操作就是?get(section,option,fallback="默認值")?,獲取某個option的值,當然也可以傳個?fallback?,當你的option不存在的時候,就會返回fallback的值
configparser封裝類
為了更好的復用configparser,我們將常用的方法寫成一個封裝類
1 #!/usr/bin/env python
2 # -*- coding: utf-8 -*-
3
4 """
5 __title__ = 操作配置文件工具類
6 """
7
8 import configparser
9
10
11 class ConfigUtil:
12 # 實例化configparser
13 config = configparser.ConfigParser()
14
15 def read(self, filename):
16 """
17 讀取配置文件
18 :param filename: 配置文件路徑
19 """
20 self.config.read(filename, encoding="utf-8-sig")
21
22 def get(self, _options, _section='server'):
23 """
24 獲取某個options值
25 :param _options: option
26 :param _section: section
27 """
28 try:
29 # 方式一:調用方法
30 value = self.config.get(section=_section, option=_options, fallback="默認值,key不存在則返回此值")
31
32 # 方式二:索引
33 value = self.config[_section][_options]
34 except Exception as e:
35 print("沒有獲取到值")
36 value = None
37 return value
38
39 def get_options_key_value(self, _section):
40 """
41 以列表(name,value)的形式返回section中的每個值
42 :param _section: 某個section
43 :return: list[tuple(key,value)]
44 """
45 return self.config.items(_section)
46
47 def get_all_section(self):
48 """
49 獲取所有section
50 """
51 return self.config.sections()
52
53 def get_options_by_section(self, _section):
54 """
55 獲取section下所有可用options
56 """
57 # 方式一
58 keys = []
59 for _options in self.config[_section]:
60 keys.append(_options)
61
62 # 方式二(推薦)
63 keys = self.config.options(_section)
64 return keys
65
66 def assert_section_in_config(self, _section):
67 """
68 判斷section是否存在
69 :param _section: 需要判斷的section
70 """
71 return _section in self.config
72
73 def assert_options_in_section(self, _section, _options):
74 """
75 判斷options是否存在某個section中
76 :param _section: 某個section
77 :param _options: 需要判斷的options的key值
78 """
79 return _options in self.config[_section]
80
81
82 configUtil = ConfigUtil()
83
84 if __name__ == '__main__':
85 filename = 'F:/imocInterface/config/server.ini'
86 configUtil.read(filename)
87 print(configUtil.get("username"))
88 print(configUtil.get_all_section())
89 print(configUtil.assert_section_in_config("server"))
90 print(configUtil.get_options_by_section("server"))
91 print(configUtil.assert_options_in_section("server", "usernsame"))
92 print(configUtil.get_options_key_value("server"))
關于找一找教程網
本站文章僅代表作者觀點,不代表本站立場,所有文章非營利性免費分享。
本站提供了軟件編程、網站開發技術、服務器運維、人工智能等等IT技術文章,希望廣大程序員努力學習,讓我們用科技改變世界。
[python接口自動化測試 - configparser配置文件解析器詳細使用]http://www.zyiz.net/tech/detail-102831.html
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的python 接口测试 如何写配置文件_python接口自动化测试 - configparser配置文件解析器详细使用...的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: PHP的rm指令,git rm 命令
- 下一篇: angularjs html 缓存,如何
