真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

unittest怎么用-創(chuàng)新互聯(lián)

這篇文章將為大家詳細(xì)講解有關(guān)unittest怎么用,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

成都創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比洛隆網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式洛隆網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋洛隆地區(qū)。費(fèi)用合理售后完善,10年實(shí)體公司更值得信賴。

1.單元測試

  • 單元測試是指對(duì)軟件中的最小可測試單元進(jìn)行檢查和驗(yàn)證,Python中有一個(gè)自帶的單元測試框架unittest模塊,不僅可以適用于單元測試,還可以適用WEB自動(dòng)化測試用例的開發(fā)與執(zhí)行,該測試框架可組織執(zhí)行測試用例,并且提供了豐富的斷言方法,判斷測試用例是否通過,最終生成測試結(jié)果;

2.unittest庫中的基本組件

  • unittest.TestCase():是所有測試用例類繼承的基本類,一個(gè)類只要繼承了unittest中的TestCase類就是一個(gè)測試用例類,就可以在類中寫測試用例;

from unittest import TestCase, main
class MyTest(TestCase):  # 繼承unittest.TestCase
    def setUp(self):
        # 測試用例執(zhí)行前的初始化工作
        print('開始執(zhí)行')
    def tearDown(self):
        # 測試用例執(zhí)行之后的善后工作
        print('執(zhí)行完畢')
    def testWay(self):
        print('這是測試用例')
if __name__ == '__main__':
    main()  # 運(yùn)行所有的測試用例
  • unittest.TestSuite():用來創(chuàng)建測試套件,其中有一個(gè)addTest()方法可以將一個(gè)或多個(gè)測試用例添加到測試套件中,先添加的哪個(gè)方法就先運(yùn)行哪個(gè)方法;

  • unittest.TextTextRunner():通過該類中的run()方法來運(yùn)行suite所組裝的測試用例;

  • unittest.defaultTestLoader():通過該類下面的discover()方法可自動(dòng)根據(jù)測試目錄start_dir匹 配查找測試用例模塊(以test開頭,以.py結(jié)尾的文件,例如:test*.py), 并將查找到的測試用例 組裝到測試套件,因此可以直接通過run()方法執(zhí)行discover;

  • unittest.skip():裝飾器,可過濾不需要執(zhí)行的用例,使這個(gè)用例不執(zhí)行;

  • unittest.main():可以方便的將一個(gè)單元測試模塊變?yōu)榭芍苯舆\(yùn)行的測試腳本,main()方法使 用TestLoader類來搜索所有包含在該模塊中以“test”命名開頭的測試方法,并自動(dòng)執(zhí)行他們 ;

3.TestCase類中的方法

  • setUp()方法:用于測試用例執(zhí)行前的初始化。如測試用例中需要訪問數(shù)據(jù)庫,可以在setUp中建立數(shù)據(jù)庫連接并進(jìn)行初始化。如果測試用例需要登錄web,可以先獲取cookie,獲取文件句柄;

  • tearDown()方法:用于測試用例執(zhí)行之后的善后工作,如關(guān)閉數(shù)據(jù)庫連接,關(guān)閉文件;

  • assert*():斷言方法,相當(dāng)于if-else里面的條件判斷,在執(zhí)行測試用例的過程中,最終用例是否執(zhí)行通過,是通過判斷測試得到的實(shí)際結(jié)果和預(yù)期結(jié)果是否相等決定的;

4.unittest中常用的斷言方法

  • assertEqual(self, first, second, msg=None):判斷兩個(gè)參數(shù)是否相等,如果相等則測試用例通過;

  • assertNotEqual(self, first, second, msg=None):判斷兩個(gè)參數(shù)是否相等,如果不相等則測試用例通過;

  • assertTrue(self, expr, msg=None):判斷是否為真,為真則測試用例通過;

  • assertFalse(self, expr, msg=None):判斷是否為假,為假則測試用例通過;

  • assertIs(a, b, msg=None):斷言a是否是b,如果是則測試用例通過。

  • 更多的斷言方法可以查看官網(wǎng): /tupian/20230522/unittest.html id="h4-5-">5.編寫測試用例

    • 首先從unittest模塊中導(dǎo)入TestCase、main等需要用到的類;

    • 然后自定義一個(gè)類繼承TestCase類;

    • 可以重寫TestCase類中的setUp()初始化方法,和tearDown()清理方法,這兩個(gè)方法是成對(duì)出 現(xiàn)的;

    • 然后編寫以字母開頭的測試用例,執(zhí)行順序默認(rèn)是根據(jù)ASCII碼的順序加載測試用例,數(shù)字與字母的順序?yàn)椋?-9,A-Z,a-z

    • 最后調(diào)用unittest.main()方法將一個(gè)單元測試模塊變成可以直接運(yùn)行的測試腳本,然后自動(dòng)執(zhí)行測試用例;

    from unittest import TestCase, main
    class MyTestCase(TestCase):
        # setUp、tearDown每次執(zhí)行一個(gè)test開頭的方法時(shí),都會(huì)調(diào)用一次
        def setUp(self):
            print('setup')
        def tearDown(self):
            print('tearDown')
        def test_1(self):
            print('第一個(gè)測試用例')
        def test_2(self):
            print('第二個(gè)測試用例')
    if __name__ == '__main__':
        main()

    關(guān)于“unittest怎么用”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。


    本文題目:unittest怎么用-創(chuàng)新互聯(lián)
    標(biāo)題網(wǎng)址:http://weahome.cn/article/cocsss.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部