1. 程式人生 > >HTMLTestRunner 為什麼用PyCharm(Eclipse)執行測試成功但無法生成報告

HTMLTestRunner 為什麼用PyCharm(Eclipse)執行測試成功但無法生成報告

為什麼用PyCharm或者Eclipse執行測試成功但無法生成HTMLTestRunner報告

最近遇到一些人問這樣的問題:
他們的程式碼寫的沒問題,執行也成功了,但就是無法生成HTMLTestRunner的報告,截圖如下:
用例執行成功,但是沒有生成報告

其實這是編輯器搞得鬼,編輯器為了方便使用者執行測試,都有一項功能,可以用編輯器來呼叫unittest或者nose來執行測試用例,這種情況下,執行的只是用例或者套件,而不是整個檔案,寫在main裡的程式碼是不會被執行的!!自然無法生成測試報告。

可以看看下面兩張圖:

滑鼠右鍵選單1 滑鼠右鍵選單2

會發現,在py檔案不同的地方點選右鍵,出來的選單是不一樣的!

第一幅圖中的選單是選中用例或套件時編輯器載入的右鍵選單,這個是隻有編輯器識別出文件中的用例時才會出現的;

第二幅圖中的選單是正常情況下編輯器的右鍵選單,這種情況下編輯器是執行這個檔案,檔案中所有的程式碼都會被執行到。

一般情況下在用例的部分點選右鍵會出來圖一選單,在其他部分如main裡點選右鍵會出來圖二,不過也不一定,自己點點看吧。

現在很清晰了,我們在如果想要生成測試報告,那麼一定要注意右鍵執行時選擇的右鍵選單,一定要當做檔案執行,不要讓編輯器當做用例執行。

同時附上我修改過的HTMLTestRunner,修改了樣式,支援了中文,更友好一些。
下載連結
樣式示例