激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

腳本之家,腳本語(yǔ)言編程技術(shù)及教程分享平臺(tái)!
分類(lèi)導(dǎo)航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

香港云服务器
服務(wù)器之家 - 腳本之家 - Python - 詳解Django中的unittest及應(yīng)用

詳解Django中的unittest及應(yīng)用

2022-02-26 00:20rongge Python

unittest是python的一個(gè)單元測(cè)試框架,它是用于對(duì)一個(gè)確定結(jié)果和預(yù)測(cè)結(jié)果的一種判斷,這篇文章主要介紹了Django中的unittest及應(yīng)用,需要的朋友可以參考下

unittest是python的一個(gè)單元測(cè)試框架

關(guān)于斷言

它是用于對(duì)一個(gè)確定結(jié)果和預(yù)測(cè)結(jié)果的一種判斷,如果結(jié)果正確無(wú)任何返回效果,如果結(jié)果錯(cuò)誤;會(huì)拋出AssertionError 異常,如果后面跟了msg則返回msg內(nèi)容

?
1
2
3
4
5
6
7
8
9
10
11
12
assert 2 == 2
assert 2 == 1 * 2
assert 2 + 0 == 1 * 2
# ----------------- 以上無(wú)任何返回效果
 
assert 1 > 3, 'wrong'
'''
Traceback (most recent call last):
  File "D:/project_of_3期課程/day22/類(lèi).py", line 259, in <module>
    assert 1 > 3, 'wrong'
AssertionError: wrong
'''

unittest模塊屬性說(shuō)明

unittest的屬性

unittest.main():使用它可以方便的將一個(gè)單元測(cè)試模塊變?yōu)榭芍苯舆\(yùn)行的測(cè)試腳本,main()方法使用TestLoader類(lèi)來(lái)搜索所有包含在該模塊中以“test”命名開(kāi)頭的測(cè)試方法,并自動(dòng)執(zhí)行他們。執(zhí)行方法的默認(rèn)順序是:根據(jù)ASCII碼的順序加載測(cè)試用例,數(shù)字與字母的順序?yàn)椋?-9,A-Z,a-z。所以以A開(kāi)頭的測(cè)試用例方法會(huì)優(yōu)先執(zhí)行,以a開(kāi)頭會(huì)后執(zhí)行。

unittest.TestSuite():unittest框架的TestSuite()類(lèi)是用來(lái)創(chuàng)建測(cè)試套件的。

unittest.TextTextRunner():unittest框架的TextTextRunner()類(lèi),通過(guò)該類(lèi)下面的run()方法來(lái)運(yùn)行suite所組裝的測(cè)試用例,入?yún)閟uite測(cè)試套件。

TestCase類(lèi)的屬性

setUp():方法用于測(cè)試用例執(zhí)行前的初始化工作。如測(cè)試用例中需要訪問(wèn)數(shù)據(jù)庫(kù),可以在setUp中建立數(shù)據(jù)庫(kù)連接并進(jìn)行初始化。如測(cè)試用例需要登錄web,可以先實(shí)例化瀏覽器。

tearDown():方法用于測(cè)試用例執(zhí)行之后的善后工作。如關(guān)閉數(shù)據(jù)庫(kù)連接。關(guān)閉瀏覽器。

assert*():一些斷言方法,在執(zhí)行測(cè)試用例的過(guò)程中,最終用例是否執(zhí)行通過(guò),是通過(guò)判斷測(cè)試得到的實(shí)際結(jié)果和預(yù)期結(jié)果是否相等決定的。

assertEqual(a,b,[msg='測(cè)試失敗時(shí)打印的信息']):斷言a和b是否相等,相等則測(cè)試用例通過(guò)。

assertNotEqual(a,b,[msg='測(cè)試失敗時(shí)打印的信息']):斷言a和b是否相等,不相等則測(cè)試用例通過(guò)。

assertTrue(x,[msg='測(cè)試失敗時(shí)打印的信息']):斷言x是否True,是True則測(cè)試用例通過(guò)。

assertFalse(x,[msg='測(cè)試失敗時(shí)打印的信息']):斷言x是否False,是False則測(cè)試用例通過(guò)。

assertIs(a,b,[msg='測(cè)試失敗時(shí)打印的信息']):斷言a是否是b,是則測(cè)試用例通過(guò)。

assertNotIs(a,b,[msg='測(cè)試失敗時(shí)打印的信息']):斷言a是否是b,不是則測(cè)試用例通過(guò)。

