支援対象地域:札幌、仙台、関東、愛知、関西、広島、福岡

  • TOP
  •   
  • コラム
  •   
  • Applitoolsとは?詳しく解説

概要

ここでは、Applitoolsとは?という点について詳しく解説させていただきます。
ApplitoolsはVisual AIを活用した次世代のテスト自動化プラットフォームとして知られております。 Visual AIは、人工知能を作成および使用して画像を処理および理解する方法を研究するAIの一部門です。 Visual AIには、医療、教育、法執行機関など、さまざまな用途があり現在最も急速に成長しているAI分野の1つです。このような視覚認識ソフトウェアの世界市場は、2017年の20億ドルから2022年には90億ドルに成長し、今後もさらに需要が拡大すると予測されています。 この技術を使うことで画像を分析し、画像内のオブジェクト、人、または顔を検出できます。また、誰かの顔の感情を識別することや、周囲に基づいて何をしているかを推測することも可能であり、従来では難しかった様々な課題を解決することが可能となります。 Applitoolsはインテリジェントなテスト自動化プラットフォームの機能を活用し品質を向上させ、納期を短縮し、コストを削減します。
以上が簡単ではありますがApplitoolsの概要に関する説明とさせていただきます。

ビジュアルテスト

Applitoolsを正しく活用し、効率的に導入するためにはビジュアルテストの理解は必須となりますので、簡単に説明させていただきます。
ビジュアルテストでは、アプリケーションの目に見える出力を評価し、その出力を設計で期待される結果と比較するテストとなります。 つまり、機能的なバグとは異なる、ページや画面の外観の視覚的なバグを検出するためのテストとなります。 これらは人間が実施するテストであったのですが、エラーを完全になくすことが難しい点や、人間が対応するためにコストや時間がかかるという課題が存在します。

Applitoolsの自動ビジュアルテストツールを利用することでこのビジュアルテストを高速化し、手動検証で発生するエラーを減らすのに役立ちます。Applitoolsはあらゆる任意のアプリケーションでいつでもビジュアルテストを実行できます。ほとんどの開発者は、開発中に個々のコンポーネントに対して視覚的なテストを実行し、エンドツーエンドのテスト中に機能するアプリケーションに対して実行します。
Web開発者はさまざまなブラウザーとオペレーティングシステムで表示されるページを作成します。 HTMLとCSSのように一度書けば、どこでも実行することが可能であるシステムをビジュアルテストに導入し、 開発者やテストエンジニアが視覚的なバグの可能性を把握させ、工数を削減することが可能となります。

自動ビジュアルテスト

自動ビジュアルテストについても触れておきます。
これらはソフトウェアを使用して、さまざまな画面の組み合わせで視覚要素を比較するプロセスを自動化し、視覚的な欠陥を明らかにします。
Selenium Webdriver、Cypress、WebdriverIO、Appiumなどのツールで実行されている既存の機能テストスクリプトに、自動化されたビジュアルテストの機能をアドオンすることで実施することが可能です。 スクリプトがアプリを駆動すると、アプリは静的な視覚要素を含むWebページを作成します。 機能テストは視覚要素を変更するため、機能テストの各ステップでは、視覚的にテストできる新しいUI状態が作成されます。 自動化されたビジュアルテストは、機能テストから進化したという経緯があります。
各ビジュアル要素のプロパティをチェックするためにアサーションを作成するという工程でなく、自動化されたビジュアルテストツールは、たった1つのアサーションステートメントで画面全体の外観を視覚的にチェックします。 これにより、テストスクリプトがはるかにシンプルで維持しやすくなります。

AIとビジュアルテスト

Applitoolsは、AIを活用した自動ビジュアルテストのパイオニアであり、主要なベンダーとして知られております。
Applitoolsには、アプリケーションテストの生産性を大幅に向上させるためのさまざまなオプションがあり、開発中のコンポーネントのテストを支援します。 また、Ultrafast Gridでテストを実行することもできます。これにより、1つの環境で、さまざまなブラウザーやOS構成の他の多くの環境でビジュアルテストを再作成できます。 現在の自動化されたビジュアルテストでは、コンピュータービジョンと呼ばれる人工知能アルゴリズムのクラスを、ビジュアル比較のコアエンジンとして使用しています。これらのアルゴリズムは、顔認識などの画像でオブジェクトを識別するために使用されます。

