簡體   English   中英

如何為python軟件包開發實現跨平台的持續集成?

[英]How to implement cross-platform continuous integration for python package development?

我正在開發一些python軟件包,並且確實希望在將它們發布到PyPi之前執行適當的測試。

這將需要跨多個單元測試

  • 不同的python版本:2.5、2.6、2.7、3.2
  • 不同的操作系統:OS X,Debian,Ubuntu和Windows

現在我在用pytest

問題:我如何才能輕松實現此目標,最好是將結果公開發​​布並與github集成,因此任何推送的人都將知道結果。

注意:我已經知道https://travis-ci.org/,但這似乎缺少跨平台部分,在這種情況下這是必不可少的。

我正在考慮的另一個選擇是使用Jenkins,但我不知道如何在其上提供矩陣測試。

我曾經用過詹金斯,我會推薦它。 它具有大量的插件,並且是非常可配置的。

我已經使用它在Windows / linux / mac / mobile平台上運行項目,進行健全性,單元,組件和回歸測試。

它可以支持項目和測試的鏈接,在項目進行測試環境時要監視的項目的指紋,還可以設置用戶並跟蹤更改。

您可以將它同時用於生產和測試,並將其連接到git存儲庫,您所做的任何更改都會自動運行在所需的所有手套中。

您可以使用tox來自動設置虛擬環境並跨Python版本運行測試:

[tox]
envlist = py25,py26,py27,py32
[testenv]
commands=py.test

Tox支持Python 2.4及更高版本,以及Jython和PyPy。

如果要查看使用tox的實際項目,請查看zope.configuration tox.ini配置 該軟件包包括有關如何運行tox測試的出色文檔 這些測試由Zope夜間測試生成器自動運行。

將tox配置為在Jenkins下運行是微不足道的,並且已得到充分記錄。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM