Prottのテストを支える3つの施策(power-assert導入 & Protected branches & CI高速化)
この記事はGoodpatchのエンジニアがお送りするGoodpatch Advent Calendar 2015の1日目の記事です!
1日目は最近Prottチームでおこなったテスト推進施策について書いてみようと思います!
私はProttというプロトタイピングツールの開発を担当しているのですが、Prottには今までサーバーサイドのコードにしか自動テストがありませんでした。
変化のサイクルが速く長期的な運用になる自社サービスは常にコードの形を変えていく必要がありますが、自動テストがないと気軽なリファクタリングをしていくことが難しくなってしまいます。
今回はテスト推進施策ということで、フロントエンド側のテスト環境構築とテストに関連する取り組みを行ったので、その内容をまとめたいと思います。
ポイントは以下の3点です!
- フロントエンドのテスト環境を作る
- → Karma + mocha + power-assert + babel でのテスト環境構築
- masterにマージされるコードは必ずテストが通っていることを保証する
- → Protected branchesの導入
- テストの実行コストを減らす
- → キャッシュの設定でCIを高速化