詳細

AIを活用した自動ビジュアルテストでは、学習アルゴリズムを組み合わせて、レンダリングされたページと意図したビジュアル要素の表示と実際のビジュアル要素および場所との関係を解釈します。
ピクセルツールと同様に、AIを利用した自動ビジュアルテストでは、機能テストの実行時にページのスナップショットが取得されます。 ピクセルベースのコンパレーターとは異なり、AIを利用した自動ビジュアルテストツールは、ピクセルの代わりにアルゴリズムを使用して、エラーが発生した時期を判断します。
スナップショットテスターとは異なり、AIを利用した自動ビジュアルテストツールは、精度を確保するために静的な状態を維持する特別な環境を必要としません。 テストと実際の顧客データは、比較が単なるピクセルではなく関係に基づいているため、動的コンテンツでもAIテストツールの精度が高いことを示しています。 AIを活用した自動ビジュアルテストツールは、さまざまなOS/ブラウザー/向き/解像度の組み合わせで、幅広いビジュアル要素をテストできます。レンダリングと機能テストの最初のベースラインを1つの組み合わせで実行するだけで、AIを活用したツールをガイドして、潜在的なプラットフォームの範囲全体で結果をテストするのに十分です。

これらのビジュアルテストツールは、コンテンツや形式の定期的な変更が必要なアプリやWebレゼンスの重要な検証ツールです。 メディア企業は1時間に2回という頻度でコンテンツを変更し、AIを活用した自動テストを使用して、有料の顧客に影響を与えることなく実際のエラーを分離しています。また、AIを活用したビジュアルテストツールは、ブランドの改訂や合併を行うアプリやWebプレゼンスのテストの重要なツールとして機能します。 これらは低いエラー率と高い精度により、企業は主要な DOM、CSS、JavaScriptに関連する問題を特定して修正することができます。

ビジュアルテスト戦略

ビジュアルテスト戦略を追加すると、テストコードを削減し、同時にカバレッジを向上させることができます。
UIオートメーションのポイントであるナビゲーション、送信、またはAJAX呼び出しのたびにページを停止して何らかの作業を行う準備ができているかどうかを確認する必要があります。 ページを正常に操作するには、まずオブジェクトが存在し、表示されているかどうかを確認してから、ページの値を確認する必要があります。
ビジュアルテストツールを使用すると、オブジェクトのポーリングやページでのアサーションへの依存をある程度減らすことができます。 ページに移動した後、ビジュアルテストライブラリは、現在のビューとベースラインイメージのレイアウトとコンテンツを比較できます。 これはページごとに実行でき、自動化されたテストの遭遇をポップアップします。最終的により強力なテストが得られ、テストコードが少なくなります。

このレベルの視覚的テストは、画像比較の方法が原因で、数年前には不可能なテクノロジーでした。 最新のビジュアルテストツールは、テストをより安定させ、誤検知を少なくするさまざまな比較とレビューを提供します。 理想的には、より安定したテスト、より単純なテスト コード、およびソフトウェアのビジュアル部分の意図的なカバレッジが得られることです。 また、ほとんどのテストが構築されている小さなアサーション以外の問題を発見する能力も得られます。

ビジュアルUIテスト

ビジュアルUIテストについても紹介させていただきます。
自動化と組み合わせたビジュアルUIテストは、WebDriverテストが実行されるたびにユーザーインターフェイスの変更に関するフィードバックを提供するだけでなく、一種のビルドドキュメントも作成します。保存された各ベースラインは、特定の時点でのユーザーインターフェイスの状態の参照として使用できます。 これで、テスターがつまずいたときに入ってくるユーザーインターフェースに関するランダムな情報ではなく、自動化されたユーザーインターフェース テストに基づいて、すべてのビルドに関するニュースがグループに届きます。
次のプロセスは失敗を見て、何が重要で何が問題ないかを判断するプロセスを、十分な速さで行うための判断を行います。 ベースラインと新しくキャプチャされた画像の違いを強調するクイック比較ツールは、数分で使用できます。 そしてベースラインと新しいイメージを並べて表示して、違いを視覚化できるようにします。

一部のツールでは、グループの承認または拒否のために同様の相違点をグループ化して、このプロセスを高速化できます。たとえば、Webサイトのフッターが変更され、その変更が原因ですべてのページが失敗した場合、その更新されたセクションをすべてのページで同時に承認できます。
WebDriverスクリプトが、実在の人物が実行した場合には機能しないテストに合格するケースもあります。 たとえば、日付ピッカーを開くはずの自動スクリプトを見ていたら、値を選択してからフォームを送信するなどです。 テスト中に日付ピッカーが目に見える形で開かれることはありませんでしたが、値はまだ設定されていました。 ピッカーを開くためにクリックが実行されましたが、モーダルは何か他のもので覆われていました。WebDriverテストは、日付ピッカーが画面に表示されることなく、DOMを介して日付値を正常に選択していました。 このタイプのバグは、ビジュアルUIテストからキャプチャされた画像を比較するとすぐに発見されます。 そしてビルドのたびに発見される可能性があります。
自動化を行わないと、導入後数回のビルドで視覚的な問題が発見されることがよくあります。この時間のギャップにより、開発者は問題の原因を発見することがより困難になる可能性があります。 視覚的UIのテストは、緊急のテストセッションを利用して、通常の情報の流れに変えます。 これらは土壇場で発見するのではなく、すべてのビルドが点滅テストを実行する機会です。ユーザーインターフェイスを置き去りにする必要はありません。

機能

Applitoolsの機能について説明させていただきます。

発見

Applitoolsの機能の一点目が発見です。
Applitools Eyesと呼ばれる機能でVisual AIを活用した機能およびビジュアルテストの自動化により、カバレッジを拡大し、メンテナンスを削減します。 Applitools Eyesはその名の通り、人間の目を複製したことをイメージされている機能です。
視覚的なバグや欠陥を自動的に発見することで、ほぼすべてのブラウザーまたはデバイスで視覚的に完璧なアプリケーションを出荷できます。 例えば、ベースライン画像を比較し、視覚的および機能的な回帰を自動的に見つけることができます。 また、アプリケーション全体を数秒でテストを実行する機能性も兼ね備えております。 常に新しいテストやアサーションを作成する必要なく、アプリケーションに加えられた各変更をすばやくテストすることが可能となります。

さらに、Applitools Eyesはワークフローに直接統合することができます。 Applitools Eyesは現在利用しているテストスイートの拡張機能として機能されることができます。 Cypress、Selenium、またはその他のテストフレームワークと統合して、お気に入りのCI/CDツールで実行することができるため非常に便利です。

Applitools Eyesについて

Applitools Eyesは、手動テスターのようにアプリケーションをテストする最初の自動ソフトウェアテストツールです。Chrome、Safari、Internet Explorerなどを含む複数のブラウザーでWebアプリケーションをテストでき、必要な数の画面解像度でテストできます。
また、縦向きと横向きの両方で、iPhone、iPad、またはiPad miniでモバイルアプリケーションをテストすることもできます。
Applitools Eyesは、ビジュアルUIテストを実行するだけでなく、テスト結果を管理および分析する完全なアプリケーション ビジュアル管理 (AVM) ソリューションでもあります。 そのため、Applitoolsを使用すると、ビジュアルUIテストによって生成された膨大な数のベースラインイメージを管理し、ビジュアル テストの結果を記録して集計し、合格したテストと不合格だったテストを表示できます。 また、テスト データを分析し、意味のあるレポートと分析を生成することもできます。

さらに、Applitoolsはテストベースラインの関連性を維持し、不正確なデータによって汚染されないようにします。Applitools Eyesは、テストのベースラインを管理するための独自のツールを提供し、情報の過負荷につながるような方法で伝播される誤解を招く情報を削除して、潜在的に有害な問題を隠したりします。 Applitools Eyesが提供するすべての優れた独自の機能に加えて、多くの既存のテスト自動化および管理システムともうまく機能します。 Applitools Eyesは、Selenium、Appium、WebdriverIO、 Microfocus (以前の HP) Unified Functional Testing (以前の QuickTest Professional)、およびその他40を含む、多くの既存のテスト自動化フレームワークと連携します。

Applitools Eyes Test Manager

