CIパイプラインツール ビルドの支援ツール(パッケージ管理ツール含む) テストの支援ツール GNU make go test python -m unittest ビルドとテストの全体フローを自動化する (主にアプリケーションの)ビルドフローを自動化する テストフローを自動化する アプリケーションロジック記述以外から 属人性を可能な限り排除するのが目的
Technologies Co.,Ltd. All rights reserved. Feature Small Medium Large Network access No localhost only Yes Database No Yes Yes File system access No Yes Yes Use external systems No Discouraged Yes Multiple threads No Yes Yes Sleep statements No Yes Yes System properties No Yes Yes Time limit (seconds) 60 300 900+ https://testing.googleblog.com/2010/12/test-sizes.html
実行の トリガー medium テスト1 medium テスト2 medium テスト3 medium テスト 結果通知 イメージ のビルド & small テスト イメージ のpush medium 依存 モジュール build 8割は smallテスト で落とす 残りのうちの 8割はmediumテスト で落とす
Technologies Co.,Ltd. All rights reserved. 環境変数で設定を読み込み (環境変数の投入が別途コード化されているとより良い) 設定ファイルを環境ごとに切り替え (コマンドラインオプションで切り替えられるように作る) 設定ファイルをデプロイ時にサーバ上で書き換え 超えられない壁 Good No Good