Jenkins運行python腳本出現 configparser.NoSectionError: No section: 'XXXXXX'


原來的代碼如下:

def get_test_config(tag, key, config="config.ini"):
    cf = configparser.ConfigParser()
    cf_path = os.getcwd()
    cf_path = os.path.join(cf_path, config)
    cf.read(cf_path)
    value = cf.get(tag, key)
    return value

可以看到,這里使用了 getcwd(),就是獲取當前工作目錄(相對路徑),這個直接在pycharm上執行是沒問題,

當你使用Jenkins執行腳本時,是直接的cmd命令,命令並不會知道你的當前工作目錄,所以就會出現這個問題。

解決方案:把相對路徑改為絕對路徑

修改后的代碼如下:

def get_test_config(tag, key, config="config.ini"):
    cf = configparser.ConfigParser()
    cf_path = os.path.dirname(os.path.abspath(__file__))
    cf_path = os.path.join(cf_path, config)
    cf.read(cf_path)
    value = cf.get(tag, key)
    return value


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM