黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

關(guān)于Python自動(dòng)化測(cè)試項(xiàng)目部署到Jenkins構(gòu)建時(shí)出現(xiàn)的中文亂碼問(wèn)題

系統(tǒng) 3438 0

首先只要遇到提示GBK、UTF-8或亂碼顯示字樣等,這些肯定是編碼問(wèn)題。為了解決問(wèn)題還特意了解了下UTF-8 與GBK之間的區(qū)別和關(guān)系 。修改file.encoding系統(tǒng)變量編碼為UTF-8

問(wèn)題情景:

python腳本已經(jīng)調(diào)通過(guò)的自動(dòng)化項(xiàng)目,部署到Jenkins上后,使用jenkins構(gòu)建,控制臺(tái)print輸出報(bào)錯(cuò),如下圖:

控制臺(tái)輸出:

關(guān)于Python自動(dòng)化測(cè)試項(xiàng)目部署到Jenkins構(gòu)建時(shí)出現(xiàn)的中文亂碼問(wèn)題與特殊字符導(dǎo)致的“GBK”編碼問(wèn)題_第1張圖片

分析問(wèn)題:

我們知道,windows的控制臺(tái)默認(rèn)編碼就是'GBK',而我們代碼編碼格式是utf-8,因?yàn)镴enkins會(huì)默認(rèn)讀取當(dāng)前系統(tǒng)的編碼格式,這樣就會(huì)導(dǎo)致Jenkins構(gòu)建時(shí)中文亂碼或報(bào)GBK轉(zhuǎn)碼問(wèn)題,如上圖的報(bào)錯(cuò)問(wèn)題:'\u20ac'實(shí)際就是特殊字符'€'的轉(zhuǎn)碼格式。所以一切都是windows的控制臺(tái)默認(rèn)編碼GBK問(wèn)題。哪么我們知道,只要統(tǒng)一他的讀寫(xiě)格式,省去Jenkins與python中間轉(zhuǎn)碼哪就能解決這個(gè)問(wèn)題。

搜索解決辦法:

果斷百度一下,按照設(shè)置全局配置那里設(shè)置LANG :zn_CH.utf-8 ,結(jié)果無(wú)效。

關(guān)于Python自動(dòng)化測(cè)試項(xiàng)目部署到Jenkins構(gòu)建時(shí)出現(xiàn)的中文亂碼問(wèn)題與特殊字符導(dǎo)致的“GBK”編碼問(wèn)題_第2張圖片

?

查看了一下,系統(tǒng)管理--->系統(tǒng)信息--->系統(tǒng)屬性的第三行可以看到系統(tǒng)編碼格式為GBK。

            
              注解:
file.encoding主要管理的是文件中的編碼?
sun.jnu.encoding 主要負(fù)責(zé)文件名類(lèi)的編碼
            
          

關(guān)于Python自動(dòng)化測(cè)試項(xiàng)目部署到Jenkins構(gòu)建時(shí)出現(xiàn)的中文亂碼問(wèn)題與特殊字符導(dǎo)致的“GBK”編碼問(wèn)題_第3張圖片

網(wǎng)上查了下,大部分是說(shuō)這個(gè)是java層面的編碼問(wèn)題,所以在jenkins 里設(shè)置半天并沒(méi)效果下。所以查了下file.encoding、sun.jnu.encoding?的GBK編碼修改成UTF-8的方法,如下:

在操作系統(tǒng)變量里添加啟動(dòng)參數(shù):?

            
              1.打開(kāi)環(huán)境變量設(shè)置?
2.注意是新建,不是在什么path中新加,?
直接新建一個(gè)變量名為JAVA_TOOL_OPTIONS?
變量值為 -Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8
            
          

保存后并重啟Jenkins(重啟命令:restart)

查看Jenkins系統(tǒng)屬性果真修改成功了。但是新問(wèn)題又來(lái)了,我重新構(gòu)建了下我的項(xiàng)目發(fā)現(xiàn)仍然報(bào)錯(cuò),而且還出現(xiàn)了中文亂碼。

關(guān)于Python自動(dòng)化測(cè)試項(xiàng)目部署到Jenkins構(gòu)建時(shí)出現(xiàn)的中文亂碼問(wèn)題與特殊字符導(dǎo)致的“GBK”編碼問(wèn)題_第4張圖片

最終解決辦法:

后面我想了下,網(wǎng)上大部分是說(shuō)這個(gè)是java層面的編碼問(wèn)題,哪可能是他們的自動(dòng)化項(xiàng)目本來(lái)就是Java所寫(xiě)呀,所以我以上操作只能針對(duì)Java項(xiàng)目的編碼。對(duì)于?python自動(dòng)化測(cè)試項(xiàng)目在jenkins 里構(gòu)建并沒(méi)有效果。同理,我們添加一個(gè)Python變量就可以了。

在操作系統(tǒng)變量里添加啟動(dòng)參數(shù):?

            
              1.打開(kāi)環(huán)境變量設(shè)置?
2.注意是新建,不是在什么path中新加,?
直接新建一個(gè)變量名為PYTHONIOENCODING
變量值為 UTF8
            
          

好了,重啟Jenkins就可以啦,快構(gòu)建試試吧

關(guān)于Python自動(dòng)化測(cè)試項(xiàng)目部署到Jenkins構(gòu)建時(shí)出現(xiàn)的中文亂碼問(wèn)題與特殊字符導(dǎo)致的“GBK”編碼問(wèn)題_第5張圖片

注意:PYTHONIOENCODING這個(gè)變量是最主要的


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論