1. 程式人生 > >robotframework執行時後臺報錯UnicodeDecodeError

robotframework執行時後臺報錯UnicodeDecodeError

UnicodeDecodeError :'utf-8' codec can't decode byte 0xb2 in position 244:invalid

這個錯誤我遇到過2次,這絕對RF中一個深坑,因為百度了很久也沒找到解決方案。


兩次出現的場景:

1.win10環境下,RF安裝好了,跑了一個簡單的log關鍵字,一跑就報UnicodeDecodeError錯誤。

2.使用了Evaluate關鍵字執行了python的一個檔案,跑起來控制檯顯示執行成功了,但並沒有輸出這個檔案的執行結果,後臺依舊報UnicodeDecodeError錯誤。

當出現這個錯誤時,同時還伴隨著另外一個現象,那就是ride控制檯不輸出日誌了。

解決方案:

其實有時候靜下心來分析問題就可以解決,而不是盲目的百度百度。

通過後臺的報錯日誌可以看到問題是出在D:\python\Lib\site-packages\robotide\contrib\testrunner目錄的testrunner資料夾下


報錯utf8編碼不能在233位位元組0xb2解碼:無效

那咱就分析分析,UTF-8不能解碼?GBK行不行?

於是我把程式碼改成了這樣:


再次跑起來,結果發現後臺還是報這個錯,這是怎麼回事?

其實這裡又有個小坑~

我們每次在修改了testrunner.py檔案後一定要記得刪掉testrunner.pyc檔案,然後重新啟動ride,不然等於白改~!


所以步驟是:

1.修改testrunner.py 檔案

2.刪除testrunner.pyc檔案

3.重新啟動ride跑起來

4.解決問題