Applitools Eyesを制御するApplitools Eyes Test Managerについて説明させていただきます。
Applitools Eyes Test Managerはサイドバーと中央パネルの2つの主要領域に分かれているので、主要なコーポネントについても説明させていただきます。
一点目がサイドバーです。
サイドバーは、Applitools Eyes Test Managerの左側に配置されております。 ここでは、記録されたすべてのテスト実行が表示され、最新の実行が一番上に表示されます。 各実行には、テストのバッチが含まれます。デフォルトでは、各テストの実行は個別のバッチとして表示されます。 ただし、Eyes SDKを使用して、複数のテストを1つのテスト実行にまとめることができます。
二点目がセンターパネルです。 中央パネルには、現在選択されているバッチの詳細が表示されます。テスト結果を表示および管理するためのさまざまなビューが用意されています。すべてのビューでフィルターを使用して、関心のあるステップ、テスト、およびバッチを検索することができます。
三点目がテストの詳細ビューです。 Applitools Eyes Test Managerのビューでは、オペレーティングシステム、ブラウザー、ビューポートサイズ、および開始時間ごとにテストを検査および並べ替えることができます。 テストをグループ化し、利用可能なプロパティを使用して独自の階層を作成できます。テストをクリックすると、 検証のために送信されたスクリーンショットのサムネイルが表示されます。
四点目がバッチステップビューです。 Applitools Eyes Test Managerのバッチステップビューは、検証済みのスクリーンショットを1つのグループで表示し、元のテスト実行やバッチを無視します。 さらにこのビューでは同じまたは類似した違いを持つ多数のステップをグループ化した単一の代表的なスクリーンショットを作成できます。
五点目がバッチ概要ビューです。 このビューにより、マネージャーとチームメンバーはバッチのステータスをすばやく評価できます。 また、テストごとの合格もしくは不合格の比率や、ブラウザー、オペレーティングシステム、ビューポートサイズごとにグループ化されたテストステータスの分布など、主要な指標を視覚化することもできます。
六点目がテスト実行の管理です。 初めてテストを実行すると、Applitools Eyes Test Managerはそのテストにラベルを付けます。
ラベルは、これが新しいテストランであること、テストに合格したこと、およびそのスクリーンショットがベースラインの作成に使用されたことを示しています。 サムネイルの左上隅にあるプラス記号は、これが以前はベースラインに存在しなかった新しいステップであることを示しています。 高評価の記号は、Applitoolsがスクリーンショットを受け入れ、ベースラインイメージとして含めたことを示します。 さらに、ベースラインに一致するテストまたはスクリーンショットは合格としてマークされ、そのステップは緑色のストライプと等号で表示されます。

最新アップデート

Applitools Eyesの最新アップデートについても説明させていただきます。
Applitools Eyes10.14が現在の最新アップデートとなり、従来のバージョンにいくつか改善が加えられました。 このバージョンアップでは大小の組織のユーザーが仕事をできる限り迅速に完了できるように実行し、新しいチーム メンバーのオンボーディング、チームのテスト結果の管理、すべてのチームメンバーとの共有を簡単に行うことが可能となりました。 また、組織のコンプライアンスのニーズを満たすために、いくつかの使いやすさとアクセシビリティの機能強化を実装し、機能拡張を行いました。

では、いくつか具体例を出しながら説明させていただきます。
一点目がテストの割り当てに関する機能です。 すでに実装されておりましたらテストの割り当て機能が拡張および改善され、ユーザーはセッションだけでなく、割り当てられたテストをフォローアップできるようになりました。 ユーザーは担当者でフィルタリングし、テストを効率的に管理できるようになりました。 この機能では、バッチの詳細ビューに一覧表示されているテスト結果をチームメンバーに割り当てることが 可能となります。これらの1つのテスト結果または複数のテスト結果をチームメンバーに割り当てることができ、チームメンバーからテストの割り当てを解除することもできます。
割り当ては、すべてのテスト実行で永続的に実行することが可能となります。 また、チーム管理者は割り当て通知の構成を行い、テスト割り当てに関する電子メール通知を実施できます。
二点目が自動拒否です。 拒否機能が更新され、ユーザーが特定のチェックポイント画像を拒否すると、Applitools Eyesは次のテスト実行でもこのチェックポイント画像を拒否として自動的にマークするようになりました。これにより、テスト結果の確認に必要な時間が短縮されます。 テスト後、不一致のあるステップのステータスはUnresolvedに変更となり、これらのステップを承認または却下することでそのステップは解決されます。また、テストの結果ステータスは、テスト内のすべてのステップの結果ステータスに依存します。そのため、未解決のすべてのステップが承認または却下されるまで未解決のままになります。
すべてのステップが解決されると、最終的なテスト結果はPassedまたはFailedという形で表記されます。 これらのテスト結果のステータスは、すべてのステップが一致するか受け入れられた場合にPassedになり、いずれかのステップが失敗したか拒否された場合にFailedになります。テストが完了すると、各ステップは、Match、Mismatch、New、またはMissingのいずれかのステータスで分類されます。 ステップのステータスは、ステップサムネイルの一部として、およびステップエディタとテストエディタに表示されます。Mismatch、Missing、またはNewのステータスのステップは解決する必要があります。
つまり、詳細な説明で説明されているように、ボタンまたはキーボードを使用して承認または拒否する必要があります。 ステータスがMatchのステップ定義により解決され、結果が期待したものと異なる場合を除き、受け入れる必要があります。その場合は拒否できます。
予期しない結果は、バグが原因であるか、新しい機能または変更された機能が原因で発生する可能性があります。 チェックポイントイメージがベースラインイメージになることを示すステップを受け入れるか、現在のベースラインイメージを保持する必要があることを示すステップを拒否することができます。 ステップを受け入れるか拒否すると、その選択はすぐに保持されます。 1つ以上のステップを受け入れた後、ある時点で変更を明示的にベースラインに保存してベースラインイメージが受け入れられたチェックポイントイメージで更新され、将来のテスト実行で参照として使用されるようにする必要があります。 特定のチェックポイント画像を拒否すると、Applitools Eyesはこの決定を記憶し、次のテスト実行でもこのチェックポイント画像を拒否として自動的にマークします。
三点目がAPIです。 最新のバージョンではAPIを介して完全なバッチ結果をエクスポートできるようになりました。
これにより、チームはApplitoolsテストクラウドから大量のテスト結果を簡単に取得して独自の内部システムやワークフローで使用することが可能となりました。
四点目がフィルター処理です。 テストを実行したユーザーによってテスト結果とバッチをフィルター処理できるようになりました。新しい実行者フィルターを使用すると、特定のチームメンバーのテストをすばやく簡単に深く掘り下げることができます。
五点目が教育です。 オンボーディングビデオでは、Applitoolsを初めて使用するユーザーや知識を増やしたいユーザーのために ラーニングセンターの新しいビデオツアーセクションを利用できます。 このセクションには、初心者および上級ユーザー向けの短いビデオツアーが含まれており、オンボーディングに役立ちます。
六点目が詳細なアクセシビリティの改善です。 すべてのユーザーがApplitools Eyesを可能な限りアクセシブルにするための継続的な取り組みの一環として、製品に追加のアクセシビリティ機能強化が追加されました。

高速化

Applitoolsの機能の二点目が高速化です。
次世代のクロスブラウザーおよびクロスデバイステストは、機能テストとビジュアルテストを最大30倍高速化します。
クロスデバイステストは、アプリケーションがさまざまなデバイスやフォーマットで目的の結果を提供することを検証するシステムです。 このテストは迅速かつ継続的に行われることでより効果が生まれます。 WebアプリケーションでCI/CDを意識するケースは多いですが、ネイティブモバイルアプリで同様の意思をもつことは非常に重要です。
モバイルアプリのテストにおける最大の課題は多くのメーカーが存在し、デバイスの種類は数千に上ることです。 ユーザーが使用できるデバイスの数が非常に多いため、多くのバリエーションを想定しながらテストを実施する必要があります。 具体的にはOSの種類とバージョン、潜在的にカスタマイズされたOS、ハードウェア リソース (メモリ、処理能力など)画面サイズ、画面解像度、それぞれ利用可能な容量が異なるストレージ、モバイルデータを使用するWifiなどです。
ユーザーが使用する可能性のある各タイプのデバイスでテストを実行できないことは明らかです。 アプリの新しいバージョンをリリースしたときに ユーザーが悪影響を受けないという迅速なフィードバックとテストからの信頼を得る必要があります。

