このセクションでは、互換性テストとは何か、互換性テストを使用する理由、いつ実行する必要があるか、互換性テストの種類、互換性テストのプロセス、互換性のバグとツールについて学びます。
互換性テストとは何ですか?
これは非機能テストの一部です。
さまざまなソフトウェア、ハードウェア プラットフォーム、ネットワーク、ブラウザーでのアプリケーションの機能をチェックすることは、互換性テストとして知られています。
互換性テストを使用する理由
アプリケーションが安定したら、本番環境に移行しました。異なるプラットフォームで複数のユーザーが使用またはアクセスする可能性があり、互換性の問題が発生する可能性があります。これらの問題を回避するために、互換性テストを 1 回実行します。
互換性テストはいつ実行する必要がありますか?
通常、アプリケーションまたはソフトウェアが機能的に安定している場合にのみ、互換性テストを実施します。
注記:
これはアプリケーションごとに行われるわけではありません。ユーザーが使用するプラットフォームを制御できないアプリケーションに対してのみこれを実行します。
互換性テストの種類
互換性テストの種類は次のとおりです。
ソフトウェア
ここでのソフトウェアとは、さまざまなオペレーティング システム (Linux、Windows、Mac) を意味し、Win98、Window 7、Window 10、Vista、Window XP、Window 8、UNIX、Ubuntu、そしてマック。
また、次の 2 種類のバージョン互換性テストがあります。
例えば: プラットフォーム(ソフトウェア)の最新バージョン
Win 7 → Win 8 → Win 8.1 → Win 10
例えば:
Windows XP → Vista → Win 7 → Win 8 → Win 8.1
そして、次のようなさまざまなブラウザ Google Chrome、Firefox、 そして インターネットエクスプローラ 、など。
ハードウェア
アプリケーションは、RAM、ハードディスク、プロセッサ、グラフィック カードなどのさまざまなサイズと互換性があります。
携帯
アプリケーションが iOS、Android などのモバイル プラットフォームと互換性があることを確認します。
通信網
動作速度、帯域幅、容量などのさまざまなネットワークパラメータにおけるソフトウェアの互換性を確認します。
ハスネクストJava
互換性テストで最も難しい部分は何ですか?
互換性テストを実行する際に最も困難なことは、テストする必要があるニーズを決定することです。
時間のかかるプロセスとなるため、既存のすべてのプラットフォームでテストすることはできません。
したがって、エンドユーザーがよく使用するプラットフォームのみを選択します。
互換性テストのプロセス
ここでは、O.S (オペレーティング システム) 互換性テスト プロセスを実行しています。
- まず、顧客は機能要件と非機能要件を提示します。
- 非機能要件を取得した後、最も一般的に使用されるプラットフォームに従って 1 つのベース プラットフォームが決定されます。
- その後、テスト エンジニアは、アプリケーションの機能が安定するまで、ベース プラットフォーム上で機能テストを開始します。
- アプリケーションを別のプラットフォームでテストする必要があるため、そのために VMware ソフトウェアを使用します。
注1:
VMware ソフトウェア: VMware を利用すると、1 つの物理マシンを複数の仮想マシンに分割し、同時にアクセスできます。
- 互換性テストでは、必要なすべてのオペレーティング システムとブラウザをインストールする VM サーバーを使用し、リモート デスクトップ接続を使用してそのサーバーにアクセスします。
- セットアップされた VMware にリモートでアクセスし、その後、テスト エンジニアがプラットフォーム上で 1 ラウンドの互換性テストを実行し、エンドツーエンドのフローを確認します。
- エンドツーエンドのフローは、アプリケーションが安定し、アプリケーションが必要なすべてのプラットフォームで正常に動作し、顧客に引き渡されるまで続きます。
注2: - ブラウザ互換性テストの場合、複数のブラウザを 1 台のマシンにインストールでき、同時にアクセスできるため、VMware セットアップを行う必要はありません。
- 同じブラウザのさまざまなバージョンの場合、単一のシステムから複数のバージョンのブラウザに同時にアクセスできないため、VMware をセットアップする必要があります。
- さまざまなプラットフォームでソフトウェアの互換性テストを行うことができます。
互換性テストのバグ/問題
これらのバグは、あるプラットフォームで発生しているが、別のプラットフォームでは発生しないものです。
1/1000.00
一般に、互換性のバグはユーザー インターフェイスの問題であり、UI の問題の一部は次のとおりです。
- アライメントの問題
- 重複の問題
- 分散した問題
- 見た目と感触の問題
アライメントの問題
配置の問題は、以下の図に示すように、ページの要素が適切な形式で配置されていないことです。
重複の問題
ある属性が別の属性と重複している場合、以下の図に示すように、異なるプラットフォームやブラウザーでアプリケーションを開こうとしているときに発生する可能性があります。
分散した問題
テスト エンジニアがアプリケーションの互換性テストを実行すると、そのアプリケーションはすべてのブラウザおよびプラットフォームと互換性がないため、以下の図に示すように散在する問題が発生する可能性があります。
互換性テストでは、さまざまなプラットフォームでの機能、統合、エンドツーエンドのフローのテストが行われます。
互換性の問題: アプリケーション機能が、あるオペレーティング システムでは動作しないが、他のオペレーティング システムでは正常に動作する場合。これは、開発者が作成したプログラムが 1 つのプラットフォームでのみ動作せず、他のすべてのプラットフォームでも正常に動作するために発生します。
機能の問題: すべてのオペレーティング システム/プラットフォームで機能が動作しない場合。また、機能欠陥問題としても知られています。
互換性テストの場合、テスト実行レポートは次のようになります。
互換性テストツール
最も一般的に使用される互換性テスト ツールのいくつかは次のとおりです。
ラムダテスト
これは、クラウド上のオープンソースのブラウザ互換性テスト ツールです。このツールを利用すると、ほぼすべてのモバイル ブラウザーとデスクトップ ブラウザーで Web アプリケーションをテストできます。 LambdaTest にはスクリーンショット機能があり、Web ページの全ページのスクリーンショットを撮ることができます。
このツールでは、実際のブラウザ上でアプリケーションをテストでき、ユーザーはアプリケーションの互換性をチェックするための多数のモバイル ブラウザとデスクトップ ブラウザのオプションを利用できます。
ブラウザスタック
このツールは、複数のブラウザーやプラットフォーム上での Web サイトとモバイル アプリケーションの互換性をテストするのに役立ちます。
これにより、さまざまなブラウザで Web アプリケーションをテストしたり、Android や iOS などのモバイル アプリケーションをすべてのモバイル デバイスでテストしたりできます。
BrowserStack ツールの主な製品は Live、Automate、App Live、App Automate であり、これらのツールを利用することでコストを維持できます。
文字列をJSON Javaに変換
これらのツールは、テストに関連する時間、価格、メンテナンスのオーバーヘッドを削減するのに役立ちます。
EMすべてを参照
このツールは、Linux、Windows、macOS などのさまざまなオペレーティング システムでアプリケーションを実行でき、クロスブラウザー テスト ツールです。
これは、すべてのモバイル ブラウザーとデスクトップでアプリケーションをテストするために使用され、ローカル マシンとローカル ネットワークで直接使用できます。
また、ネットワーク遅延なしで回帰テストとビジュアル テストを実行でき、多くのデスクトップ ブラウザやモバイル ブラウザに対して自動テストを記録して再生することもできます。
テストボット
このツールは、Firefox、Chrome、Edge、IE、Safari などのさまざまなブラウザーでテストを実行するために使用されます。ここでは、複数のブラウザーとプラットフォームのスクリーンショットを比較し、アプリケーションの応答性の高いレイアウトをテストできます。
自動テストを即座に使用できるように、多数のブラウザ バージョンが提供されます。