グーグルのクラウドを支えるテクノロジー > 第37回 継続的インテグレーションを支える自動テスト環境(パート1)
私が編集支援しているCTC教育サービスのコラム「 グーグルのクラウドを支えるテクノロジー > 第37回 継続的インテグレーションを支える自動テスト環境(パート1)」が公開されました。
世界三大クラウドと言われるGoogleクラウドのコラムです。検索円辞任で圧倒的なGoogleですので、今後いろいろな仕掛けもありそうで気になります。興味がある方は是非ご覧ください。
###
2018年4月
はじめに
今回からは、2017年に公開された論文「Taming Google-Scale Continuous Testing」をもとにして、Google社内の開発チームが活用する継続的インテグレーションの仕組み、その中でも特に、自動テストのインフラ環境を紹介していきます。この論文では特に、繰り返し実行される膨大な数のテストについて、その処理を効率化するための取り組みが解説されています。今回は、Googleの開発環境で用いられる自動テストのシステムについて、まずは、基本的な仕組みを説明します。
Googleにおけるテスト環境
本連載の中で何度か触れたように、Google社内で開発されるソフトウェアのソースコードは、単一のリポジトリで管理されており、複数のプロジェクトにまたがってライブラリモジュールの共有が行われます。そして、あるモジュールのソースコードが変更されると、それに依存するすべてのソースコードに対するテストが自動的に再実行されます。このような自動テストは、「Test Automation Platform (TAP)」と呼ばれるシステムによって管理されており、冒頭の論文によると、1日あたり、約1万3千個のプロジェクトにおける、約80万回のビルド処理があり、それに伴うおよそ1億5千万個のテストが実行されるそうです。
この続きは以下をご覧ください
https://www.school.ctc-g.co.jp/columns/nakai2/nakai237.html