使用HTMLTestRunner在目標目錄下並未生成HTML文件解決辦法


使用pycharm工具應用HTMLTestRunner模塊時,測試用例可以順利運行,但在目標目錄下並未生成HTML文件。使用python的IDLE,能夠正常運行並創建寫入測試結果。

測試環境:python2.7、pycharm 5.0.4、win10

測試代碼如下:

#encoding:utf-8
import HTMLTestRunner
import unittest
import os
import time

class testsuanshu(unittest.TestCase):
def setUp(self):
print 'start'
def testAdd(self):
print 3+8
def testSub(self):
print 8-3
def tearDown(self):
print 'end'

if __name__=='__main__':
testsuit=unittest.TestSuite()
#將測試用例加入到測試容器中
testsuit.addTest(testsuanshu('testAdd'))
time.sleep(10)
testsuit.addTest(testsuanshu('testSub'))
time.sleep(10)
print u"打印測試報告"
filename="d:\\testreport\\result.html"
fp=file(filename,'wb')
runner=HTMLTestRunner.HTMLTestRunner(stream=fp,title=u'算法測試報告',description=u'用例執行情況')
#運行測試用例
runner.run(testsuit)
fp.close()
能夠正常運行測試用例,但是不能創建與寫入測試報告。
以上代碼拷貝到python的IDLE,能夠正常運行並創建寫入測試結果。
為什么用PyCharm或者Eclipse執行測試成功但無法生成HTMLTestRunner報告?
查看博客:https://blog.csdn.net/huilan_same/article/details/51727572
問題原因:發現是編輯器的原因,編輯器為了方便用戶執行測試,都有一項功能,可以用編輯器來調用unittest或者nose來執行測試用例,這種情況下,執行的只是用例或者套件,而不是整個文件,寫在main里的代碼是不會被執行的!!
自然無法生成測試報告。
解決辦法:運行文件的時候不要選擇以unitest的方式運行,要選擇運行文件的方式。如圖:

選擇這種方式:

 

 

運行文件本身后,正常輸出測試報告。

 


免責聲明!

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



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