如何測試 Python 程式或元件?
要測試 Python 程式,請在 Pygthon 中使用 unittest 模組。doctest 和 unittest 模組或第三方測試框架可用於構建詳盡的測試套件,以測試模組中的每一行程式碼。
doctest 模組
doctest 模組搜尋看起來像互動式 Python 會話的文字片段,然後執行這些會話以驗證它們是否完全按顯示的那樣工作。
unittest 模組
unittest 模組支援測試自動化、共享測試的設定和拆卸程式碼、將測試聚合到集合中以及測試與報告框架的獨立性。
在繼續之前,讓我們瞭解一些關於 Python 中測試的關鍵概念 -
測試夾具 - 它表示執行一個或多個測試所需的準備工作,以及任何相關的清理操作。
測試用例 - 測試用例是測試的單個單元。它檢查特定輸入集的特定響應。unittest 提供了一個基類 TestCase,可用於建立新的測試用例。
測試套件 - 測試套件是測試用例、測試套件或兩者的集合。它聚合了要一起執行的測試。
測試執行器 - 測試執行器是協調測試執行並將結果提供給使用者的元件。
現在讓我們建立一個測試 -
建立測試
示例
在此示例中,我們將測試 Python 中的一些方法
import unittest class TestMethods(unittest.TestCase): def test_lower(self): self.assertEqual('AMIT'.lower(), 'amit') def test_islower(self): self.assertTrue('amit'.islower()) self.assertFalse('Amit'.isupper()) def test_split(self): s = 'Demo Text' self.assertEqual(s.split(), ['Demo', 'Text']) # check that s.split fails when the separator is not a string with self.assertRaises(TypeError): s.split(2) if __name__ == '__main__': unittest.main()
輸出
... ---------------------------------------------------------------------- Ran 3 tests in 0.000s OK
在上面的示例中,我們成功運行了測試。每個測試的根源都是對 assertEqual() 的呼叫,以檢查預期結果 -
- assertTrue() 或 assertFalse() 來驗證條件;或
- assertRaises() 來驗證是否引發了特定異常
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP