コンテンツへスキップ
UI オートメーション テストとはどのようなもので、なぜ使用すべきなのか?

UI オートメーション テストとはどのようなもので、なぜ使用すべきなのか?

では、UI オートメーション テストとは何でしょうか。さて、それを分解することから始めましょう、UIまたはユーザーインターフェイスは、ユーザーが画面上で操作するアプリケーションのフロントエンドです。

4min read

では、UI オートメーション テストとは何でしょうか。さて、まずは分解することから始めましょう。UI またはユーザー インターフェイスは、ユーザーが画面上で操作するアプリケーションのフロントエンドです。

UIテストとは?

ユーザーが行う可能性が高い、実行する可能性がある、または実行できる、または多くの場合、実行できるが、実行中に実行できないはずのアプリケーションは、ユーザー インターフェイスの一部であるため、テストの候補になります。ボタンをクリックするたびに、データの入力まで。何が機能すると予想されるかだけでなく、何が失敗すると予想されるかもテストする必要があります。

次に、テストする領域のシナリオの例をいくつか示します。これは、ユーザーが次の場合に何が起こるかです。

  • グリッドに新しい行を追加し、すべてのフィールドを正しく入力すると、データは保存されますか?
  • すべてのフィールドが入力される前にクリックが完了すると、続行できますか?
  • [キャンセル]をクリックすると、すべてのデータが入力されると、すべてのデータが破棄されますか?
  • 開始日より前の終了日を入力しますか?
  • 一連の値を入力した後、正しい値が計算されますか?
  • メニューをプルダウンして、サブフォームを開くための項目を選択しますか?正しいフォームは開いていますか?
  • メニューをプルダウンすると、期待されている、または許可されているメニューオプションのみを表示できますか?

開発者が値を正しく計算し、データを追加し、データを変更し、アプリケーションをナビゲートすることを確認するために追加するロジックのすべてのビットをテストする必要があります。今日のアジャイル開発スタイルでは、早期提供と継続的な改善、明日の変更により、昨日テストおよび承認された領域が壊れる可能性があります。では、どのように対処しますか?

手動テスト?

1つのオプションは、人を投入して、IEの手動テストを行うことです。テスターのセットにアプリケーションを開いてもらい、アプリケーションを系統的に壊してみます。これはうまくいきますが、アプリケーションが大きくなり、変更が加えられるほど、より多くのテストが必要になります。アプリケーションを変更するたびに、アプリケーションの大部分を何度も再テストする必要が生じる可能性があります。これはコストのかかる工数になる可能性があり、その結果、人々はおそらく必要以上に検査の頻度を減らすことになります。

本当に検査が必要なのでしょうか?

これは、次のオプションであるダチョウのアプローチにつながります。私たちには時間がなく、テストを書くのは大変で、人々を惜しむことはできません。以前にテストしましたが、これらの変更はアプリケーションのその領域に影響を与える「べきではない」ので、問題ないはずです。このような言い訳を聞いたり、言ったりしたことがありますか?アプリケーションを再テストせずに変更を繰り返すたびに、技術的負債がますます増加する可能性があります。コードの未テストまたはテスト不足の領域で、リスクにさらされる可能性があり、アプリケーションによってはコストのかかる影響を与える可能性があります。

では、UI オートメーション テストとは何でしょうか。

では、最初の質問に戻りますが、UI オートメーション テストとは何でしょうか。UI 自動化テストは手動テストと似ていますが、ユーザーがアプリケーションをクリックしてデータを視覚的に確認するわけではありません。テストするテスト ケースごとにスクリプトを作成します。スクリプトが実行する一連の手順を追加し、次のようにデータを確認します。

numboxCost.Set(5000.00)
numboxInterest.Set(5%)
btnCalculate.Click()

IF numboxTotal.GetValue() != 5250 THEN
    Report Error

なぜあなたはそれを使うべきですか?

手動テスターが持つ可能性のある一般的なテスト計画は、画面ごとに20〜100のテストを簡単に持つことができました。数時間から数日かけて、これらすべてのテストケースを徹底的にテストします。多くの場合、自動化スクリプトを記述して、これらのシナリオのすべてではないにしても、ほとんどをテストできます。それらを実行すると、多くの場合、数分で実行できます。この時間の節約は、人的時間のコストにおいて経済的であるだけではありません。これは、多くの場合、自動化されたスクリプトをより頻繁に再実行できることを意味します。リリースの直前まで待ってアプリケーションを再テストし、すべてがスムーズに実行されるかどうかを確認する代わりに、チェックインのたびに実行できます。

結局のところ、UI オートメーション テストが行うことは、開発者がアジャイル開発の重要な要素である "より早く失敗する" ことを可能にすることです。エラーを早期に特定できるため、リリースのずっと前に問題を修正するための時間を確保できます。あなたとあなたの顧客があなたの最終製品に対してより大きな信頼を持てるようにします。

HPのIG TestAutomation
http://www.infragistics.com/products/test-automation-hp-uft

IBM RFTのIG TestAutomation
http://www.infragistics.com/products/test-automation-ibm-rft

明日の製品のために、今日からご提案をお聞かせください
httsp://www.infragistics.com/community/ideas

デモを予約