python 命令行執行單元測試unittest


unittest 單元測試是開發中的重要環節, python 也比較方便

環境搭建

對於有自定義包package的項目, 需要指定包路徑, 有兩種方式

  1. 使用sys.path, 但這種需要每個次運行其它文件的時候要執行一次
   sys.path本身是多個地址的列表。
   sys.path.append():添加一個地址
   sys.path += [directory's list] :添加多個地址(或者也可以用sys.path.extend())
   sys.path.remove() 去掉地址

例如

# 在項目執行入口文件頂部
import sys
sys.path.append('/path/to/a:/path/to/b')
  1. 設置條件變量 PYTHONPATH
    將package的路徑添加到PYTHONPATH

  2. 至於怎么自定義包,這涉及python的namespace, 不展開
    https://www.python.org/dev/peps/pep-0420/

執行測試

python -m unittest MODULE/CLASS/FUNCTION 

因為unittest的文件都是以test_開頭,所以module 是去掉test_部分的名稱

如果不知道哪個用例,可以 -v 查找

python -m unittest -v

性能測試

有時候,我們不僅通過單元測試保證代碼的准確性, 而且還可以通過 cProfile 來定位 perf penalty , 即定位到性能損失的地方
使用cPerf 可以檢查性能

python -m cPerf 

不僅如此,還可以通過比如kcachegrind 這樣的大型工具來統計perf

總結

可見 python 是非常方便的


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM