Squish顧客事例:ARM Ltd.でのSquish活用例

ARM Logo

こちらの記事はMany Years of Squish Success at ARM Ltd.の抄訳です。

ARM社は、多種多様な先端デジタル製品の中核を担う技術を設計する、歴史ある企業です。ARMが提供する製品ラインナップには、RISCマイクロプロセッサ、グラフィックスプロセッサ、エンベデッドソフトウェア、セルライブラリ、組み込みメモリ、高速接続製品、周辺機器、開発ツールなどが含まれています。

今回、私たちはARMのスタッフ検証エンジニアであるDave Dextor氏との対話の機会を得て、ARMでのSquishの活用について伺うことができました。

 なぜSquishなのか?

ARMは2005年頃に初めてライセンスを取得しました。ARMがSquishを選択した理由についてDave氏に伺ったところ、彼は次のように答えました:

「Squishの使いやすさと、テストメンテナンスを効率化するためのオブジェクトマップ機能は、我々がSquishを選択した2つの重要な要素でした。さらに、複数のオペレーティングシステムやテクノロジーへの対応、特にQtとLinuxへのサポートも、我々にとって非常に重要なポイントでした。」

Squishの独自機能であるオブジェクトマップにより、アプリケーションのオブジェクトを特定することが可能となります。アプリケーションのオブジェクトが変更された際でも、テストエンジニアはオブジェクトマップを簡単に修正するだけで、テストスクリプトがオブジェクトを正確に識別し続けることができます。これにより、テスト自体の変更を最小限に抑えることができます。

Daveはまた、SquishがARMにとって魅力的だったその他の特長についても触れています。特に、データ駆動型テストを容易に実行できる点、複数の標準的なスクリプト言語に対応している点、そして競合するツールに比べて優れた機能を提供している点などが挙げられました。

Squish at ARM

ARMは当初、自社開発のデバッガとEclipseベースのIDEのGUIテストにSquishを採用しました。デバッガはQtを用いて開発されており、Qtに適したテストツールを探していた際に、ARMは初めてSquishと出会いました。現在では、JavaでEclipseベースの新しいデバッガを開発中であり、そのツールの自動GUIテストにもSquishを使用する計画です。

Squishでテストを行うソフトウェアは、WindowsとLinux(具体的には、Windows XP、Windows Vista、Red Hat Enterprise Linux 3および4)で動作します。

Dave氏によれば、ARMがテストの作成・維持において直面した主な課題の一つは、ビルドサイクルを跨いでソフトウェアが変更された場合でも、テストを最新の状態に保つことでした。また、ARMクラスタを開発とテストの集中サーバーとして利用し、テストプロセスを可能な限り自動化することも、もう一つの課題でした。

現在、ARMはSquishのコマンドラインツールを最大限に活用し、テストの自動化を可能な限り推進しています。Dave氏によれば、Squishはテストサイクルの短縮と、テストに必要な人的リソースの削減に大いに貢献しているとのことです。

Squish以外にも、ARMは自社開発のスクリプト(PerlとPython)と独自のデバッガ自動化ソフトウェアを使用し、テストプロセスとテスト自動化を支えています。また、JUnit(Java用のユニットテストフレームワーク)やCXXTest(CおよびC++用のJUnit風ユニットテストフレームワーク)も広範に活用しています。

froglogic(現在はQt Group傘下)の技術サポートについて、Dave氏は「必要とした数少ない機会において、非常に役立った」と評価しています。

結論

ARMは、QtおよびJava技術を基盤としたクロスプラットフォームツールの開発を行っています。Squishの導入により、同社はサポートする全てのプラットフォームで統一されたテストツールチェーンを使用できるようになり、また、使用するGUIテクノロジの種類に関わらず、テストエンジニアが好みのスクリプト言語を自由に使用できるようになりました。ARMはすでに数年間にわたりSquishを使用しており、Dave氏によれば、今後も引き続き、さらに積極的にSquishを活用していく予定です。

Qt Groupは、貴重な時間を割いてSquishを使用したARMの経験を共有してくれたDave氏に感謝の意を表します。

 

お問い合わせ


Blog Topics:

Comments