#Book [[📒アジャイルプラクティスガイドブック チームで成果を出すための開発技術の実践知]] ## 3-1 [[🗃️継続的インテグレーション]] - 開発に関わる全員で、我慢できる時間の上限について認識を合わせるべき - 10分を超えると遅いと感じる。サーバースペックを上げる、実行する作業を減らす、作業を並列に実行するなど工夫をする - 一番重要なことは、処理が失敗し続ける状態を放置しないこと - フックスクリプト - 例 - pre-commit(コミット前) - pre-push(プッシュ前) - 特定のブランチへプッシュできないようにする - ツールによるドキュメント自動生成 - APIドキュメントの自動生成 - ER図を自動生成 - 校正ツール(textlint) ## 3-2 [[🗃️継続的デリバリー]] - CI/CDパイプラインを整える - リリーマス魔dネイ必要なここの処理と、実行順序やタイミングを整理して定義 - 利用環境をブランチ戦略と紐付け自動更新する - 💭local, test, stagingは一般的。canary環境は良さそう。一部のユーザーに対してのみ、公開される環境 - ❓canary環境は、どのタイミングでデプロイするのが一般的なのかな? ## 3-3継続的テスト - テストピラミッド - 単体テストが多く、E2Eテストを少なくする - [[🗃️E2Eテスト]]は、実行時間が長い、不安定になりやすい - 逆にアイスクリームコーンの形となるテストは、あまり良くない - [[🗃️E2Eテスト]] - 重要なカスタマージャーニーに絞ってテストするのがおすすめ - 例) カートから注文ができる で活用できるプラクティス