![測試工具鏈—— 使用Python實現模塊打包](http://p2.ttnews.xyz/loading.gif)
作為測試開發人員,我們產出的測試工具大多數情況是面向測試部門或團隊發佈的。較以往,只是將整個工具模塊上傳至Git或SVN,測試人員進行下載,並且根據requirements文件安裝依賴庫,然後才能使用該工具,工具交付、安裝成本較高。
本文主要介紹如何對模塊進行打包,生產.whl文件,直接可以通過pip install *.whl進行安裝,另外,還可以將打好的包上傳到官方倉庫 PyPI中。
Wheel和Egg都是python的打包格式,根據官網說明,Wheel是發行版Python的新標準並且將要取代.egg,Wheel現在是Python的二進制包的標準格式。
Wheel安裝
pip install wheel
模塊目錄結構說明
- setup.py :打包配置文件
- setup.cfg:包含了構建時候的一些默認參數,無可不添加該文件.
- MANIFEST.in:額外需要打包的文件,無可不添加該文件.
- README.md:項目說明文檔
- LICENSE.txt:項目許可說明文件,無可不添加該文件.
- 項目源碼:模塊源碼目錄
![測試工具鏈—— 使用Python實現模塊打包](http://p2.ttnews.xyz/loading.gif)
目錄結構圖
setup.cfg
MANIFEST.in
setup.py 示例
主要配置內容:
- name:項目名稱,也是最終在 PyPI 上搜索的名稱。
- version:版本號,一般由“主版本號、子版本號、修正版本號”三部分組成。
- author:作者姓名。
- description:項目的簡短描述,一般一句話就好,會顯示在 PyPI 上名字下端。
- url:通常為項目的GitHub、文檔等鏈接
- packages:列出項目內需要被打包的所有package。
- package_data:依賴數據文件,數據文件須放在項目目錄內且使用相對路徑。
- data_files:如果數據文件不存在於項目目錄內,則使用 data_files 參數或者 MANIFEST.in 文件進行管理。
- install_requires - 說明項目的依賴包,安裝包時pip會自動安裝。
示例如下:
setup.py
生成whl文件
使用 bdist_wheel 打包
python setup.py bdist_wheel
執行結果部分截圖
執行完成後,目錄結構如下:
安裝部署
我們將打包好的.whl對外發布,使用者可以通過pip進行安裝部署。
pip install *.whl
執行結果截圖
若對你有所幫助,歡迎大家評論、留言。
閱讀更多 測試開發技術棧 的文章