NEXTSCAPE blog

株式会社ネクストスケープの社員による会社公式ブログです。ネスケラボでは、社員が日頃どのようなことに興味をもっているのか、仕事を通してどのような面白いことに取り組んでいるのかなど、会社や技術に関する情報をマイペースに紹介しています。

MENU

画面テストの自動化ツール[パワーランチ]

こんにちは。

今月もパワーランチ(勉強会)が開催されました。

01

今回のテーマは「テストの自動化(ユニットテスト除く)」についてです。画面を操作するテストについて「自動化の落としどころを費用対効果を踏まえて考える」という内容です。

スピーカーはワタクシことテストマネージャーのjunichiです。

TestCompleteというキャプチャ&リプレイツール(*1)の使い勝手が非常によかったので、今後、役立つと思い紹介しました。

それでは、勉強会の内容を紹介しましょう。

 


自動テストの費用対効果

みなさんは、テストをどの程度自動化してますか?

「リソースが十分にあるから自動化なんて考えたこともないよ」なんて方もいらっしゃるかも知れませんが、この世知辛い昨今、たいていはテストのリソースを捻出することもも大変なのではないでしょうか。

テスターやエンジニアとしても、毎回、同じテストをチマチマ実行していると気が滅入ってきます。やっと終わったと思っても、ちょっと変更が入ったからもう1回お願いしますとか、操作が間違ってたので最初からとか、またチマチマやるのか・・・。大変だー!って感じですよね。

数年前にキャプチャ&リプレイツールと呼ばれる自動化ツールを使い始めたのは、「リソース」「面倒くささ」このあたりをどうにかしたいと思ったのがきっかけです。
何度も苦戦しましたが、いろいろ試してみた結果、

  • 何回も実施するテスト
  • 作業が複雑なテスト
  • 入力データが多いテスト
  • 同じ操作を複数環境で行うテスト

を自動化すると費用対効果が高いことに気づきました。そして、不思議なことに「手動での実施が面倒なテスト」とも一致しています。

では「全部自動化すれば良いのでは」となるのですが、そこは自動テストの作成コストとの兼ね合いになります。個人的には、自動化して費用対効果が高くなるテストは、

手動テストの実施コスト × 繰り返し回数 > 自動化テストの作成コスト +(自動化テストの実施コスト × 繰り返し回数)

となる箇所だと思ってます。

ただし「自動化テストの作成コスト」は結構ブレる場合があります。それは作成者の技術力だったり、アプリケーションとツールの相性にも依存します。思った通りにテストが作れなくて、テストツールがまったく使われなかったりすると残念です。そうならないためにも、アプリとツールの相性を事前に調査することは重要です。

TestCompleteについて

02

さて、ここからはTestCompleteの話です。

先日、とあるプロジェクトでアプリケーションとツールの相性を検証していたところ、TestCompleteに出会いました。他のツールもいろいろ使っていましたが、TestCompleteの使い勝手が一番よかったのでこれを採用し、そのプロジェクトでは大活躍しています。

他のツールと比較して、TestCompleteを採用した理由は、以下の通りです。

  1. 安い(他に比べて)。
  2. サポートしているアプリケーションやユーザーコントロールが非常に多い。
  3. 使いやすい。

2.はサードベンダー(Infragistics社等)のコントロールもサポートしているので助かりました。3.は複雑な処理をテストするには結局コードを書く必要があるツールも多いですが、TestCompleteではかゆい所に手が届いているので、すべてGUIで作成できました。

また、テストの自動化レベルをスクリプティングレベル(*2)と言いますが、レベル5までのテストを直感的に作れる点で使い勝手が良いです。

TestCompleteは使えば使うほど「よくできてるなぁ〜」と感心させられるツールです。なにより、テストを作る作業が楽しくなるのは大きなポイントです。
以上、勉強会レポートでした。TestCompleteは、日本でのサポート体制が整備されきっておりませんが、弊社では社内/社外を問わず可能な限りサポートさせて頂きますので興味のある方はお気軽にお声掛けください。

TestComplete、おススメです!

*1:キャプチャ&リプレイツールの概要については、この辺が詳しいです。
*2:スクリプティングレベルについては、この辺が詳しいです。