Eggplant Software Testingの利点 / 小売業界向けアプリケーション
昨年の11月に、サンフランシスコのスタートアップ企業であるOpenAI社がChatGPTをリリースし、2カ月間で1億ユーザーを記録した頃から、何かとAIに関する話題で騒がしくなってきました。
1970年代からAIを研究しニューロンネットワークで有名なジェフリーヒントン氏は「AIが人知を超えるのは30年、50年、それ以上かかると予想していたが今はそうは考えない」というようなことをニューヨークタイムズ誌に語ったといわれています。
その後、マイクロソフト社は1億ドルを出資し、Bingに取り入れられましたが、PowerPointなどにもプラグインされようとしています。
GitHub copilot(副操縦士)は数年後、GitHub autopilotに名称変更しているかもしれません。
IT業界に大波や小波が押し寄せるなら、AIは結構な大波なのかもしれません。
ただ海外のニュースソースはその一方で “Chatbot” と形容しているのをちらほらと目にします。
OpenAI社はAGI(artificial general intelligence:汎用人工知能)を目指しているようですがどうやらそれはまだ先のようです。
その行く末にはAI研究者を中心に懸念も表明されていますが、いずれにしても自律的に様々なことが自ら行われるのは、今はまだサイエンスフィクション映画の中だけの話です。 現在のAIはなんらかの人の介在が必要です。
さて、Eggplantですが、コードを実行する、という点では従来型のテストツールと同じなのですが、先進的なコンピューターの視覚による操作が可能で、テストの自動実行部分にAIが取り入れられたテストツールです。
EggplantのAIは、過去の動作不良の履歴、テスト対象アプリケーションの変更、テストの網羅性の履歴、などの複数の要素を調べて、テストに何が必要かを探索します。
次にテストケースを作成し、テストケースを実行し、レポートします。
メーカーのブログに、小売業界向けのアプリケーションのテストに関するEggplantの利点が述べられていましたので、抜粋し、ご紹介いたします。
Eggplantによる、自動的なソフトウェアテスト実行の利点
マニュアルテストから自動テストに、ソフトウェアテストを変えることで、小売業の皆様は、ソフトウェアの品質、機能性、パフォーマンスを向上することが可能です。
Eggplantの何が特別なのか、見てみましょう。
Digital Twins(デジタルツイン)
デジタルツイン/モデルベース のテストは、テスト対象システム(SUT: system-under-test)を図式化することが可能で、ソフトウェアテストの効率性と正確性が向上します。
デジタルツイン技術を使用することで、仮想的なモデルを作成して、POSターミナルやモバイルアプリケーション、ERP、イーコマースウェブサイトといったアプリケーションのユーザー操作を視覚化し、シミュ―レートすることが出来ます。
その結果、決められた順次的なテストを拡張し、知能的なテストの探索的実行を行うEggplantのマシンラーニングアルゴリズムの利点を得ることが出来ます。
下図のようなイーコマースのウェブサイトでは、数千に及ぶテスト対象のユーザージャーニーが含まれています。
私はそのテストを、人の手で開始するのではなく何か別の方法で行いたいと思うことでしょう。
モデルベーステストはテストのメンテナンスも大きく削減します。
例えば、イーコマースのウェブサイトに支払代行プロバイダーを変更するとします。
Eggplantは、そのモデルの他の部分に大きな影響を及ぼすことなく新たなテストケースを自動生成します。
様々な自動化テスト
Eggplantは、テスト対象システムのソースコードに必ずしもアクセスする必要が無い為、様々なテスト対象に対してもテストが可能です。
メーカーに限定されない、POSターミナル
ブラウザーに限定されない、イーコマースサイト
OSやデバイスに限定されない、モバイルデバイス
Eggplantは非常に柔軟なので、ソフトウェアテストだけでなく、ハードウェアのテストの為に、ロボットに接続して動作させることも出来ます。
つまりそれは、PIN入力のパッド、バーコードスキャナー、クレジットカード支払い機など、チェックアウトまでの間に含まれるほとんどの物です。
それだけではありません。
Eggplantはコードにアクセスすることなく、必要に応じて(ロボットへのアクセスを)可能にします。 この特定の技術に依存しない方式は、ユーザーインターフェースの下にある、オブジェクト、API、バックエンドシステムを含まれた、各層を纏めてテストが行えることを意味します。
複数のツールを使用する代わりに、Eggplantは、
API呼出により、インベントリ管理システムのデーターを確認する。
コード内で、製品データーが正しいことを確める。
UIに表示された情報が正しいかを検査する。
といったことが、可能です。
顧客の視覚を通したテストの自動化
UI層のテストを行わないと仮定します。その場合、顧客が、皆さんのイーコマースウェブサイト、モバイルアプリケーション、ERPシステム、又は、POSターミナルを、どのように操作するか理解することは出来ないでしょう。
イメージベースのテストを行いながら、Eggplantは、視覚要素が正しく表示されて、意図されたように機能するかを確かめて、使用性とユーザー経験の問題を素早く見つけ出します。 光学的文字認識を通して、Eggplantは、スクリーンショットを使用しながら、製品説明、画像、ブランドのロゴの検査も可能ですので、皆様は、間違いを素早く見つけて、修正することができます。
以上、日本語の訳は意訳となります。
正確なオリジナルの全文は次のリンクよりお読みください。