これらの高速化を実現するための理由について説明させていただきます。
一点目が同時実行です。 スクリーンショットジョブをクラウド内の数百のブラウザーのグリッドにファームアウトすることにより、並行して実行し、要求されたブラウザーの種類、ビューポートサイズ、シミュレートされたデバイスのすべての異なる組み合わせに対してWebページのスクリーンショットを生成します。 また、これらを同時に実行することでより高速化を実現することが可能となります。
二点目がスナップショットです。 Applitools SDKは、スクリーンショットではなくDOMスナップショットをApplitools Ultrafast Grid にアップロードします。 スナップショットには、ページのレンダリングに必要なすべてのリソース (HTML など) が含まれており、スクリーンショットよりもはるかに小さいため、はるかに高速にアップロードされます。
三点目がコンテナです。 クラウド内の複数の仮想マシンでコードを実行すると、多くの時間がかかるため仮想化のオーバーヘッドが原因で不安定になります。Applitools Ultrafast Gridはコンテナを使用して、さまざまなブラウザーでWebページをはるかに高速で信頼性の高い方法でレンダリングします。
四点目がキャッシュです。 Applitools Ultrafast Gridは、常にすべてのページのスナップショットをアップロードするとは限りません。 ページのリソースが変更されていない場合、Ultrafast Gridはそれらを再度アップロードしません。 ほとんどのページリソースはテスト実行ごとに変更されないため、転送が少なくて済み、アップロード時間はミリ秒単位で測定されます。

モバイルアプリ戦略

モバイルアプリにおいては複雑のため、戦略が非常に重要な役割を持ちます。
モバイルテストの戦略を理解したら、次は、アプリの品質に関する適切で信頼性が高く、決定論的で迅速なフィードバックをどのように、どのタイプの自動テストで得ることができるかを考える必要があります。 これにより、テスト自動化ピラミッドのさまざまなレイヤーを特定できます。 これらのポイントは以下の通りです。
一点目がテストをどこでどのように実行するかを理解することです。 実際のデバイス、エミュレーターやシミュレーターをローカルで利用できるか、一部のクラウドベースのデバイスファームで利用できるかなどです。
二点目が少ないコードでテストカバレッジを拡大することです。Applitools Visual AIを使用して機能とユーザー エクスペリエンスを検証する必要があります。
三点目がテスト実行のスケーリングです。Applitools Native Mobile Gridを使用することでこれらを解決することが可能です。 また、さまざまなテキストフォントと表示密度でのテストやアクセシビリティの適合性と、機能とユーザーエクスペリエンスに対するダークモードの影響のテストについての理解も必要です。 また、カオス&モンキーテスト、ロケーションベースのテスト、ネットワーク帯域幅の影響のテストなどの理解が必要です。
ベータテスト、フィールドテスト、段階的ロールアウトなど、モバイルアプリケーションのリリース戦略を計画なども重要です。

モバイルアプリ自動化

AndroidおよびiOSアプリ用のApplitoolsネイティブモバイルグリッドは、従来のクロスデバイステストの欠点を克服するのに役立ちます。これは、1つのデバイスでテストを実行することによって行われますが、選択したすべてのデバイスから実行結果が自動的に取得されます。

Applitoolsのネイティブモバイルグリッドは次のように機能します。
一点目がApplitools SDKを機能自動化に統合します。
二点目がApplitools Eyes構成で、機能テストを実行するすべてのデバイスを指定します。 追加のボーナスとして、Applitools Visual AI機能を活用して、機能テストと視覚テストの範囲を拡大することもできます。
三点目がローカルまたはCIで利用可能な任意の1つのデバイスでテストを実行します。 それは、実際のデバイスまたはシミュレーター/エミュレーターである可能性があります。 Applitoolsネイティブモバイルグリッドには多くの利点があります。

ネイティブアプリ

Applitoolsの機能の三点目がネイティブアプリ対応です。 一般的なiOSとAndroidのネイティブモバイルアプリケーションを、他のグリッドよりも高速かつ確実にテストすることが可能となります。これによりテスト実行時に様々なメリットが生まれます。
まずはカバレッジの改善に役立ちます。 Applitools Native Mobile Gridを使用すると、モバイルテストを一度記述するだけで非同期モバイルテストグリッド全体で完全に調和して自動的に実行できます。50以上iOSおよびAndroidデバイスから選択することが可能となります。
また、これらはテスト時間の短縮にも繋がります。 具体的には、ネイティブモバイルグリッドでモバイルテストの実行時間を最大90%削減することが可能となります。これによりテストは任意の数のデバイスとビューポートで実行できるため、テストの実行時間が短縮され、テストがボトルネックにならないようになります。 わずか数秒で10台以上のモバイルデバイスをテストすることが可能なため、開発者やテストエンジニアの無駄な時間を大幅に削減することが可能です。
また、直感的なUIも特徴です。 Appium、Espresso、XCUIなどでテストを実行している事例が多いですがネイティブモバイルグリッドは、一般的なモバイル テストおよびUIフレームワークですぐに使用することが可能です。

統合

Applitoolsの機能の四点目が統合です。
Applitoolsプラットフォームは、すべての最新のテスト フレームワーク、ソース管理、ビルドサーバー、コラボレーションツールと統合されています。

GitHubとの統合

GitHubとの統合について説明させていただきます。
ApplitoolsとGitHubの統合を有効にすることで、UIバージョンコントロールのロックを即座に解除できます。 UIバージョンコントロールを有効にすると、開発者はコードの変更とUI/UXの更新を簡単に関連付けて、Webアプリとモバイルアプリ全体のビジュアルUIバージョンを管理することが可能となります。 これらのブランチがGitHubで作成されると、Applitools UIバージョンコントロールは自動的にブランチをミラーリングし、新しいベースラインイメージのセットを許可します。このプロセスにより、トランクとそのテストに影響を与えることなく、機能ブランチの自動テストが簡素化されます。次に、PRがマージバックされると、UIバージョンコントロールはターゲットブランチに対してソースブランチのベースラインイメージで自動的に更新します。その後ブランチ間に競合がないことを確認して、テストメンテナンスのオーバーヘッドを排除します。

GitHub Actions

GitHub Actionsの説明、およびGitHub Actionsとの統合についても説明させていただきます。
GitHub Actions は、GitHubの原因と結果のためのAPIとして機能します。 GitHub が実行を管理し、豊富なフィードバックを提供し、途中のすべてのステップを保護しながら、あらゆるイベントに基づいてワークフローを調整します。 GitHub Actionsを使用することで、ワークフローとステップはリポジトリ内の単なるコードであるため、ソフトウェア開発プラクティスを作成、共有、再利用、フォークできます。 GitHub Actions を使用すると、Linux、macOS、Windowsなどの任意のプラットフォームでプロジェクトをビルド、テスト、デプロイする方法を簡単に自動化できます。 これにより、あらゆる OS、あらゆる言語、あらゆるクラウドに高速なCI/CDが提供されることになります。 Applitools統合には、Applitools APIキーが必要であり、Git Commit SHAをApplitoolsバッチIDとして渡す必要があります。 すべての構成が完了すると、GitHub Actionsワークフローは、コードに変更が加えられたときを理解し、Visual AIを利用したテストスイートを備えたワークフローを自動的に開始します。

Applitools Contrast Advisor

Applitools Contrast Advisorについて説明させていただきます。
Applitools Contrast AdvisorはWebアクセシビリティに対して改善、監視するための機能を提供します。

Webアクセシビリティ

Webアクセシビリティとは、障害を持つ人々が Web サイトを使用できるようにするための方法です。
これにはコンピュータを見る、聞く、動かす、または使用する能力に関係なく、すべてのコンテンツにアクセスできるようにすることが含まれます。 ワールドワイドウェブコンソーシアム (W3C) はウェブアクセシビリティのガイドラインを発表し、 障害のある人々を職場での差別から保護しております。また、これらに関する法的な整備も進んでおり、1998年から米国第508条の法律が施行されています。
優れたウェブサイトと見なされるためには、ウェブサイトは誰でもアクセスできる必要があります。 アクセスできない場合、多くの人がアクセスできない不便なサイトと判断され、訪問者が少なくなります。
具体的には画像に代替テキストを追加する、すべてのフォントサイズをすべての人にとって十分な大きさにする、 動画にキャプションを含めるなど、ウェブサイトをアクセシブルにする方法はさまざまです。 これらのWebアクセシビリティは近年非常に重要な課題として取り上げられており、Applitoolsはそれらを改善します。

現在、障害を持つ顧客を含む顧客と効果的にコミュニケーションをとるための行動をとることが認識されている一方で、これらの違反を特定するために利用できるツールは十分ではありません。 かつてないほどテクノロジーへの依存度が高まっている現在、すべての人がビジネスにアクセスできるようにすることが不可欠でありそれらの整備が必要です。 アプリケーションとWebサイトのWCAG2.0/2.1コントラストアクセシビリティのテストは、時間のかかる手動プロセスです。WebにおいてはDOMベースのツールによって部分的に支援されています。ただ一方で画像やネイティブモバイルアプリケーションのコントラストをテストするための実行可能なソリューションがなく、潜在的なアクセシビリティ違反を企業が実施しないようにApplitools Contrast Advisorは機能します。

