Special
» 2018年03月09日 12時00分 公開

テスト自動化ツールの工数削減効果とは:もう怖くないWindows 10移行 業務アプリテストを自動化、高速化する

業務アプリの検証が間に合わず、古いバージョンのWebアプリを使っている。セキュリティの懸念もあり何とかしたいが、人も時間も足りないといった企業は少なくない。

[PR/@IT]
PR

※この記事は「TechTargetジャパン」に2018年2月に掲載した記事を再構成したものです


 IT担当者にとって、OSやWebブラウザのアップデート/アップグレードは、頭の痛い問題の1つである。業務用アプリケーションは、業務を正しく遂行するために、常に正常稼働が求められる。だが、こうしたアプリケーションの多くは、ベースとなるOSやWebブラウザの影響を受けやすい。

 IT担当者は、OSやWebブラウザがアップデートされるたびに、業務アプリケーションが正常に稼働するかどうかをテストしてきたはずだ。OSやWebブラウザの開発ベンダーも昨今のセキュリティ脅威の問題から、頻繁なセキュリティアップデートを自らに課して、ソフトウェアの安全性を担保しようとしている。

 例えば、最新のWindows 10では、大規模な機能強化が半年に1回、セキュリティアップデートは毎月という高頻度、加えて影響度の高いアップデートも不定期に発生する。Windows 10で搭載された新しいブラウザの「Microsoft Edge」や「Google Chrome」「Firefox」といった主要なWebブラウザも、およそ6〜8週間でアップデートされる。ソフトウェアベンダーがセキュリティ対策に積極的であること自体は歓迎すべきであるが、業務アプリケーションの管理者としてはたまったものではない。

 Webブラウザに限らず、他にも2019年に予定されている消費税増税や、現在議論が進んでいる元号の変更など、業務アプリケーションの改修が必要となる機会は頻繁にある。改修が頻繁になればそれだけテストも必要になり、業務アプリケーション管理者は休む暇もない。

 クライアントの環境が多様化していることも問題だ。PC端末の違いはもちろん、Webブラウザの種類によっても細かな挙動は異なる。それらの全て漏れなくテストしなければ、業務ができない従業員が生まれてしまうかもしれない。十分なリソースがかけられない中、明らかに負荷が増大する「アプリケーションテスト問題」をどのように解決すればよいのだろうか。

テストシナリオを簡単にスクリプト化

 アプリケーションテスト問題の根本的な原因は、細かなテストをIT担当者が手作業で実施してきたことだ。スクリプトなどで自動化できるものもあるだろうが、その範囲は一部に限られていた。高頻度に複雑なテストを漏れなく実行するためには、高度な自動化の仕組みを取り込まなければ対応できない。そこで有効なツールとして登場するのがIBMの「IBM Rational Test Workbench(以下、RTW)」である。

 業務アプリケーションのほとんどはWebアプリケーションかWindowsアプリケーションとして提供される。RTWは、その両者でテスト作業の記録と実行を自動化することができる。用意したシナリオに沿ってマウス操作やキーボード入力を実施するとRTWは「テストスクリプト」を自動的に生成する。スクリプトの内容は「○○をクリックする」のような日本語で表記され、画面キャプチャーも取得するため、動作をチェックして修正するのも容易である。

画像 RTWの操作画面《クリックで拡大》

複数のOSやWebブラウザでも1つのスクリプトでテストを実行

 RTWでは、画面上の部品を「オブジェクト」として認識し、操作を記録する。そのため、Webブラウザが変わったり、画面サイズが変わったりしても、テストスクリプトを作り直す必要がない。例えばWebアプリケーションをテストする「Web UI Tester」は、1つのテストスクリプトを「IE(Internet Explorer)」、Google Chrome、Firefoxという3つのブラウザで複合的に実行できる。

画像 1つのスクリプトでマルチブラウザのテストが可能《クリックで拡大》

 異なるOSやWebブラウザでの挙動を確認したい場合も、テスト用の端末は別途必要だが、テストスクリプトは1つで済む。「ログインした後でアイテムを表示し、カートに追加」といった複合的なテストシナリオであっても、容易に自動化して繰り返すことができる。自動のため夜間や休日でもテストできるし、担当者のミスや裁量で「いつの間にか本来実施したいテストと別の内容でテストしていた」ということも防止できる。ログインを切り替えてのテストもできるため、例えばユーザーごとに画面遷移が異なるようなWebアプリケーションでも、それぞれのユーザーでログインしてテストできる。

 次項ではエビデンス作成支援などを含めたRTWによる具体的な工数削減効果を紹介する。

レポート機能でエビデンス作成工数も削減

 RTWは、テスト実行後のレポート機能も備えている。テストが完了すると、画面ハードコピー付きの結果を生成し、テストの結果や応答時間、実行環境やテストのステップなどの詳細を確認できる。経営者や利用者にとって、アプリケーションが確実に動作することの保証は極めて重要だ。RTWは、どのようなテストを行い、どのような結果が得られたかを確実に示すことができ、エビデンス(テストの証跡)作成工数を大幅に削減する効果もある。

画像 日本アイ・ビー・エムの川瀬敦史氏

 日本アイ・ビー・エムのIBM クラウド事業本部 クラウドソフトウェア営業部DevOps Evangelist担当部長の川瀬敦史氏によると、実際のユーザー環境に合わせるとおよそ80%ものテスト時間が削減できたケースもあるという。テスト回数が増加すれば、その削減効果はより大きくなる。複合的なテストの自動化やレポート機能によって、統合的な工数はさらに削減できるだろう。

 特にWindows 10への移行においては、失敗したテストの情報が問題点の洗い出しに役立つだろう。どのような挙動が発生したか、どのオブジェクトに問題があるのか精査して、アプリケーションの改修を効率よくできるためだ。新しいアプリケーションを開発するときには、開発ベンダーとテスト基盤を共通化するという点で役立つはずだ。

多様なライセンス形態でDevOps推進を後押し

 RTWは1ライセンスで、4つのテスト機能を持ち合わせている。Webアプリケーション向けの「Web UI Tester」、リッチアプリケーション向けの「Functional Tester」の双方に対応する。負荷テストやボトルネック解析に用いる「Performance Tester」やサービス仮想化やAPI(Application Program Interface)をテストできる「Integration Tester」のような開発者向けの機能も利用できる。RTWのライセンス体系は2種類あり、同時稼働に制限はあるが、インストールするマシン台数は問われない「フローティング・ライセンス」と、利用ユーザーが制限される「オーソライズド・ユーザー・ライセンス」が用意されており、用途に合わせて選択できる。

 RTWは総合的なテストツールとして、初めてでも使いやすい日本語インタフェースを用意しており、ITの専門知識を持たない業務部門が自らテストを作成、実施できる点が強みである。ポイントソリューション(部分最適)になりがちなOSS(オープンソースソフトウェア)のテストツールにはない魅力だ。

 近年のIBMは、DevOpsツールの開発、提供に注力しており、アプリケーションテストに関わるさまざまなポイントの自動化を図っている。よりスピーディーで競争力の高いビジネスのために、RTWの導入を検討してみてはいかがだろうか。

Copyright © ITmedia, Inc. All Rights Reserved.


提供:日本アイ・ビー・エム株式会社
アイティメディア営業企画/制作:@IT 編集部/掲載内容有効期限:2018年3月31日

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。