如何在 Python 中指定和強制執行介面規範?


讓我們首先了解什麼是介面規範。介面規範是模組的介面規範,由 C++ 和 Java 等程式語言提供。它描述了模組的方法和函式的原型。

abc 模組

abc 模組在 Python 2.6 中引入,用於定義抽象基類 (ABC)。使用 isinstance() 和 issubclass() 檢查例項或類是否實現了特定的抽象基類。此外,collections.abc 模組定義了一組有用的 ABC,例如 Iterable、Container 和 MutableMapping。

collections 模組包含從 ABC 派生的類。collections.abc 子模組包含一些可以用來測試類或例項是否提供特定介面的 ABC。

透過 Python 中合適的測試規範可以獲得介面規範的好處 -

測試套件

模組的良好測試套件既可以提供迴歸測試,也可以充當模組介面規範和示例集。許多 Python 模組可以作為指令碼執行,以提供簡單的自檢。

存根模擬

即使是使用複雜外部介面的模組,也可以使用外部介面的簡單“存根”模擬在隔離狀態下進行測試。

使用 doctest 和 unittest 模組建立測試套件

可以使用 doctest 和 unittest 模組或第三方測試框架構建詳盡的測試套件,以執行模組中的每一行程式碼。

doctest 模組搜尋看起來像互動式 Python 會話的文字片段,然後執行這些會話以驗證它們的工作方式與顯示的完全一致。

unittest 模組支援測試自動化、共享測試的設定和關閉程式碼、將測試聚合到集合中以及測試與報告框架的獨立性。

構建大型複雜應用程式

合適的測試規範可以幫助構建 Python 中的大型複雜應用程式,就像擁有介面規範一樣。

測試驅動開發

編寫測試套件非常有用,您可能希望設計您的程式碼使其易於測試。一種越來越流行的技術,測試驅動開發,要求您首先編寫測試套件的一部分,然後再編寫任何實際程式碼。

更新於: 2022年9月20日

116 次檢視

啟動您的 職業生涯

透過完成課程獲得認證

開始
廣告

© . All rights reserved.