溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Python TestSuite怎么生成測試報告

發(fā)布時間:2020-07-23 14:11:17 來源:億速云 閱讀:178 作者:小豬 欄目:開發(fā)技術(shù)

小編這次要給大家分享的是Python TestSuite怎么生成測試報告,文章內(nèi)容豐富,感興趣的小伙伴可以來了解一下,希望大家閱讀完這篇文章之后能夠有所收獲。

簡介:為每一個測試用例添加說明,那么將會使報告更加易讀懂,工作中匯報數(shù)據(jù)的技巧
u"test_one方法"

HTMLTestRunner 是 Python 標(biāo)準(zhǔn)庫的 unittest 模塊的一個擴展,它可以生成 HTML的 測試報告,無法通過pip安裝。

首先要下 HTMLTestRunner.py 文件,將下載的文件放入…\python\Lib目錄下 (或者同個路徑)

注意點:

python2和python3,語法不一樣,導(dǎo)致HTMLTestRunner在python3不兼容

解決辦法:導(dǎo)入課程資料里面修改好的HTMLTestRunner.py (該版本是網(wǎng)上的小伙伴修改好的)

# -*- coding: UTF-8 -*-
import unittest
import HTMLTestRunner
import time

class XdclassTestCase(unittest.TestCase):
  def setUp(self):
    self.age = 32
    self.name = "小D課堂"
    print(" setUp method=======")


  def tearDown(self):
    print(" tearDown method=======")
    #斷言是否相同
    self.assertEqual('foo'.upper(), 'FOO')

  def test_one(self):
    u"test_one方法"
    print(" test_one 二當(dāng)家小D 來了")
    #斷言是否相同
    self.assertEqual(self.name, "小D課堂",msg="名字不對")

  def test_two(self):
    u"test_TWO方法說明"
    print(" test_two 前端 來了")
    #斷言是否為 true, msg是斷言錯誤的提示信息
    self.assertTrue('XD'.isupper(), msg="不是大寫")
    
  def test_three(self):
    u"這是首頁登錄測試用例"
    print(" test_three 后端 來了")
    self.assertEqual(self.age,32)

  def test_four(self):
    print(" test_four 小D課堂官網(wǎng)上線啦 https://www.xdclass.net")
    self.assertEqual(self.age,32)

if __name__ == '__main__':
  suite = unittest.TestSuite()
  suite.addTest(XdclassTestCase("test_two"))
  suite.addTest(XdclassTestCase("test_one"))
  
  suite.addTest(XdclassTestCase("test_three"))
  suite.addTest(XdclassTestCase("test_four"))

  #verbosity參數(shù)可以控制執(zhí)行結(jié)果的輸出,0 是簡單報告、1 是一般報告(默認(rèn))、2 是詳細(xì)報告
  #runner = unittest.TextTestRunner(verbosity=2)
  #runner.run(suite)
  #文件名中加了當(dāng)前時間,為了每次生成不同的測試報告
  file_prefix = time.strftime("%Y-%m-%d %H_%M_%S", time.localtime())
  print(file_prefix)
  #創(chuàng)建測試報告,此時這個文件還是空文件
  # wb 以二進制格式打開一個文件,只用于寫入,如果文件存在則覆蓋,不存在則創(chuàng)建
  fp = open("./"+file_prefix+"_result.html","wb")
  # stream定義一個測試報告寫入的文件,title就是標(biāo)題,description就是描述
  runner = HTMLTestRunner.HTMLTestRunner(stream=fp, title=u"小D課堂 測試報告",description=u"測試用例執(zhí)行情況")
  
  runner.run(suite)
  fp.close()

看完這篇關(guān)于Python TestSuite怎么生成測試報告的文章,如果覺得文章內(nèi)容寫得不錯的話,可以把它分享出去給更多人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI