CI

読み

シーアイ

意味

  • 開発者が行ったコード変更を頻繁にメインブランチへ統合し自動でビルドとテストを実行する開発手法
  • コードの品質を保ちつつ問題を早期発見するため1日に何度もマージと検証を繰り返すプロセス
  • 手動テストの遅延や統合時のコンフリクトを減らしチーム全体の生産性を高めるDevOps文化

比喩

定期健康診断のようなもの。コードに問題がないか頻繁にチェックする。

語源

Continuous Integration=継続的インテグレーション。アジャイル開発の一環として広まった

例文

  • GitHub ActionsでCIパイプラインを構築しプルリクエストごとにテストを自動実行した
  • CIでリントとユニットテストを回し品質基準を満たさないコードはマージを拒否した
  • ビルド失敗時にSlack通知を飛ばし問題を即座に開発チームへ共有した

よくある勘違い

  • CIツールを導入しただけで品質が保証されると考えること→テストカバレッジや検証項目の設計が重要
  • CIとCI/CDを同義だと捉えデプロイまで含めて考えないこと→CIは統合とテストまで、CDは配信の自動化を指す

関連用語