0

问题摘要:使用 Python 配置解析器包的问题,​​我们无法读取另一个类文件中的 init 文件的内容`

设想

a) 我有一个 properties.ini 文件,我在其中添加以下详细信息

[App]
QA_URL= https://ww.google.com
User_name = xxxx
password =xxxx

b)我有配置文件(configurations.py),我正在导入配置解析器包以读取ini文件的内容并将其存储为字典

import configparser

def getConfig():
    config = configparser.ConfigParser()
    config.read('properties.ini')
    return config

c) 我在另一个 python 类中导入配置文件并尝试读取字典值

inputdatasheet = "C:\\Python_Base_Framework\\TestData\\DemoFlow_data.xlsx"
 
 class Test_one(BaseClass):
    def test_e2e(self, getData):
        # Enable logging
        log = self.getLogger()
        # Launch and Login
        username = (getConfig()['App']['QA_UserName']).strip()
        password = (getConfig()['App']['QA_Password']).strip()
 

上面的代码给出了以下错误。需要帮助来解决这个问题

Error: 
Traceback (most recent call last):
  File "C:\Python_Base_Framework\tests\test_CreatePurchaseOrder.py", line 16, in <module>
    from utilities.configurations import *
  File "C:\Python_Base_Framework\utilities\configurations.py", line 11, in <module>
    'password': getConfig()['App']['QA_Password'],
  File "C:\Users\xxxxx\AppData\Local\Programs\Python\Python39\lib\configparser.py", line 960, in __getitem__
    raise KeyError(key)
KeyError: 'App'

注意:更改 config.read('properties.ini') 文件是我在读取 configuration.py 文件中的值时不会出错

只有当我尝试读取另一个类文件中的值时才会出现错误

4

0 回答 0