ガイドライン

Webアクセシビリティを理解するうえで重要な点がガイドラインです。
Webコンテンツアクセシビリティガイドライン (WCAG) は、障害を持つ個人がWebコンテンツをよりアクセシブルにするための一連のガイドラインです。 このガイドラインは、A、AA、AAA、およびレベルダブルAの4つの準拠レベルに分かれています。レベルダブルAは、ほとんどの組織にとって最低限の適合レベルです。
ガイドラインでは、知覚可能、操作可能、理解可能、堅牢という4つの原則が定義されています。 これらのガイドラインはガイドラインは、それを実装するための時間とリソースがある人なら誰でも達成できるように設計されています。 彼らはまた、失明と弱視、難聴と難聴、学習障害、認知制限、運動または可動域の制限、光線過敏症、およびこれらの組み合わせなど、さまざまな障害を持つ人々のニーズに対処する方法についてアドバイスを提供します。

機能

Applitools Contrast Advisorの機能についてさらに詳しく紹介させていただきます。
Applitools Contrast Advisorは、既存のテスト自動化ワークフローにシームレスに統合します。
Visual AIを適用してWebおよびモバイルアプリケーションを分析し、コントラストのアクセシビリティ違反の可能性を調べます。 ほとんどのソリューションとは異なり、Contrast Advisorは画像やネイティブモバイルアプリケーションのコントラスト比を検出して、すべての画面にわたってより包括的な分析を行うことができます。 アプリケーションがWCAG2.0/2.1の最小および拡張仕様にどの程度準拠しているかをすぐに確認できます。 Applitools Contrast Advisorは、非違反を除外して重点領域を絞り込み、時間を節約することで、アクセシビリティの専門家、テスト自動化エンジニア、およびUI/UX デザイナーの効率を向上させることができます。

特徴

特徴についても詳しく紹介させていただきます。
一点目が簡単なセットアップです。 Applitools Contrast AdvisorはApplitools Eyesに直接統合されているため、時間のかかるセットアップやワークフローの変更など手間がかかりません。 これらを有効にすると、既存のテストを再実行する必要もありません。 また、既存のダッシュボードに直接アクセスすることで、結果のレビューを開始できます。
二点目が時間の削減です。 Webアクセシビリティの監視や確認は時間がかかることや複雑な問題をチェックすることが課題の一つと言えるでしょう。Applitools Contrast Advisorは問題のある領域に焦点を当てるのに役立ち、それらの時間を削減します、また、重要性の低い領域や優先度の低い内容を判断、チェックすることで時間とサイクルを無駄にしないようにします。
三点目が汎用的な利用となります。 Applitools Contrast AdvisorはWebページ構造のスキャンに制限されないため、Web サイト、PDF、UXデザインのモックアップ、およびWeb、モバイル Web、ネイティブモバイル、デスクトップなど向けに設計されたアプリケーションのコントラストに関するアドバイスを提供できます。 このように特定のプラットフォームやツールに関係なくあらゆるビジネスシーンでの汎用的な活用ができる点はその特徴です。
四点目がネイティブモバイルアプリケーションです。 モバイルデバイスは、厳密なコントラストコンプライアンスの必要性がさらに高まることは間違いありません。 Applitools Contrast AdvisorはVisual AIと従来の検出方法を使用することで、ネイティブモバイルアプリケーションとモバイルWebの両方で違反の可能性を特定できます。
五点目が画像違反への露出を減らすことです。 Webコンテンツアクセシビリティガイドライン (WCAG) は、テキスト、グラフィック、およびユーザー インターフェイスコンポーネントの最小コントラスト比を指定しますが、従来のツールではそのような違反を検出できません。Contrast AdvisorはVisual AIを使用して、画像、グラフィック、アイコン、UIコンポーネント、プレーンテキストのコントラスト比を検出します。

まとめ

いかがでしたでしょうか? Applitoolsについて解説させていただきましたので、参考にしていただけましたら幸いです。