成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

功能強大的Python 測試框架說明

開發 后端
Python的Virtual Machine是一種更高級的Virtual Machine。這里的高級并不是通常意義上的高級,不是說Python的Virtual Machine比Java或.NET的功能更強大

我對 FP 的所有描述都是使用Python 測試框架做到的。但最重要的特性 -- 可能也是具體情況中最有用的特性 -- 是它消除了副作用(或者至少對一些特殊領域,例如單一體,有一些牽制作用)。

絕大部分程序錯誤 -- 和促使程序員求助于調試來解決的問題 -- 之所以會發生,是因為在程序執行過程期間,變量包含了意外的值。函數程序只不過根本就不為變量分配值,從而避免了這一特殊問題。

讓我們看一段相當普通的命令代碼。它的目的是打印出乘積大于 25 的幾對數字的列表。組成各對的數字本身是從另外兩個列表中挑選出的。這種操作與程序員在他們程序段中實際執行的操作差不多。實現這一目的的命令方法如下:


這個項目太小,以至于沒有什么可能出錯。但我們的目的可能嵌在要同時實現許多其它目的的代碼中。用 "more stuff" 注釋的那些部分是副作用可能導致錯誤發生的地方。在這些地方中的任何一處,變量 xs、ys、bigmuls、x、 y 有可能獲得假設節略代碼中的意外值。而且,在執行完這一段代碼后,所有變量都可能具有稍后代碼可能需要也可能不需要的一些值。

很明顯,可以使用函數/實例形式的封裝和有關作用域的考慮來防止出現這種類型的錯誤。而且,您總是可以在執行完變量后 del 它們。但在實際中,這些指出類型的錯誤非常普遍。

對于 Python 測試框架,您會發現 Zope 社區有一些有意思的現象。Zope 社區并不為解決每個問題構建大型工具,而是構建小型的功能有限的工具,這些工具能夠連接在一起。目前,zope.testing 模塊本身實際上根本沒有提供檢測測試的機制!

相反,zope.testing 讓程序員自己尋找每個模塊中需要運行的測試并把它們集中在一個列表中。它在每個測試模塊中只尋找一個東西:test_suite() 函數,這個函數應該返回標準 unittest.TestSuite 類的實例,其中包含模塊定義的測試。

使用 zope.testing 的一些程序員在 test_suite() 函數中手工地創建和維護測試列表。其他程序員通過編寫定制代碼發現已經定義的可用測試。但是,最有意思的方法是使用另一個 Zope 包 z3c.testsetup,它能夠像其他現代 Python 測試框架一樣自動地發現包中的測試。

這一現象再次說明 Zope 程序員傾向于編寫小型代碼塊,然后使用它們構建框架,而不是編寫大型的全面解決方案。z3c.testsetup 包不包含可以選擇測試的命令行界面,也不包含可以顯示測試結果的輸出模塊;它完全依靠 zope.testing 實現這些功能。

實際上,z3c.testsetup 用戶一般不使用 zope.testing 的測試模塊發現功能。相反,他們繞開 zope.testing 的算法,按照它的默認行為只尋找名為 test.py 的模塊,然后在整個源代碼樹中只提供一個采用此名稱的模塊。在最簡單的情況下,他們的 test.py 像下面這樣:

【編輯推薦】

  1. 有關Python系統文件進行介紹指導
  2. 如何正確的使用Python函數
  3. 對Python 構建工具進行詳細介紹分析
  4. PythonAndroid淺析Python優勢所在
  5. 如何使用Python模塊解析配置文件?
責任編輯:chenqingxiang 來源: 51cto
相關推薦

2021-10-24 08:15:44

Web身份認證測試框架

2022-10-10 10:14:38

Python繪圖庫

2010-03-05 09:19:54

Android系統

2013-01-23 11:30:39

JSVirtualKeybjQuery

2009-07-07 08:46:11

微軟Windows 7新功能

2021-09-14 15:01:31

Pstf安全工具指紋框架

2024-05-24 08:34:16

2012-01-10 16:23:12

兄弟傳真機

2011-04-15 09:27:09

Windows PhoWindows phoMango

2009-12-02 13:46:10

PHP模板引擎

2022-06-23 10:17:00

Git技術Linux

2021-07-09 10:14:05

IP工具命令

2022-03-20 18:12:03

Shotcut開源視頻編輯器

2024-10-21 13:05:40

2015-11-03 10:40:25

Sysdig命令工具

2023-08-08 07:35:54

2023-08-30 08:24:34

2009-12-01 16:44:06

PHP編輯器

2010-03-10 14:42:07

三層交換機

2023-12-19 09:00:03

OCR軟件開源Ocrad
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 在线观看中文字幕 | 超碰最新在线 | 九九久久99 | 美女福利视频网站 | 久久精品欧美视频 | 黑人巨大精品欧美一区二区免费 | 日韩精品一区二区在线观看 | 成人av网页 | 欧美一级在线 | 日本免费一区二区三区 | 日本中文字幕一区 | 蜜桃一区二区三区在线 | 91视频麻豆| www.久久.com| 一级毛片免费完整视频 | 午夜网站视频 | 色视频成人在线观看免 | 91直接看| 国产一区二区三区四区五区3d | 国产高清无av久久 | 亚洲入口| 国产区在线看 | 伊人伊人| 成年网站在线观看 | 国产精品久久久久久久久 | 成人黄色av网站 | 亚洲一区二区三区久久 | 亚洲国产aⅴ成人精品无吗 亚洲精品久久久一区二区三区 | 午夜免费视频观看 | 国产精品观看 | 国产一伦一伦一伦 | 国产精品久久久久久久免费大片 | 亚洲福利一区二区 | 成人一区二区在线 | 亚洲福利在线视频 | 成人在线小视频 | 成年人免费看的视频 | 精品成人av | 91在线网站 | 成人在线视频网 | 久久精品这里精品 |