W3Cschool
恭喜您成為首批注冊(cè)用戶(hù)
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
是進(jìn)行第一個(gè)應(yīng)用功能的測(cè)試的時(shí)候了。讓我們檢查當(dāng)我們?cè)L問(wèn) 根路徑(/)時(shí)應(yīng)用程序是否正確地返回了了“No entries here so far” 字樣。為此,我們添加了一個(gè)新的測(cè)試函數(shù)到我們的類(lèi)當(dāng)中, 如下面的代碼所示:
class FlaskrTestCase(unittest.TestCase):
def setUp(self):
self.db_fd, flaskr.app.config['DATABASE'] = tempfile.mkstemp()
self.app = flaskr.app.test_client()
flaskr.init_db()
def tearDown(self):
os.close(self.db_fd)
os.unlink(flaskr.DATABASE)
def test_empty_db(self):
rv = self.app.get('/')
assert 'No entries here so far' in str(rv.data)
注意到我們的測(cè)試函數(shù)以 test 開(kāi)頭,這允許 unittest 模塊自動(dòng) 識(shí)別出哪些方法是一個(gè)測(cè)試方法,并且運(yùn)行它。
通過(guò)使用 self.app.get 我們可以發(fā)送一個(gè) HTTP GET 請(qǐng)求給應(yīng)用的 某個(gè)給定路徑。返回值將會(huì)是一個(gè) response_class 對(duì)象。我們可以使用 data 屬性 來(lái)檢查程序的返回值(以字符串類(lèi)型)。在這里,我們檢查 'No entries here so far' 是不是輸出內(nèi)容的一部分。
再次運(yùn)行,您應(yīng)該看到一個(gè)測(cè)試成功通過(guò)了:
$ python flaskr_tests.py
.
----------------------------------------------------------------------
Ran 1 test in 0.034s
OK
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: