2016/03/01 21:12:27

Salesforce World Tour Tokyo 2015の開発者セッションでLTしました

このエントリーをはてなブックマークに追加

こんにちは、R&Dチームの倉谷です。

遅筆ですみません。
かなり前のことになってしまいましたが、2015年12月3〜4日に虎ノ門ヒルズで開催された Salesforce World Tour Tokyo 2015 の開発者によるセッションでLTさせていただきました。

僕らが開発しているERPを進化させるフロントウェア「TeamSpirit」の急成長を、継続的インテグレーション(CI)でどのように支えているか超ざっくりと説明させていただきました。

発表した内容
発表資料はこちらになります。

2年で400%成長し、現在60,000ユーザー様に利用頂いているTeamSpirit。急成長する業務アプリに特有する問題ではないかもしれませんが、リリースサイクルが短くなっていく中、数々の設定の組合せで爆発的に増える回帰テストをどう回していくか?、後方互換性をいかに担保するか?に大きな課題を抱えていました。これらのことから新しい機能を追加するたびに常にテスト不足の不安を抱え、開発にも時間がかかるようになってきていました。

この課題に立ち向かうために、弊社では継続的インテグレーションに取り組むことにしました。今回のLTでは、継続的インテグレーションで必要となる自動テストに絞って説明しています。弊社では自動テストとして、テスト粒度に応じてスモークテスト、シナリオテスト、機能テスト、静的解析、ユニットテストに分けてテストを管理しています。

ユニットテストでは、Force.com で用意されたテストコードをJenkinsを利用して定期的に実行しています。
スモークテスト、シナリオテスト、機能テストでは、Selenium を利用してE2E(End to End)でのテストを日々実行しています。E2Eテストを実行する上で必要となるブラウザ環境は、BrowserStack と Docker を利用して構築しています。
加えて、これらのテストが失敗した場合は Chatter でメンション通知するようにしています。

さいごに
LTでは、自動テストを中心に紹介しました。その他にもリリースサイクルの管理、プッシュアップグレードによる保守バージョンの管理、開発プロセスの改善などにも取り組んでおり、現在も継続して取り組みを続けています。

Salesforce ISVパートナーにおける継続的インテグレーションや開発プロセスなどについて、もっと詳しい話が聴きたい、という方は、ぜひ遊びに来てください!

RD
Page topへ