assertIsNone(x,[msg='測(cè)試失敗時(shí)打印的信息']):斷言x是否None,是None則測(cè)試用例通過(guò)。

assertIsNotNone(x,[msg='測(cè)試失敗時(shí)打印的信息']):斷言x是否None,不是None則測(cè)試用例通過(guò)。

assertIn(a,b,[msg='測(cè)試失敗時(shí)打印的信息']):斷言a是否在b中,在b中則測(cè)試用例通過(guò)。

assertNotIn(a,b,[msg='測(cè)試失敗時(shí)打印的信息']):斷言a是否在b中,不在b中則測(cè)試用例通過(guò)。

assertIsInstance(a,b,[msg='測(cè)試失敗時(shí)打印的信息']):斷言a是是b的一個(gè)實(shí)例,是則測(cè)試用例通過(guò)。

assertNotIsInstance(a,b,[msg='測(cè)試失敗時(shí)打印的信息']):斷言a是是b的一個(gè)實(shí)例,不是則測(cè)試用例通過(guò)。

TextTextRunner的屬性

run():是運(yùn)行測(cè)試套件的測(cè)試用例,入?yún)閟uite測(cè)試套件。

?
1
unittest.TextTestRunner(verbosity=2).run(suite)

unittest框架使用

方式一:unittest.main()來(lái)啟動(dòng)單元測(cè)試模塊

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# coding=utf-8
import unittest
# 方式一:unittest.main()來(lái)啟動(dòng)單元測(cè)試模塊
class MyTestCase(unittest.TestCase):
    def setUp(self):
        print('測(cè)試環(huán)境')
 
    def test(self):
        print('測(cè)試用例')
        self.assertEquals(4, 2 * 2)
        self.assertEqual(1, 3, 'something was wrong')
    def tearDown(self):
        print('環(huán)境銷(xiāo)毀')
if __name__ == '__main__':
    unittest.main()

方式二:添加到testsuite集合中,再加載所有的被測(cè)試對(duì)象

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# coding=utf-8<br>import unittest<br><br>class TestCase(unittest.TestCase):
    def test1(self):
        print('one')
 
    def test2(self):
        print('two')
 
class TestCase1(unittest.TestCase):
    def test1(self):
        print('three')
 
    def test2(self):
        print('four')
 
if __name__ == '__main__':
    un1 = unittest.TestLoader().loadTestsFromTestCase(TestCase)
    un2 = unittest.TestLoader().loadTestsFromTestCase(TestCase1)
 
    suite = unittest.TestSuite([un1, un2])
    unittest.TextTestRunner(verbosity=2).run(suite)

到此這篇關(guān)于Django中的unittest及應(yīng)用的文章就介紹到這了,更多相關(guān)Django unittest應(yīng)用內(nèi)容請(qǐng)搜索服務(wù)器之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持服務(wù)器之家!

原文鏈接:https://www.cnblogs.com/rongge95500/articles/10512186.html

延伸 · 閱讀

精彩推薦
1051
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25
主站蜘蛛池模板: 在线成人www免费观看视频 | 哪里可以看免费的av | 午夜伦情电午夜伦情电影 | 北京一级毛片 | 亚洲国产资源 | 日韩av有码在线 | 久久激情国产 | 国产91片| 色的综合 | h网站在线观看 | 久久久久久久久淑女av国产精品 | 午夜久久电影 | 亚洲第一综合 | 精品国产一区二区三区四区阿崩 | 请播放一级毛片 | 国产精品一二区 | 欧美一级高潮片免费的 | 斗罗破苍穹在线观看免费完整观看 | 免费在线观看成年人视频 | 国产a级片电影 | 亚洲成人在线视频网 | 91精品国产综合久久婷婷香 | 蜜桃视频日韩 | 午夜精品老牛av一区二区三区 | 一本色道久久99精品综合蜜臀 | 国产一级大片在线观看 | 999久久国精品免费观看网站 | 久久一区国产 | 亚洲自拍第一 | 亚洲特黄a级毛片在线播放 久久久入口 | 鲁人人人鲁人人鲁精品 | 最新毛片在线观看 | 国产亚洲精品美女久久久 | 性大片性大片免费 | 黄视频网站免费观看 | 亚洲男人一区 | 国产成人午夜精品 | 欧美视频99 | 欧美日韩综合视频 | 一级大黄毛片免费观看 | 国产精品99精品 |