テスト自動化は何のため? クラウドやAIで変わるテストの今後――ヴェス:@ITソフトウェア品質向上セミナー2018
@ITは2018年12月14日、「@IT ソフトウェア品質向上セミナー」を開催した。本稿ではヴェスの講演「第三者検証専門会社 自動化最前線 −現状とこれから−」の模様をお届けする。
@ITは2018年12月14日、「@IT ソフトウェア品質向上セミナー」を開催した。本稿ではヴェスの講演「第三者検証専門会社 自動化最前線 −現状とこれから−」の模様をお届けする。
金融や決済サービス、医療機器、ゲーム、教育用端末に至るまでさまざまな分野での自動化を支援してきたヴェス。同社 検証サービス本部 マネージャーの松田浩志氏は、その経験を踏まえ「自動化に取り組むときには目的が曖昧になり、自動化それ自体を目的にしてしまいがちだ。自動化によって何をしたいかに着目すべきだ」と述べた。
多くの場合、自動化の主目的はテストの工数削減や属人性排除だ。また副次的な効果として、継続的インテグレーション(CI)との連携や開発サイクルの加速、テストカバレッジの拡大とそこから得られる品質向上などが挙げられるだろう。
そんな狙いを掲げる企業向けに、「Eggplant」「Ranorex」「Selenium」「Appium」など、有償/無償を取り混ぜ、さまざまなツールが提供されている。松田氏によるとこれらツール群は、操作を記録して効率的にスクリプトを生成できるが自由度の低い「レコード/オブジェクト取り込み型」と、自由度は高く他システムとの連携も容易だが知見も求められる「スクリプト型」の2つに大別できるという。
松田氏は「それぞれ一長一短があるが、Webのオブジェクトを全て取り込み、より容易にドラッグ&ドロップでシナリオを作成できる第三の分類『オブジェクト取り込み特化型』も登場しつつある」と述べ、その例として「AscentialTest」を、デモを交えて紹介した。
松田氏は幾つかの自動化プロジェクトを支援してきた経験から、「戦略的な枠組みに沿って自動化を進めようとしても、スクリプト作成の工数やメンテナンスの手間から途中で頓挫することも少なくない」と指摘。解決策として、まず繰り返しが可能なリグレッション試験から自動化を進めて徐々に領域を広げ、自動化率を上げていくアプローチを提案した。さらに「CIと連携して試験を繰り返しながら項目を増やしていけば、品質向上というメリットも得られる」と説明した。
松田氏はクラウドの活用にも言及。クラウド経由で実端末を用いたテストが行えるサービスが登場している他、AWS Lambdaのような仕組みを組み合わせれば、テストを自動化するだけではなく並列で実行でき、効率が大幅に向上することをデモを通じて紹介した。
さらに松田氏は、Selenium/Appiumの要素取得をAIで行い、メンテナンスコストを削減する「test.ai」も紹介。ひいては「テストの自動化範囲がどんどん拡大し、実施コストが極小化するだけではなく、そもそものテスト自動化の目的も変わる可能性がある」と今後の見通しを述べた。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- モノ作りはアジャイルと相性が良い? デンソーの3つチャレンジに見るこれからの「開発」のヒント
今やエンジニアは、ビジネス要件に応じた製品やサービスを「迅速」に、しかも「高い品質」で、できれば「低コスト」で開発しリリースするという、相反する要求を同時に満たす必要に迫られている。では、どうすればその要求を同時に満たすことができるのだろうか? - iPhone/Android含むブラウザ自動テストの最終兵器Selenium WebDriverとは
Chrome、Firefox、Internet Explorer、Opera、Android、iOSといったブラウザに対応し、Java、C#、Python、Rubyなどが使えるWebテスト自動化ツールの3つの特徴と環境、実装方法を簡単に紹介する【2017年の情報に合うように更新】。 - SeleniumのUIテスト自動化をiOS/AndroidにもたらすAppiumの基礎知識とインストール方法、基本的な使い方
本連載では、AndroidおよびiOSアプリ開発における、システムテストを自動化するツールを紹介していきます。今回は、オープンソースのモバイルテスト自動化ツール「Appium」の特徴やインストール方法、基本的な使い方を説明します。