what is cross browser testing
クロスブラウザテストの完全な初心者ガイド:
クロスブラウザテストは、アプリケーションがさまざまなブラウザで期待どおりに動作し、正常に機能が低下するかどうかを確認するためのテストの一種です。これは、アプリケーションがさまざまなブラウザと互換性があることを確認するプロセスです。
何度もウェブサイトで問題が発生し、テクニカルサポートに電話すると、別のブラウザで試すように言われるだけですか?私がそうするとき、私はソフトウェア業界で働いて生計を立てているにもかかわらず、それはうまくいき、私は完全な馬鹿のように感じることになります。
きっと皆さんに起こったのではないでしょうか?
私はいつも「なぜそんなことを考えなかったのか」と思うことになりますが、私を信じてください。時間が経つにつれて、それは私のせいではないことに気づきました。クロスブラウザの互換性テストに関してウェブサイトが広範囲にテストされておらず、エンドユーザーとしてバグを見つけただけです。
学習内容:
- 前書き
- クロスブラウザテストとは何ですか?
- なぜそれが実行されるのですか?
- このテストを実行するのは誰ですか?
- クロスブラウザテストを実行する方法は?
- 推奨ツール
- このテストをいつ開始しますか?
- 何をテストしますか?
- クロスブラウザテストの「方法」を要約する
- これを行うのに最適な時期はいつですか?
- 結論
- 推奨読書
前書き
一部のブラウザで一部のWebサイトが正しく表示されないことに気付いたかもしれませんが、Webサイトが壊れていると考えています。しかし、別のブラウザで開くとすぐに、Webサイトは問題なく開きます。したがって、この動作は、Webサイトとさまざまなブラウザとの互換性を説明しています。
各ブラウザは、Webサイトページの情報を異なる方法で解釈します。したがって、一部のブラウザには、Webサイトが表示しようとしている機能がなく、そのブラウザでWebサイトが壊れているように見える場合があります。
例えば 、以下に示すように、サインアップフォームのエラーは両方のブラウザで同じではありません。また、よく見ると文字の色やフォントなども違います。
テクノロジーの進歩に伴い、ブラウザで利用できるオプションはいくつかありますが、いずれかのブラウザでWebサイトを機能させるだけでは不十分です。
ユーザーは、特定のブラウザーを使用してアプリケーションにアクセスするように制限されるべきではありません。したがって、さまざまなブラウザとのWebサイトの互換性をテストする必要があります。一般的に使用されるブラウザには、Chrome、Safari、Firefox、InternetExplorerなどがあります。
それが背景の話なので、皆さんは今日の議論のトピックを理解しているに違いありません– クロスブラウザテスト。
STHの一般診療と同様に、基本に焦点を当てます。私たちは、次のような基本的な疑問詞を尋ねるとき、どんな概念も意味のある世界になると信じています- 「何、なぜ、どのように、誰が、いつ、どこで」。
そのままやってみましょう。
クロスブラウザテストとは何ですか?
#1) クロスブラウザーテストとは、その名前の意味です。つまり、複数のブラウザーでWebサイトまたはアプリケーションをテストし、依存関係や品質の低下なしに、意図したとおりに一貫して機能することを確認します。
#二) これは両方に当てはまります ウェブ そして モバイルアプリケーション 。
#3)どのようなアプリケーションがこれを受けますか? –顧客向けのアプリケーションが最良の選択です。 この時点で、「すべてのアプリケーションが顧客向けではないか」と疑問に思うかもしれません。はい、そうです。彼らです。 ただし、例を見てみましょう。
アプリケーション1: 企業が在庫を内部的に追跡するために開発されたアプリケーション
アプリケーション2: これは、エンドユーザーがこの会社から製品を購入するためのものです
- エンドユーザーが使用するブラウザー/プラットフォーム/バージョンを制御することは不可能であるため、ブラウザーの互換性テストのためにアプリケーション2をテストすることが最善のアイデアであることは明らかです。
- 一方、社内のすべてのコンピューターがChromeブラウザーを搭載したWindows 8マシンを使用している場合は、アプリケーション1に関して他に何かを探したりテストしたりする必要はありません。
なぜそれが実行されるのですか?
さらに言えば、なぜ何らかのテストが行われるのですか?
- 何が悪いのかを知り、それを修正できるようにすること。
- 効率とユーザーエクスペリエンスを向上させ、それによってビジネスを向上させるため。
- 起こりうる落とし穴について通知を受ける
しかし、具体的には、次のように考えます。 クロスブラウザテストの目的は何ですか? –これは2つあります。
- 異なるブラウザでのページの表示または外観-同じであるか、異なるか、一方が他方より優れているかどうかなど。
- 機能とその動作。 (もちろん!)
このテストを実行するのは誰ですか?
- 「そこには100万のブラウザ、バージョン、プラットフォームがあります。どれを選択するか」と考えていますか? –ありがたいことに、これはテスターの責任である決定ではありません。この決定には、クライアント、ビジネス分析チーム、およびマーケティングチームが大きな役割を果たします。また、企業は使用状況/トラフィック統計を収集して、主に使用されているブラウザ、環境、デバイスを絞り込みます。
- プロジェクトチーム全体が、この取り組みをサポートするために投資された関心、時間、お金、およびインフラストラクチャを持っている必要があります。
- QAチームはこのプロセスに関与することも、アプリケーションが複数のブラウザーでどのように機能するかを知りたがっている設計チームである場合もあります。
- QAまたは他のチームによって実行されるかどうかにかかわらず、結果は設計および開発チームによって解釈され、関連する変更が行われます。
クロスブラウザテストを実行する方法は?
今話している!
まず最初に-それは手動で行われますか、それともツールを使用して行われますか?
それは確かに手動で行うことができます-複数のマシン、複数のOS、複数のブラウザ、複数のマシン、そして明らかに、これは複数の問題、複数の投資、および複数の課題につながります。
手動による方法
この場合、企業は、アプリケーションがサポートする必要のあるブラウザーを識別します。次に、テスターは異なるブラウザーを使用して同じテストケースを再実行し、アプリケーションの動作を観察し、バグがある場合は報告します。
このタイプのテストでは、多くのブラウザーをカバーすることはできません。また、アプリケーションは主要なブラウザーバージョンでテストされない可能性があります。
また、クロスブラウザチェックを手動で実行することもコストと時間がかかります。
自動化された方法
クロスブラウザテストは、基本的に同じテストケースのセットを異なるブラウザで複数回実行しています。
Android用スパイアプリのリスト
このタイプの繰り返されるタスクは、自動化に最適です。したがって、ツールを使用してこのテストを実行する方が、コストと時間の効率が高くなります。
そのため、これを簡単にするための多くのツールが市場で入手可能です。
ツールは、ツール自体とライセンスの種類に応じて、次の1つ以上またはすべてを支援します。
- これらは、リモートマシンに接続し、JAVA、AJAX、HTML、Flash、およびその他のページの動作とレンディションを確認できるVPN(仮想プライベートマシン)を提供します。これらのほとんどは安全ですが、第三者に情報を送信しているため、慎重に分析することをお勧めします。
- 複数のブラウザでどのように表示されるかについて送信されたページとリンクのスクリーンショットが提供されます。もちろん、これは静的です。
- 複数のブラウザーは、1つで実行される操作に関して同期され、結果はブラウザーごとに表示されます。
- 複数の画面解像度でページのレンディションを表示する
- 問題が発生すると、ビデオまたはスクリーンショットが記録され、さらに分析するために問題が転送されます。
- 通常、サポートはWebアプリとモバイルアプリの両方で利用できます
- 認証にアクセスする必要があるプライベートページもテストできます
- プライベートネットワーク/ファイアウォールページ内のローカルもテストできます
推奨ツール
#1)LambdaTest
LambdaTest はクラウドベースのクロスブラウザテストプラットフォームであり、これを利用して、ユーザーは2000以上の異なるブラウザとオペレーティングシステムの組み合わせでWebサイトまたはWebアプリの自動および手動の互換性テストを実行できます。
ユーザーは、スケーラブルで安全かつ信頼性の高いクラウドベースのSeleniumグリッドでSelenium自動化テストを実行し、パブリックまたはローカルでホストされているWebサイトおよびクラウド上のWebアプリのライブインタラクティブクロスブラウザーテストを実行できます。
=> LambdaTestWebサイトにアクセス#2)CrossBrowserTesting
CrossBrowserTesting SmartBearと呼ばれる会社によって提供されます。 CrossBrowserTestingを使用すると、クラウドベースの実デバイスラボを使用して、任意のブラウザーまたはモバイルデバイスですべてのWebエクスペリエンスを完璧にすることができます。 VMとデバイスラボを捨てます。 2050以上の実際のデスクトップおよびモバイルブラウザーのクラウドで、手動、視覚、およびSeleniumのテストを簡単に実行できます。
非技術ユーザーとしてのテストをスピードアップしたいとお考えですか?彼らの記録と再生機能をチェックして、ライブテストを記録し、その記録されたテストを並行して実行できるようにします。
=> CrossBrowserTestingWebサイトにアクセスします#3)セレン
Seleniumは、Webベースのアプリケーションの自動テストでよく知られています。セレンを使用すると、テストケースの実行に使用するブラウザーを変更するだけで、異なるブラウザーを使用して同じテストケースを複数回実行することが非常に簡単になります。
#4)BrowserStack
BrowserStackは、クラウドベースのWebおよびモバイルテストプラットフォームであり、オンデマンドブラウザー、オペレーティングシステム、および実際のモバイルデバイス間でアプリケーションをテストできます。
#5)ブラウザリング
これは、Web開発者とWebデザイナーに簡単なテストを提供するライブインタラクティブサービスです。
さまざまなブラウザとオペレーティングシステムがあり、Browserlingを使用すると、最も人気のあるオペレーティングシステムで最も人気のあるすべてのブラウザにすばやくアクセスできます。
=>参考資料: クロスブラウザテストツールの完全なリスト
アニメを見るトップ10サイト
このテストをいつ開始しますか?
クロスブラウザテストを開始する時間は、テスト方法とテストタイムラインに完全に依存します。
このテストは実行できます:
#1)できるだけ早く:
1つのページでテストの準備ができている場合でも、このテストを開始します。
各ブラウザでそのページをテストします。次のページが利用可能になったら、複数のブラウザでもテストします。これにより作業が増えますが、ライフサイクルのできるだけ早い段階でエラーを修正するのに役立ちます。したがって、この場合、エラーを修正することは非常に費用効果が高いです。
#2)申請が完了したら:
アプリケーション開発が完了したら、このテストを開始します。
これにより、さまざまなブラウザでアプリケーション全体がテストされます。エラーの修正は、上記の場合ほど費用効果が高くありませんが、アプリケーションをユーザーにリリースする前にエラーを修正するのに役立ちます。
#3)アプリケーションがリリースされたとき:
これは、アプリケーションのクロスブラウザーテストを実行するのに最も好ましくない時間です。ただし、実行しないよりも実行する方が適切であり、エンドユーザーに悪いエクスペリエンスを与えることができます。
アプリケーションがエンドユーザー向けにリリースされた後、このテストを実行し、アプリケーションの変更要求の一部としてバグを修正できます。これは非常にコストがかかり、バグ修正に応じて複数の展開が必要です。
厳密なクロスブラウザテストは、ツールの知識を持つテストチームメンバーがこのテストを実行する場合にのみ実行できます。高レベルまたは特定のブラウザのチェックは、ビジネスユーザーまたは開発者でも実行できます。
このテストでは、さまざまなブラウザを使用してアプリケーションを徹底的にテストします。テストには、アプリケーションの機能テストと非機能テストが含まれます。
ほとんどの企業では、製品チームには機能テストと非機能テストのための別々のチームがあります。したがって、このテストは、アプリケーションの機能テストと非機能テストを担当するチームが実行する必要があります。
このテストでは、テスターはアプリケーションをテストする必要のあるブラウザーを必要とします。
これらのブラウザは、次のようにテスターに提供できます。
- テスターのマシンにローカルにインストールされています。
- テスターがアクセスできる仮想マシンまたは別のマシン。
- テスト用に独自のブラウザとバージョンを提供するツール。
- クラウド上–複数のテスターが必要に応じてブラウザーを使用できるようにします。
このテストは、展開環境に依存しません。したがって、これらの各環境でのアプリケーションの可用性に応じて、開発、テスト、QA、さらには本番環境で実行できます。
何をテストしますか?
- 基本機能: リンク、ダイアログ、メニューなど。
- グラフィカル・ユーザー・インターフェース: アプリケーションのルックアンドフィール。
- 応答: アプリケーションがユーザーのアクションにどの程度反応するか。
- パフォーマンス: 許可された時間枠内のページのロード。
アプリケーションが1つのブラウザで正常に動作する場合、それは他のブラウザでも正常に動作することを意味するわけではありません。したがって、このテストは、アプリケーションがエラーなしでさまざまなブラウザーで実行されることを確認するのに役立ちます。
どのブラウザで何が壊れているかを特定し、それに応じてWebサイトを修正するには、このテストを実行する必要があります。ブラウザがまったくサポートされていない場合は、ユーザーに簡単に通知できます。
クロスブラウザテストの「方法」を要約する
#1。 トラフィック統計は、テストするブラウザを決定するのに役立ちます。
#二。 AUT(テスト中のアプリケーション)自体で詳細な分析を実行して、アプリケーションのどの部分を実行する必要があるか、またはすべてを実行する必要があるかどうかを判断する必要があります。すべてを複数のブラウザでテストすることをお勧めしますが、やはりコストと時間を考慮する必要があります。 優れた戦略は、プラットフォームごとに1つのブラウザーで100%テストを実行し、もう1つのブラウザーでは最も重要で広く使用されている機能をテストすることです。
#3。 テストする「何」と「どこ(ブラウザ)」の決定が行われると、インフラストラクチャの決定が行われます。ツールを取得するか、これを手動で実行するかなどです。ここでも、コストを考慮する必要があります。実行可能性、リスク、セキュリティ上の懸念、関与する人々、時間、受け入れ基準、問題/欠陥の修正スケジュール/プロセス-対処しなければならないことはほとんどありません。
#4。 テストを実行します。システムの効率を検証するときは、定期的な機能テストのテストケースを使用できます。ルックアンドフィール/レンディションのテストケースは必要ありません。
この記事の冒頭で私が失敗した操作は、オンライン銀行振込でした。銀行口座にログインし、送金金額を約1万ルピーに選んで送金を試みたところ、何度試してもサーブレットエラーが発生していました。
したがって、ブラウザの互換性テストに転送操作が選択された場合、テストスクリプトは次のようになります。
- オンライン銀行口座にログインする
- 転送元のアカウントを選択します
- 送金金額を入力してください:100,000
- 受取人を選択し、「転送」をクリックします
- 期待される結果:転送は成功するはずです
- これは、選択したすべてのブラウザで実行されるだけです。
繰り返しになりますが、これは機能テストケースと同じように見えることに注意してください。詳細については、この非機能テストの記事を確認してください。
#5。 テストプロセスに関与していなかった場合は、結果を設計チームに報告します。変更は次のとおりです。
これを行うのに最適な時期はいつですか?
どんなテストでも、早い段階で行うと最高のメリットが得られます。したがって、業界の推奨事項は、ページデザインが利用可能になり次第、それから始めることです。
ただし、サイトが完全に統合されて機能している場合にも実行できます。
設計、開発、およびQAフェーズでクロスブラウザーテストを実行する際にバスに乗り遅れた場合でも、アプリケーションの運用中に実行できます。ただし、これはすべての中で最もコストがかかり、リスクも伴います。
ブラウザの互換性テストはどこで実行されますか?
通常、この質問に対する答えは次のいずれかになります- 開発/ QA /本番環境 。しかし、クロスブラウザーチェックの場合、これは明確で無関係ではありません(私がそう言うかもしれませんが)。それはそれらのいずれかまたはすべてで行うことができます。
結論
注意すべきいくつかのポイント、
- しばらくの間QAの教師をしていたので、次に何が来るのかがわかります。それは、機能テストと非機能テストのどちらであるかということです。どちらでもない、両方だと思います。
- また、と混同しないでください クロスプラットフォーム テスト。これは、Windows、Linux、Macなどの複数のターゲット環境でアプリケーションをテストします。古いブラウザバージョンの一部は古いバージョンのプラットフォームとのみ互換性があるため、2つを統合する必要がある場合もあります。
- また、ソフトウェア環境、ブラウザー、およびデバイスが日々進化しているため、処理が継続されており、不快な驚きがないことを確認するために、このブラウザーテストを回帰スイートのレパートリーに追加する必要があります。
ご存知のように、あらゆる種類のテストはアプリケーションの品質を向上させるのに役立ち、ブラウザー間のテストも同様です。
クロスブラウザーテストは、ブラウザーやオペレーティングシステムに関係なく、アプリケーション全体で一貫したエクスペリエンスをユーザーに提供することにより、ユーザーに良い印象を与えるのに役立ちます。
バグの修正は、開発ライフサイクルの初期段階で費用効果が高く、このテストの一部として見つかった欠陥にも同じことが当てはまります。
このテストはあなたのビジネスを改善するのに役立ち、その結果、Happy Customers、Happy You !!
これは、QAフィールドまたはソフトウェアテストが多次元フィールドであり、誰もが得意とする何かがあるという概念のさらに別の証拠です。
以下にコメントや質問を投稿してください。私たちはいつもあなたから話を聞くことに興奮しています!