toxのini形式ではなく通常のPythonファイルで設定し、複数のPython環境にまたがるテストを自動化するコマンドラインツール。
tox-dev/tox
複数の仮想環境やPythonバージョンにまたがるPythonのテストとパッケージ検証を自動化するコマンドラインツール。
- スター
- 3,976
- フォーク
- 635
- 未解決の Issue
- 68
- 最終コミット
- 11 時間前
これは何?
toxは、汎用的な仮想環境管理・テスト用のコマンドラインツールです。パッケージをビルドし、設定された各ターゲット用に隔離された仮想環境を作成して、パッケージと依存関係をインストールし、その環境でテストを実行します。これにより、異なるPython実装やバージョン、依存関係の組み合わせで、Pythonプロジェクトが正しくビルド・インストールできるかを簡単に検証できます。
ローカルでのテストに加え、toxは継続的インテグレーションサーバーのフロントエンドとしても機能します。設定を1つのファイルにまとめられるため、開発者のマシンでもCIでも同じコマンドを同じように実行でき、パイプラインスクリプトの重複を減らせます。pytestなどのテストランナーと併用できるように設計されています。
このプロジェクトは、Pythonのパッケージング、テスト、リリースのワークフローを簡素化する、より広範な取り組みの一環です。
主な機能
- 01設定したPythonバージョンや依存関係の組み合わせごとに、隔離された仮想環境を作成します。
- 02各環境でテストを実行する前に、パッケージをビルドしてインストールします。
- 03pytestなど、任意のテストツールを各環境内で実行します。
- 04ローカルでの実行とCIパイプラインの両方で、共通のエントリーポイントとして機能します。
ユースケース
- リリース前に、複数のPythonバージョンでPythonライブラリをテストする。
- ビルドした配布パッケージから、パッケージを正しくインストールできるか確認する。
- CI設定内の重複したシェルスクリプトを、単一のtox設定ファイルに置き換える。
収録されている特集
トピック
よくある質問
- tox とは?
- 複数の仮想環境やPythonバージョンにまたがるPythonのテストとパッケージ検証を自動化するコマンドラインツール。 toxは、汎用的な仮想環境管理・テスト用のコマンドラインツールです。パッケージをビルドし、設定された各ターゲット用に隔離された仮想環境を作成して、パッケージと依存関係をインストールし、その環境でテストを実行します。これにより、異なるPython実装やバージョン、依存関係の組み合わせで、Pythonプロジェクトが正しくビルド・インストールできるかを簡単に検証できます。
- tox は無料で使えますか?ライセンスは?
- tox は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- tox は今もメンテナンスされていますか?
- 活発にメンテナンス中。tox の最終コミットは 2026年11月6日 です。
- tox は何に使えますか?
- リリース前に、複数のPythonバージョンでPythonライブラリをテストする。 ビルドした配布パッケージから、パッケージを正しくインストールできるか確認する。 CI設定内の重複したシェルスクリプトを、単一のtox設定ファイルに置き換える。
- tox はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/tox-dev/tox
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
ビルド、環境構築、テスト、Lint、バージョン管理、公開までをカバーする、モダンで拡張性の高いPythonプロジェクト管理ツール。
PythonのCLIアプリを依存関係が互いに、またシステムと衝突しないよう、隔離環境にインストールして実行します。
MarkdownでAIを活用したリポジトリ自動化を記述し、GitHub Actionsで安全に実行できるGitHub CLI拡張機能です。
ライブデータベースのスキーマからGFM Markdownドキュメントを生成するGo製CLI。CI向けの差分検出、lint、ER図にも対応。
Jenkinsは、ソフトウェアのビルド、テスト、デプロイを自動化するオープンソースのサーバーで、2,000以上のプラグインで機能を拡張できます。