1. 程式人生 > >9-Unittest+HTMLTestRunner不能生成報告解決方法

9-Unittest+HTMLTestRunner不能生成報告解決方法

 

1、問題現象

    在使用HTMLTestRunner生成測試報告時,出現程式執行不報錯,但不能生成報告的情況。

    剛開始找了很久沒發現問題,後來加上列印資訊,發現根本沒執行生成報告這部分程式碼。最後網上找到原因:pycharm 在執行測試用例的時候 預設是以unittest 框架來執行的,所以不能生成測試報告

if __name__ == '__main__':
    print '開始執行main'
    # 建立檔案,用來存放測試報告
    filepath = '..\htmlreport\htmlreport.html
' # 以讀寫的方式開啟檔案 fp = file(filepath,'wb') # 建立測試套 suit = unittest.TestSuite() # 向測試套裡新增case suit.addTest(TestMethod('test_01')) suit.addTest(TestMethod('test_02')) # 定義HTMLTestRunner執行相關引數 runner = HTMLTestRunner.HTMLTestRunner(stream=fp,title='This is first test')
# 執行case runner.run(suit) fp.close() print 'main執行結束'

 

2、如何判斷是否以unittest框架執行?

  如下,只要執行環境是unittest in ...的,就都是以unittest框架執行的

 

3、解決方案

  只要不以unittest框架方式執行就可解決不能生成報告的問題。可自己新增一個不以unittest框架方式執行的環境。

1)如下點選edit configurations-->選中python-->點選+

2)點選python

3)填寫環境名稱和指令碼路徑

4)選擇步驟三種新增的環境,執行指令碼,即可生成報告