134
TestComplete 14 デスクトップ、Web およびモバイル テストの チュートリアル

Getting Started With TestComplete 14 - XLsoft …...• モバイル アプリケーション - これらのアプリケーションは、Android デバイスまたは iOS デバイスで

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

TestComplete 14 デスクトップ、Web およびモバイル テストの

チュートリアル

smartbear.com TestComplete by SmartBear Software

2

チュートリアルについて TestComplete を用いることで、デスクトップ、Web、モバイルの 3 種類のアプリケーションをテストすることが

できます。

• デスクトップ アプリケーション - これらのアプリケーションは、Windows オペレーティング システムが

動作しているデスクトップ コンピューターで実行します。

• Web アプリケーション - これらのアプリケーションは、Web ブラウザー (デスクトップ アプリケーション

に組み込まれた Web ブラウザーを含む) で実行します。

• モバイル アプリケーション - これらのアプリケーションは、Android デバイスまたは iOS デバイスで

実行します。

このドキュメントは、初めて TestComplete を使用するユーザー向けに用意されたもので、自動テストおよび

製品の概要を紹介します。また、主なアプリケーション タイプのテストの作成方法を説明するチュートリアル

も含まれています。これらのチュートリアルをお読みになることで、デスクトップ、Web、モバイル アプリケー

ションのテストを作成、修正、実行することができます。

2019.4.2 – TestComplete 14.00

Translated by XLsoft Corporation

目次

© 2019 SmartBear Software http://support.smartbear.com/

3

目次 自動テストおよび TestComplete について....................................................................................................... 5

自動テスト .......................................................................................................................................................................................... 5 テスト タイプ ....................................................................................................................................................................................... 5 TestComplete プロジェクトとプロジェクト項目 .................................................................................................................................... 6 TestComplete ユーザー インターフェース ......................................................................................................................................... 8 TestComplete テスト オブジェクト モデル .......................................................................................................................................... 9 チェックポイントと Stores .................................................................................................................................................................. 12

デスクトップ アプリケーションのテスト ............................................................................................................ 13 1. テストの計画 ................................................................................................................................................................................. 14 2. レコーディングについて ............................................................................................................................................................... 14 3. テストのレコーディング開始 ......................................................................................................................................................... 16 4. テストするアプリケーションの定義 ............................................................................................................................................... 17 5. テストのレコーディング ................................................................................................................................................................. 19 6. レコーディングしたテストの解析 .................................................................................................................................................. 26 7. レコーディングしたテストの実行 .................................................................................................................................................. 30 8. テスト結果の解析 ......................................................................................................................................................................... 33

Web アプリケーションのテスト - チュートリアル ............................................................................................. 37 1. Web ブラウザーの準備 ................................................................................................................................................................ 38 2. テストの計画 ................................................................................................................................................................................. 39 3. テストのレコーディングについて .................................................................................................................................................. 39 4. テストのレコーディング開始 ......................................................................................................................................................... 40 5. テストする Web ページの定義 ..................................................................................................................................................... 42 6. テストのレコーディング ................................................................................................................................................................. 43 7. レコーディングしたテストの解析 .................................................................................................................................................. 52 8. レコーディングしたテストの改善 .................................................................................................................................................. 57 9. レコーディングしたテストの実行 .................................................................................................................................................. 61 10. テスト結果の解析 ....................................................................................................................................................................... 62 11. 複数のブラウザーでのテストの実行 .......................................................................................................................................... 65

Android アプリケーションのテスト .................................................................................................................. 68 1. 事前準備 ...................................................................................................................................................................................... 69 2. テストの計画 ................................................................................................................................................................................. 74 3. テストのレコーディングについて .................................................................................................................................................. 75 4. テストのレコーディング開始 ......................................................................................................................................................... 76 5. テストするアプリケーションの定義 ............................................................................................................................................... 77 6. テストのレコーディング ................................................................................................................................................................. 79 7. レコーディングしたテストの解析 .................................................................................................................................................. 86 8. テストの実行 ................................................................................................................................................................................. 90 9. テスト結果の解析 ......................................................................................................................................................................... 91 10. 複数のデバイスでのテスト実行 ................................................................................................................................................. 94

iOS アプリケーションのテスト .......................................................................................................................... 96 1. iOS デバイスの準備..................................................................................................................................................................... 97 2. iOS Certificate (証明書) ファイルの準備 .................................................................................................................................. 100

目次

smartbear.com TestComplete by SmartBear Software

4

3. テストの計画 ............................................................................................................................................................................... 102 4. レコーディングについて ............................................................................................................................................................. 102 5. テストのレコーディング開始 ....................................................................................................................................................... 104 6. テストするアプリケーションの定義 ............................................................................................................................................. 105 7. テストのレコーディング ............................................................................................................................................................... 107 8. レコーディングしたテストの解析 ................................................................................................................................................ 116 9. レコーディングしたテストの実行 ................................................................................................................................................ 120 10. テスト結果の解析 ..................................................................................................................................................................... 121 11. 複数のデバイスで実行するためテストを設定する .................................................................................................................. 123 12. 複数のデバイスでのテスト実行 ............................................................................................................................................... 126

次のステップ .................................................................................................................................................. 129

テクニカル サポートとリソース ...................................................................................................................... 132

索引 ................................................................................................................................................................ 133

自動テストおよび TestComplete について

© 2019 SmartBear Software http://support.smartbear.com/

5

自動テストおよび TestComplete について

自動テスト ソフトウェア テストとは、アプリケーションを調査し、そのアプリケーション内のエラーを検出するプロセスで

す。テストと単なる調査との違いは、テストはアプリケーションの出力と期待値を比較し、アプリケーションが

期待通りに機能するかどうかの判定を含んでいることにあります。言い換えると、テスターはアプリケーション

が値のリストを表示するのを確かめるだけでなく、そのリストが適切な値を含んでいるかを検証する必要があ

ります。

このことから、基本的なテスト シーケンスは次のようになります。

• 期待する出力の定義。

• テスト動作の実行 (適切な入力データの付与)。

• アプリケーション出力の収集および期待する結果 (基準データ) との比較。

• 比較に失敗した場合は、開発者またはマネージャーーに通知。

自動テストとは、若干あるいは全く人間の操作のない特別なプログラムによるソフトウェア テストの自動実行

です。自動実行によって、テスト動作を 1 つたりともスキップしないことが保障されます (これは、テスターを

退屈な同じ手順の繰り返し作業から解放します)。

TestComplete は、テスト動作の自動化、テストの作成、基準データの定義、テストの実行、テスト結果の

記録を行うための特別な機能を提供します。たとえば、ビジュアルにテストを作成できる特別な "テストのレ

コーディング" 機能を持っています。レコーディングを開始して、テストするアプリケーションに対して、必要

とされるアクションを実行するだけで、TestComplete が自動的にすべての "記録された" アクションをテスト

に変換します。また、TestComplete は、テスト内の比較コマンドやチェックポイントの自動化を簡単にする特

別なダイアログやウィザードも含んでいます。

テスト タイプ TestComplete はさまざまなテスト タイプとテスト方法 (単体テスト、機能および GUI テスト、リグレッション テス

ト、分散テストなど) をサポートしています (TestComplete ヘルプの「Different Ways of Testing」を参照)。このチュートリアルでは、最もよく用いられる機能テストを作成します。機能テストは、アプリケーションの GUI とその背後のシステムおよびユーザー間のインターフェースをチェックします。アプリケーション機能が予想通

りであるか検証します。

典型的な機能テストは、クリックやキーストロークのシミュレーション、ループ内でのテスト コマンドの実行、オ

ブジェクトの内容の検証などのさまざまな動作を実行するテスト コマンドから構成されます。

TestComplete では、機能テストはキーワード テストとスクリプトの形式で作成できます。このテストは、レ

コーディングあるいは内蔵エディターでゼロから作成することができます。キーワード テストの作成は視覚

的で、簡単であり、プログラミングの知識を必要としません。スクリプトはスクリプト コマンドの理解が必要にな

自動テストおよび TestComplete について

smartbear.com TestComplete by SmartBear Software

6

りますが、より強力で柔軟性のあるテストの作成が可能になります。TestComplete は、JavaScript、JScript、Python、VBScript、DelphiScript、C#Script、C++Script のスクリプトをサポートしていますので慣れている言

語を用いてスクリプトを作成できます。

このチュートリアルでは、キーワード テスト機能を使用します。

TestComplete プロジェクトとプロジェクト項目 TestComplete はテスト プロジェクトおよびプロジェクト スイートで動作します。プロジェクトはテスト作成の開

始地点です。プロジェクトには、テスト、チェックポイントの基準データ、テストするアプリケーションについて

の情報、その他のテスト実行に必要な項目が含まれます。また、プロジェクトは複数のテストの実行シーケン

スを定義し、プロジェクト開始以降に実行したすべてのテストの累積ログを保持します。

1 つのプロジェクトに、テストするアプリケーションのすべてのテストを含めることができます。複雑なアプリ

ケーションの場合、アプリケーションの一部分のみでプロジェクトを作成し、他の部分は他のプロジェクトで

テストすることができます。通常は、モジュール単位でプロジェクトを作成します。

関連するプロジェクトはプロジェクト スイート (1 つ以上のプロジェクトを含む) に統合することができます。

TestComplete は、新しいプロジェクトを作成するときにプロジェクト スイートを自動的に作成します。空のプ

ロジェクト スイートを作成し、次に必要なプロジェクト ファイルをスイートの中に組み込むために TestComplete のダイアログを使用することもできます。

プロジェクト項目は、さまざまなテストを実行する、あるいは実行を支援するためのプロジェクト要素です。プ

ロジェクト項目以外にも、プロジェクトには、テストデータ付きの Excel や .csv ファイルのようなヘルパー ファ

イルを含めることができます。

TestComplete の Project Explorer で、プロジェクト、プロジェクト スイート、プロジェクト項目を表示、管理する

ことができます。

自動テストおよび TestComplete について

© 2019 SmartBear Software http://support.smartbear.com/

7

TestComplete のプロジェクト項目に関する情報は、TestComplete ヘルプの「About Project Items」を参照し

てください。

自動テストおよび TestComplete について

smartbear.com TestComplete by SmartBear Software

8

TestComplete ユーザー インターフェース TestComplete のメイン ウィンドウのサンプル画像を次に示します。

TestComplete のユーザー インターフェースは、いくつかのパネルで構成されています。[Project Explorer] パネル (ウィンドウの左側) は、プロジェクトとプロジェクト スイートの内容を表示します。また、テス

ト ログ ノードへのリンクも提供しています。

[Workspace] パネルは、作業用デスクトップです。プロジェクトとプロジェクト項目のエディターを表示して、

テストの作成と修正、テスト結果の確認を行うことができます。たとえば、上記の画像では、Keyword Test エディターが Workspace 内で開かれています。エディターの下側には、[Test Visualizer] パネルがあり、テ

スト コマンドのレコーディング中にテスト エンジンが撮った画像を表示します。これらの画像は、テスト コマ

ンドが実行する動作を理解するのに役立ちます。

Project Explorer、Workspace、Test Visualizer に加えて、TestComplete にはその他のパネルが含まれてい

ます。たとえば、テストのデバッグに使用される [Watch List]、[Locals]、[Breakpoints]、[Call Stack] パネルがあります。[To Do] パネルは、実行すべきタスクを管理します。

[Object Browser] パネルは、特定のプロジェクトに属さない TestComplete のメイン機能の 1 つで、マシン

に存在するすべてのプロセスおよびウィンドウのリストを表示します。モバイル デバイスが接続されていてア

プリケーションが特別な方法で準備されている場合、モバイル アプリケーションのプロセスのリストも表示し

ます。各プロセスおよびウィンドウごとに、外部から TestComplete 機能を通してアクセス可能なメソッドやプ

自動テストおよび TestComplete について

© 2019 SmartBear Software http://support.smartbear.com/

9

ロパティを表示します。言い換えると、Object Browser から、テストで利用可能なオブジェクト、メソッド、プロ

パティと、その取得方法がわかります。詳細は、TestComplete ヘルプの「Exploring Application Properties」を参照してください。

パネルの説明を表示するには、パネル内をクリックして F1 キーを押します。これにより、パネルの解説が開

きます。

TestComplete に特定のアクションを実行するように指示するには、メニューとツールバーを使用します。

TestComplete のメニュー サブシステムは、Microsoft Visual Studio または他の主要な Windows アプリケー

ションのメニューとツールバーに類似しています。ツールバーの位置を変更したり、メニューまたはツール

バーの項目を他に移動したり、項目を隠したり、元に戻したり、他のタスクを実行することができます。詳細

については、TestComplete ヘルプの「Working With TestComplete Toolbars and Menus」を参照してくださ

い。

TestComplete テスト オブジェクト モデル オブジェクト構造は [Object Browser] パネルに表示されます。

自動テストおよび TestComplete について

smartbear.com TestComplete by SmartBear Software

10

注意: この画像では、デスクトップ アプリケーションのオブジェクト モデルを使用しています。Web およびモバイル アプリケーションのオブジェクト モデルもほぼ同じです。

TestComplete は、テスト オブジェクトにツリー形式のモデルを使用しています。デスクトップと Web アプリ

ケーションのツリーのルート ノードは、Sys で、モバイル アプリケーションのルート ノードは Mobile です。

Process オブジェクトは オペレーティング システムで実行中のアプリケーションに対応します。このオブジェ

クトは、Windows ドキュメント内のプロセスのコンセプトに対応するため、ここではアプリケーションではなくプ

ロセスという用語を使用しています。

プロセス オブジェクトの名前は、実行可能なプロセスの名前とそのインデックスから構成されています (イン

デックスはいくつかのアプリケーション インスタンスを実行している場合のみ):

プロセスには、子オブジェクト (最上位ウィンドウに対応するウィンドウ) があり、子オブジェクトには、コント

ロールに対応する子ウィンドウ オブジェクトがあります。ウィンドウやコントロールの名前は、テストするアプリ

ケーションの内部メソッドやプロパティにテスト エンジンがアクセスできるかどうかに依存します。

TestComplete は、両方のタイプのアプリケーションで動作しますが、それらに異なる方法で名前を付けま

す。

• ブラックボックス アプリケーション

内部メソッドやプロパティにアクセスできないアプリケーションはブラックボックス アプリケーションと

呼ばれます。このようなアプリケーションのウィンドウの名前は、ウィンドウのクラス名、ウィンドウのテ

キストあるいはタイトル (キャプション)、インデックスから構成されます。オペレーティング システムの

観点から言えば、コントロールはウィンドウの一種なので、コントロールもウィンドウと同様に名前が

付けられます。

自動テストおよび TestComplete について

© 2019 SmartBear Software http://support.smartbear.com/

11

• ホワイトボックス アプリケーション

内部のオブジェクト、メソッド、プロパティに TestComplete がアクセスできるアプリケーションは、ホワ

イトボックス アプリケーションあるいは Open アプリケーションと呼ばれます。このアプリケーション

には、Object Browser 内で アイコンが表示されます (次に示す画像を参照)。

Open アプリケーションのウィンドウやコントロールに対して、TestComplete は ウィンドウやコントロー

ルの種類を反映した名前およびアプリケーションのソースで定義した名前を付けます。たとえば、

Microsoft WinForms ライブラリで作成された C# アプリケーションの MainForm という名前のフォー

ムの場合、TestComplete は WinFormsObject("MainForm") という名前を付けます。

プロセス、ウィンドウ、コントロールの名前の付け方についての詳細は、TestComplete ヘルプの「Naming Objects」を参照してください。

注意: 可能なかぎり、テストにはブラックボックス アプリケーションではなく Open アプリケーションを使

用することをお勧めします。Open アプリケーションで動作させることによって、テスト エンジンが

アプリケーションの内部メソッドやプロパティにアクセスできるようになり、より強力で柔軟性のあ

るテストを作成することができます。

.NET、WPF、Visual Basic、Java、Web などのアプリケーションは、TestComplete では常に

自動テストおよび TestComplete について

smartbear.com TestComplete by SmartBear Software

12

"Open" です。そのほかのアプリケーションは特別な方法でコンパイルが必要になることがあり

ます。これについての詳細情報は、TestComplete ヘルプの「Open Applications」を参照してく

ださい。

チェックポイントと Stores 典型的なテストでは、たくさんの比較が実行されます。たとえば、アプリケーションのデータをファイルにエク

スポートするユーザー アクションをシミュレートする場合、有効なデータがファイルに含まれるかどうかを確

認する必要があります。この確認を実行するには、その基準のコピーと結果ファイルを比較します。これは、

実行する必要がある比較の 1 つの例に過ぎません。実際のテストには、数千とまではいかなくても数百の比

較が含まれます。すべてのテスト (リグレッション、単体、機能など) は、オートメーション中に有効なリファレ

ンスを必要とします。

TestComplete を用いることで、テストに比較コマンド (あるいはチェックポイント) を簡単に追加することがで

きます。テストのレコーディング中およびデザイン時の両方でチェックポイントを作成することができます。

TestComplete は、異なる種類のデータ (画像、ファイル、オブジェクト テキストやプロパティ、XML ドキュメン

ト、データベース テーブルなど) を比較するチェックポイントを提供します。TestComplete は、これらのチェッ

クポイントで用いる基準データを格納する Stores プロジェクト項目を含んでいます。このプロジェクト項目

は、プロジェクトと一緒に保存される比較用の画像、ファイル、その他の要素を格納します。唯一の例外は、

オブジェクト プロパティを検証するチェックポイントです (このオブジェクト プロパティの基準データはテスト

内で指定されます)。

チェックポイントと検証用コードの作成に関する詳細は、TestComplete ヘルプの「About Checkpoints」を参

照してください。

デスクトップ アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

13

デスクトップ アプリケーションのテスト TestCompleteは、C ++、C#、VB.NET、Java、Delphi、C ++ Builder およびその他多くの開発ツールで作成

された 32 ビットおよび 64 ビット Windows デスクトップ アプリケーションのテストをサポートします。

このチュートリアルは、デスクトップ アプリケーション (デスクトップ コンピューターで実行するアプリケーショ

ン) のテストの基本を説明します。これは、自動テストの一般原則に精通しており、TestComplete IDE につ

いての最低限の知識を持っていることを前提としています。

初心者の方は、上記の自動テストの紹介を読むことをお勧めします。

このチュートリアルのセクションには、TestComplete でテスト プロジェクトを作成し、簡単なテストをレコーディ

ングおよび再生実行して、結果を分析する方法の説明が含まれています。このテストは、テストするアプリ

ケーション上のユーザー アクションをエミュレートし、データを検証します。検証用コマンドはテスト レコー

ディング中に作成されます。

テストするアプリケーションについて

この説明では、TestComplete に含まれるサンプルの Orders アプリケーションを使用します。このアプリケー

ションは注文 (orders) のリストを表示し、注文を追加、削除、編集、エクスポートするための特別な機能を

持っています。

このアプリケーションは下記の場所にインストールされます。

C:\Users\Public\Public Documents\TestComplete 14 Samples\Desktop\Orders

デスクトップ アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

14

注意: ファイル マネージャーによっては、Public Documents フォルダーを Documents として

表示するものがあります。

ここでは、Visual C# で作成された Orders アプリケーションを使用します。

他のコンパイラー (Delphi、C ++ Builder、Swing など) で作成された Orders プロジェクト

の場合は、Web サイトの https://support.smartbear.com/downloads/testcomplete ページか

ら TestComplete Samples インストール パッケージをダウンロードして実行してください。

1. テストの計画 サンプルの Orders アプリケーションは、注文リストを管理します。ここでは、アプリケーションの Edit Order フォームが正しく機能し、注文リストのデータが変更されるかどうかをテストします。この場合、次のように定

義します。

• テストの目的: このテストは、Edit Order フォームで変更されたデータが保存され、その変更内容が

注文リストに反映されるかどうかをチェックします。

• テストの手順: テストでは、注文の詳細情報の変更、注文リスト内のデータの検証をシミュレートしま

す。アプリケーション上のユーザー アクションをシミュレートしたテストをレコーディングします。簡単

にするために、このテストでは 1 つの注文の 1 つのプロパティのみを "変更" します。

• チェックおよびテスト結果の記録: 注文への変更が正しく保存されたのであれば、注文リストにその

変更内容が反映されるべきです。これをチェックするために、今回のテストはリスト内のデータと期

待される値を比較します。テストに特別な比較コマンドを追加します。このコマンドは、テスト ログに

比較結果を出力するので、これによって検証が成功したか失敗したかを確認することができます。

TestComplete を使用したテストの計画についての詳細は、TestComplete ヘルプの「Planning Tests」を参照

してください。

2. レコーディングについて TestComplete では、2 通りの方法でテストを作成することができます。

• テストを手動で作成する - スクリプト オブジェクトまたはキーワード テスト コマンドを使用して、必要

なすべてのコマンドとアクションを入力します。このアプローチは、強力で柔軟なテストを作成する

必要があるとき、またはテストの作成で豊富な経験がある場合、役に立ちます。しかし、手動でテス

トを作成することは、多くの時間を必要とし、別の問題が生じる可能性があります。たとえば、使用す

るアプリケーション オブジェクトのクラスや名前を知っていなければなりません。

• テストを記録する - テストを簡単に作成することができます。一度、テストするアプリケーションに対

していくつかのアクションを実行すると、TestComplete は自動的にこれらのアクションを認識し、それ

らをスクリプトまたはキーワード テスト操作に変換します。テストをビジュアルに作成し、実行したアク

デスクトップ アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

15

ションをスクリプトまたはキーワード テストに記録できます。これは、非常に役に立つアプローチであ

り、テストの作成であまり経験を必要としません。

このチュートリアルでは、TestComplete でテストを記録する方法を説明します。

レコーディングは次の 3 つの手順を含みます。

1. レコーディングを開始します。TestComplete のメイン メニューあるいは [Test Engine] ツールバーか

ら [Test] - [Record] - [Record Keyword Test] または、[Test] - [Record] - [Record Script] を選択してレコーディングを開始します。スタートページの [Record Test] をクリックして、レコー

ディングを開始することもできます。

さまざまな種類のテスト (キーワード テスト、スクリプト、低レベルのプロシージャー) をレコーディング

することができます。レコーディングの開始に使用するメニュー項目によって、メインのレコーディン

グするテスト (キーワード テストまたはスクリプト コード) が定義されます。そのほかのテストはそのレ

コーディングが開始された後でレコーディングされます。メインのレコーディングするテストには、こ

れらのテストを実行する特別なコマンドが含まれます。

TestComplete は、レコーディング モードに切り替わり、画面上に [Recording] ツールバーが表示さ

れます。デフォルトでは、ツールバーは折りたたまれ、レコーディング中に必要となるよく利用される

コマンドだけが表示されます。

[Recording] ツールバーを展開するには、 矢印ボタンをクリックします。すると、すべてのボタンが

表示されます。

このツールバーを使用して、レコーディング中に追加の動作を実行したり、レコーディングの一時停

止や停止、レコーディングするテスト タイプ (キーワード テスト、スクリプト コード、低レベルのプロ

シージャー) を変更することができます。

2. レコーディング開始後、必要なテスト動作を実行します。テストするアプリケーションを起動し (必要

な場合)、コマンド ボタンをクリックしたり、メニュー項目を選択したり、テキストを入力するなどして使

用します。

3. すべてのテスト動作が終了した後、[Recording] ツールバーから [Stop] を選択し、レコーディン

グを停止します。

デスクトップ アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

16

テストのレコーディングに関する詳細は、TestComplete ヘルプの「Recording in TestComplete」を参照してく

ださい。

最初のテストのレコーディング方法は、次の「3. テストのレコーディング開始」を参照してください。

3. テストのレコーディング開始 1. TestComplete でプロジェクトあるいはプロジェクト スイートを開いている場合は、閉じてください。こ

れをするには、[File] - [Close] を TestComplete のメインメニューから選択します。

2. TestComplete スタート ページに切り替えます。このページが隠れている場合、TestComplete の [Help] メニューから [Start Page] を選択します。

3. スタートページで、 [Record Test] をクリックします。TestComplete は、[Record Test] ウィザー

ドを表示します。

4. ウィザードの最初のページで、プロジェクトの名前、場所、テスト タイプを指定します。

[Project name] テキスト ボックスに Orders と入力します。

[Location] テキスト ボックスはデフォルトの値のままにします。

テスト タイプを選択します。キーワードテストまたは JavaScript、Python スクリプト テストのいずれかを

作成することができます。

デスクトップ アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

17

• キーワードテストは、マウスのクリック、テキストの入力など、ユーザーの操作を定義する一

連のキーワードです。視覚的にキーワード テストを作成します。スクリプトの知識は必要で

はありません。

• JavaScript と Python テストは、ユーザー アクションをシミュレートする命令を含むスクリプト関

数です。

このチュートリアルでは、キーワード テストの作成方法を示します。[Keyword] をクリックします。

5. [Next] をクリックして続行します。

ウィザードを使って、テストするアプリケーションをプロジェクトに追加するため、ウィザードで作業を

続行します。

4. テストするアプリケーションの定義 各 TestComplete プロジェクトには、テストするアプリケーションのリストが含まれます。これにより、プロジェク

トで使用するアプリケーションとそのテスト設定を追跡できます。

プロジェクトにアプリケーションを追加する方法はいくつかあります。

• プロジェクトの作成中にこれを行うことができます。

• これは、後で Project Explorer でいつでも行うことができます。

• テストのレコーディング中に自動的に追加することができます。レコーダーはコマンドライン、エクス

プローラーなどからのアプリケーションの開始を検出することが可能です。

テストする Orders アプリケーションをプロジェクトに追加します。

デスクトップ アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

18

1. ウィザードでは、テストするアプリケーションを選択できる 2 番目のページが表示されます。

2. テストする Orderes アプリケーションは、スタンドアロンの実行ファイルとして実行される .NET アプリ

ケーションなので、デスクトップ アプリケーションのカテゴリに該当します。

[Desktop] をクリックします。

3. [Application file] ボックスで、[...] ボタンをクリックします。表示される [Select Tested Application] ダイアログで、Orders 実行ファイルの場所を見つけます。以下のパスにあります。

C:\Users\Public\Public Documents\TestComplete 14 Samples\Desktop\Orders\C#\bin\Release\Orders.exe

注意: ファイル マネージャーによっては、Public Documents フォルダーを Documents として表示するものがあります。

4. テストの実行を成功させるには、テスト実行の開始時およびテストのレコーディングの開始時に、テ

ストするアプリケーションの状態が同じである必要があります。テストのレコーディングを開始すると

きにテストするアプリケーションが実行されている場合、その状態は後続のテスト実行中の状態と異

なることがあります (たとえば、データが読み込まれているか、ダイアログが開いているなど)。そのた

め、テストするアプリケーションのすべての既存のインスタンスを閉じ、テストするアプリケーションの

起動からテストをレコーディングすることを推奨します。

TestComplete が Orders アプリケーションの既存のインスタンスをすべて自動的に再起動するように

するには、[Restart application] チェックボックスを選択します。

5. [Record] をクリックし、プロジェクトの作成を完了し、レコーディングを開始します。

デスクトップ アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

19

5. テストのレコーディング

レコーディング中に TestComplete ヘルプに切り替えないでください。レコーディング エン

ジンはすべてのユーザー アクションをトレースし、レコーディングします。つまり、レコー

ディングしたテストに、この "切り替え" をシミュレートするコマンドが含まれてしまいます。

操作手順は、レコーディングを開始する前に印刷しておくことができます。あるいは、2 つのモニターがある場合、TestComplete ヘルプをもう一方のモニターへ移動しておくことが

できます。

1. TestComplete は、テストのレコーディングを開始し、レコーディング モードに切り替わり、画面上に [Recording] ツールバーが表示されます。

2. レコーディングが開始されると、TestComplete は自動的にテストするアプリケーション Orders を起動

します。アプリケーションが起動しない場合は、[Recording] ツールバーの [Run App] メニューから

アプリケーションを選択して手動で起動できます。または、Windows Explorer や任意のファイル マネージャーからアプリケーションを起動できます。テストするアプリケーションがリストにない場合は、

追加することができます。

TestComplete は、特別なアプリケーションの起動テスト コマンドを使用して、アプリケーションの開

始を記録します。後でレコーディングしたテストを分析するときに、このコマンドを参照します。

デスクトップ アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

20

3. アプリケーションが開始するまで待ちます。アプリケーションのメイン ウィンドウが表示されます。

4. Orders アプリケーションに切り替えて、そのメイン メニューから [File] - [Open] を選択します。[ファ

イルを開く] ダイアログが表示されます。

5. このダイアログで、MyTable.tbl ファイルを開きます。これは、C:\Users\Public\Public Documents\TestComplete 14 Samples\Desktop\Orders フォルダーにあります。ファイル マネージャー

によっては、Public Documents フォルダーを Documents として表示するものがあります。

[ファイルを開く] ダイアログの [ファイル名] ボックス内には省略していないファイル

名を入力することをお勧めします。マウスを使用する代わりにキーボード入力する

ことで、異なるオペレーティング システムでテストを再生実行したり、後でテストを実

行したときに [ファイルを開く] ダイアログで異なる初期フォルダーが表示された場

合に問題を回避することができます。

デスクトップ アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

21

6. [ファイル名] ボックス でファイルを指定した後、[開く] をクリックします。Orders アプリケーションは、

そのファイルからデータをロードし、アプリケーションのメイン ウィンドウにデータを表示します。

7. 注文リストの Samuel Clemens 行をクリックします。

デスクトップ アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

22

8. [Orders] ツールバーで、 [Edit order] をクリックします。[Orders] ダイアログが表示されます。

9. ダイアログで、挿入ポイントを [Customer Name] ボックスにするため、[Customer Name] ボックス

内をクリックします。[Customer Name] ボックス内を右クリックして、コンテキスト メニューから [すべて

選択] を選択した後に顧客名として Mark Twain と入力します。

10. [OK] をクリックしてこのダイアログを閉じます。アプリケーションのメイン ウィンドウ内の顧客リストが

更新されます。

11. テストに比較コマンドを挿入します。この比較コマンドは、アプリケーションの顧客リストに変更した

名前 (Mark Twain) が表示されることを検証します。

比較コマンドをチェックポイントと呼びます。TestComplete には、異なる種類のデータの検証に適し

たさまざまな種類のチェックポイントが用意されています (TestComplete ヘルプの「Checkpoints」を参照)。最もよく使用されるチェックポイントの 1 つは、プロパティ チェックポイントです。アプリケー

ションのコントロールのデータのチェックに使用されます。このチュートリアルでは、このプロパティ チェックポイントを使用します。

プロパティ チェックポイントを作成するには、Create Checkpoint ウィザードを使用するは、Quick Checkpoint を作成します。このチュートリアルでは、Quick Checkpoints の作成方法を示します。

デスクトップ アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

23

• [Recording] ツールバーの をクリックし、Quick Checkpoints が有効になっていることを

確認します。

• マウス ポインターを顧客リストの上に移動します。TestComplete はそれを赤いフレームでハ

イライトします。 アイコンが不透明なるまで待って、マウス ポインターをそれに移動します。

TestComplete は、Quick Checkpoints を作成するためにもっとも一般的に使用されるプロパ

ティのリストを表示します。

デスクトップ アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

24

• そのリストにある wItem をクリックします。このプロパティでは、ツリー表示コントロールの

個々の項目にアクセスできます。

• TestComplete は、オブジェクト プロパティのリストを表示する Create Checkpoint ウィザー

ドを開きます。このリストには、テストするアプリケーションによって定義されたプロパティと TestComplete によって提供されるプロパティが含まれます。たとえば、テストするアプリケー

ションが C# で作成されている場合は、該当する .NET クラスのプロパティが含まれます。こ

れらは、.Net カテゴリです (Available Properties テーブルを参照)。

デスクトップ アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

25

クリックした wItem プロパティがハイライトされます。

• Mark Twain 文字列を保持しているセルを指定するには、Item ボックスに 5 を入力します (5 は、ツリー表示での Mark Twain 項目のインデックスです。インデックスはゼロベースで

す。) 0 を SubItem ボックスに入力します。

テスト エンジンによって項目のデータが読み取られ、プロパティ リスト内に表示されます。

• [Condition] カラムで、デフォルトの比較条件 Equals (大文字と小文字を区別) をそのま

まにします。

• [Value] カラムには、テスト実行中にチェックポイントが実際のデータを比較する基準となる

データを指定します。現在の値をそのままにします。

• プロパティのチェックボックスを選択します。

デスクトップ アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

26

• [Finish] をクリックしてチェックポイント作成を完了します。

• レコーディングしたテストにチェックポイント コマンドが追加され、そのことについて通知が表

示されます。ユーザーアクションのレコーディングを継続できます。

12. ウィンドウのキャプション バーにある [X] ボタンをクリックして [Orders] ウィンドウを閉じます。変更を

保存するかどうかを確認するダイアログが表示されます。[いいえ] をクリックします。

13. [Recording] ツールバーの [Stop] を押して、レコーディングを停止します。レコーディングしたテ

スト コマンドが処理され、テストに保存されます。

6. レコーディングしたテストの解析 レコーディング終了後、TestComplete はレコーディングしたキーワード テストを編集用に開き、Keyword Test エディターにテストの内容を表示します。

デスクトップ アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

27

レコーディングしたテストは上記の画像に示すテストのようになります。実行環境によってはこれとは異なる

ことがあります。たとえば、C++Builder または Delphi アプリケーションでテストをレコーディングした場合は、

ほかのオブジェクト名やウィンドウ インデックスを含んでいる可能性があります。

このテストには、レコーディング中に Orders アプリケーション上で実行した動作に対応するコマンドが含まれ

ています。このテスト コマンドを operation と呼びます。

コマンドの下に [Test Visualizer] パネルがあり、TestComplete によってテストのレコーディング中に operation でキャプチャーされた画像が表示されます。

デスクトップ アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

28

これらの画像は、レコーディングした operation を表し、operation が実行する動作を理解するのに役立ちま

す。TestComplete は、ユーザー アクション (マウス クリック、テキスト入力など) に対応した operation の画像

のみをキャプチャーします。

エディター内でこの操作を選ぶと、Test Visualizer は自動的に適切な画像を選択するため、operation が実

行される前にアプリケーションの状態を簡単に見ることができます。画像をさらに詳しく見たい場合は、[Test Visualizer] パネルでその画像をダブルクリックします。

画像の作業についての詳細は、TestComplete ヘルプの「Test Visualizer」を参照してください。

このテストの最初の operation は、Run TestedApp です。これは、テストするアプリケーション (今回の場合、

Orders アプリケーション) を、キーワード テストから起動するのに使用します。TestComplete は、自動的にア

プリケーションを起動するときに、あるいは [Recording] ツールバーやオペレーティング システムの UI から

アプリケーションが起動されたことを検出すると、自動的にこの操作を記録します。

次の operation は、[File] - [Open] メニュー項目の選択に対応します。

次の operation は、[ファイルを開く] ダイアログでファイルを開く動作をシミュレートします。

特定のケースでは、TestComplete は、[ファイルを開く] ダイアログ コントロールを操作するときに実行するア

プションをシミュレートする一連の操作をレコーディングできます。

注意: [ファイルを開く] ダイアログのコントロールを使用してファイルをナビゲートする代わりに、このダイアロ

グの [ファイル名] ボックスに開きたいファイルのフルネームを入力することを推奨します。そうすること

で、オペレーティング システム、ダイアログで表示されるパス、利用可能なナビゲーション バーやパ

ネルに関係なく、正常に実行されるテストを記録できます。

テストに [ファイルを開く] ダイアログに対する一連の操作が含まれる場合、手動でテストを編集して、

これらの操作を OpenFile メソッドの呼び出しに置換することができます。

デスクトップ アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

29

その後、アプリケーションのメイン ウィンドウと Order フォームでのユーザー アクションをシミュレートする operation が続きます。

マウス イベント、キーボード入力、スクリプトからのその他の動作についての詳細は、TestComplete ヘルプ

の「Simulating User Actions」を参照してください。

次は、テスト レコーディング中に追加した比較動作です。

最後に、Orders アプリケーションを閉じる動作とメッセージ ボックス内で [いいえ] ボタンを押した動作です。

TestComplete は、自動的に operation を使用したプロセスやウィンドウに対応するグループにまとめます。グ

ループ化することで、テスト構造を簡単に理解できるようにし、さらにアプリケーションのオブジェクト階層の

情報を提供しています。

ここでは、1 つのプロセス (Orders) のユーザー アクションをレコーディングしました。そのため、"process" グループ ノードは、1 つだけです。このグループ ノードには、プロセス ウィンドウおよびコントロールでシミュ

レートしたすべての動作が含まれています。Orders プロセスのコントロールやウィンドウで実行した動作はい

くつかの "window" グループ ノードにまとめられています。

デスクトップ アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

30

テストするプロセスやそのウィンドウ、およびコントロールの名前が、これまでの手順で [Object Browser] パネルに表示されていた名前と異なることにお気付きかもしれません。たとえば、Object Browser では、テスト

するプロセスは Process("Orders") という名前であるのに対し、テスト内では Orders と呼ばれます。また Object Browser で、メイン ウィンドウは WinFormsObject("MainForm") と呼ばれるのに対し、テストでは MainForm という名前です。

これには、論理的な理由があります。デフォルトでは、TestComplete は、テスト レコーディング中に使用し

たオブジェクトに対して自動的にカスタム ネームを生成し、使用します。カスタム ネームの生成および割り

当ては、名前のマッピングと呼ばれます。デフォルトの名前は理解しにくいことがあるので、TestComplete では名前のマッピングを行っています。デフォルトの名前では、名前に対応するウィンドウやコントロールがど

れなのかの判断が難しいことがあります。マッピングした名前はテストをよりわかりやすく、安定したものにし

ます。名前のマッピングに加えて、TestComplete はマップされたオブジェクトのイメージを Name Mapping リポジトリに格納します。これは、1 つまたは別のマップされたオブジェクトが一致するウィンドウまたはコント

ロールを理解するのに役立ちます。名前のマッピングに関する詳細情報は、TestComplete ヘルプの「Name Mapping」を参照してください。

7. レコーディングしたテストの実行 TestComplete がユーザー アクションをどのようにシミュレートするか、ここで簡単なテストを実行してみましょ

う。

レコーディングしたテストを実行する前に、レコーディングしたときと同じ初期状態でテストが開始されるこ

とを確認してください。たとえば、ほとんどテストは、テストするアプリケーションの実行を必要とします。つまり、

ユーザー アクションをシミュレートする前に、そのアプリケーションを起動する必要があります。今回の例で

は、テストするアプリケーションを起動するため、テストの始めに Run TestedApp operation を使用し、テストに

よってアプリケーションが起動されるようにしました。代替手段として、テストするアプリケーションを手動で TestComplete の IDE から実行することも可能です。

レコーディングしたテストを実行するためには、テスト エディターのツールバーにある [Run Test] をク

リックします。

デスクトップ アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

31

このテスト エンジンは TestComplete のウィンドウを最小化して、テスト コマンドの実行を開始します。この

チュートリアルのテストでは、レコーディングした動作が実行されます。

注意: テスト実行中は、マウスを動かしたり、キーを押したりしないでください。TestComplete でシミュレートされる動作を妨げたり、テスト実行が正しく行われない可能性があります。

テスト実行の終了後、TestComplete はテスト結果を表示します。次の手順では、これを解析します。

テスト実行に関するいくつかの注意:

• 作成したテストは、テスト実行用の実行ファイルにはコンパイルされません。TestComplete から直接

テストを実行します。TestComplete がインストールされていないコンピューターでテストを実行するた

めには、TestExecute と呼ばれるリソース フレンドリーなユーティリティを使用することができます。ま

た、外部のアプリケーションにスクリプトをエクスポートして、それを実行することもできます。詳細に

ついては、TestComplete ヘルプの「Connected and Self-Testing Applications」を参照してください。

• テストの実行中、TestComplete は、画面の右上にインジケーターを表示します。

デスクトップ アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

32

このインジケーターは、シミュレートしたテスト動作に関する通知メッセージを表示します。

• TestComplete は、テストが終了するまでこのテスト コマンドを実行します。[Test Engine] ツールバー

の [Stop] を押すか、または TestComplete メイン メニューから [Test] - [Stop] を選択することで、

テスト実行をいつでも停止することができます。

[Pause] をクリックすることでテスト実行を一時停止することができます。一時停止の間は、必要

な任意の動作を実行することが可能です。たとえば、テスト ログを表示したり、TestComplete の [Watch List] や [Locals] パネルあるいは [Evaluate] ダイアログを使用してテストの変数やオブ

ジェクトを確認することが可能です (TestComplete ヘルプの「Debugging Tests」を参照)。

テストを実行するためには、テスト エディターのツールバーにある [Run Test] ボタンを使用します。

このほかにも、いくつかの方法でテストを実行することができます。Project Explorer あるいは、ほか

のテストから、テストを実行することも可能です。プロジェクト エディターのテスト項目ページを使用

して、バッチの実行を作成することもできます。

TestComplete のテスト実行、実行に影響するプロジェクト設定、テスト実施に関する詳細は、TestComplete ヘルプの「Running Tests」を参照してください。

デスクトップ アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

33

8. テスト結果の解析 TestComplete は、テスト中に実行されたすべての操作の完全なログを保存します。テスト結果へのリンクは、

[Project Explorer] パネルの [Project Suite Logs] - [Orders Log] ノードに表示されます。これは、プロ

ジェクトおよびプロジェクト スイートのテスト履歴を調べるための主なワークスペースです。各ノードは 1 つの

テスト実行に対応します。ノードの左の画像は、対応するテストの実行が成功したかどうかを表しています。

テスト実行の終了後、TestComplete は自動的に最終結果のノードを追加します。つまり、テストが実行中の

ときは、結果は表示されません (テストの実行を一時停止した場合は、中間結果を表示することができま

す)。

ここまでに実行したテストは 1 つのみなので、Project Explorer には 1 つのログ ノードだけが表示されます。

デフォルトでは、[Workspace] パネルにこのノードの内容が自動的に表示されます。このログは、いつでも

確認することができます。ログを見るには、[Project Explorer] パネルで表示したい結果を右クリックし、コン

テキスト メニューから [Open] を選択します。

注意: デフォルトで、TestComplete はログ ファイルにすべてのテスト結果を格納します。テスト実

行ごとにログ ファイル数が増えて、メモリ消費量が増加します。メモリ使用量を減らすため

に、手動でログ ファイルを削除したり、保存するログ ファイルの数を制限することができま

す。

この例では、ログは次のようになります。

デスクトップ アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

34

ログ ウィンドウは、1 度に 1 つのテスト実行の結果を表示します。ウィンドウの左側は、実行されたテストのツ

リー構造で、それぞれのテストのノードを選択してその結果を表示することができます。たとえば、今回の例

のように 1 つのテストを実行した場合、このツリーには 1 つのノードのみ含まれます。このノードのアイコンは、

テストが成功したかどうかを示します。

テスト ログには、エラー、警告、情報および他の種類のメッセージが含まれています。左のアイコンは、メッ

セージの種類を示します。メッセージ リストの上のチェック ボックスを使用することで、種類によってメッセー

ジを表示/非表示にすることができます。

それぞれのメッセージでは、アクションが行われた時間が Time 列に表示されます。

TestComplete は、メッセージとともに追加テキストや画像を出力することがあります。これらを確認するには、

ログ内でメッセージを選択し、メッセージ リストの下にある [Details] や [Picture] ペインを参照します。たと

えば、上記画像の [Picture] ペインは、"The menu item 'Orders|Edit order...' was clicked" メッセージに関連

するスクリーンショットを表示しています。

[Picture] パネルでは、選択したテスト コマンドを実行する前に、期待される状態と実際のアプリケーション

の状態を示す画像が表示されます("期待される" とはレコーディング中にそのテスト コマンドでキャプチャー

された画像を指し、"実際" とはテストの実行中にキャプチャーされた画像を指します)。画像の違いを見るた

め、 [View Comparison Result] をクリックすることができます。そのため、テストでエラーが発生した場

デスクトップ アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

35

合、簡単に見つけることができます。詳細については、TestComplete ヘルプの「Test Visualizer」を参照して

ください。

[Call Stack] ペインは、選択したメッセージをログに出力したテスト コールの階層を表示します。

[Performance Counters] ペインは、テスト実行中にモニターしたパフォーマンス カウンターの値を表示し

ます。値はグラフ形式で表示されます。

ログにメッセージを出力したテスト操作を表示するには、ログ内でメッセージをダブルクリックします。すると、

エディターでキーワード テストが開き、該当する操作がハイライトされます。たとえば、ログの "Toolbar button 5 was clicked" メッセージをダブルクリックした場合、この動作が行われたキーワード テスト操作がハイライト

されます。

テスト ログ パネル、ログへメッセージを出力、その結果の使用に関する詳細情報は、TestComplete ヘルプ

の「Test Results」を参照してください。

注意: ここで説明したログは、TestComplete キーワード テストおよびスクリプト特有のログです。ほか

の種類のテストは異なった構造のログになります。ログに関する詳細情報は、適当なプロジェク

ト項目の解説を参照するか、そのログ ページ内をクリックして、F1 を押してください。

エラーの解決 テストが失敗することがあります。これにはいくつかの可能性があります。たとえば、開発者がアプリケーショ

ンの振る舞いを変更したり、ウィンドウとコントロールの認識属性の変更によりテスト エンジンが必要なオブ

デスクトップ アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

36

ジェクトの検出に失敗したり、サードパーティのアプリケーションがテストするアプリケーションのウィンドウに

重なっているためにテスト エンジンがアクションのシミュレートに失敗するなどの可能性があります。

初めてのユーザーが直面するもっとも典型的なものは、テスト作成中と再生実行中でアプリケーションの状

態が異なることです。この問題を避けるには、テストを作成したときと同じ初期状態でテスト実行しているか

確認してください。たとえば、レコーディングする前にテストするアプリケーションが実行されていた場合、テ

ストを開始する前にアプリケーションを実行しておかなければなりません。また、レコーディングしたときにテ

ストする Web ページがブラウザーの 2 つめのタブで開かれていた場合、テストを実行するときも 2 つめのタ

ブで開かれるようにしなければなりません。

エラーの原因を探し、典型的な問題を解決するための情報は、TestComplete ヘルプの「Handling Playback Errors」を参照してください。

Web アプリケーションのテスト - チュートリアル

© 2019 SmartBear Software http://support.smartbear.com/

37

Web アプリケーションのテスト - チュートリアル TestComplete は、Internet Explorer、Edge、Chrome、Firefox、または組み込みの WebBrowser または Chromiumで動作する Web アプリケーションの機能テストをサポートします。TestComplete は、Web アプリ

ケーションのテストをサポートし、HTML5、AJAX、ASP.NET、Flash、Flex、AIR、および Silverlight テクノロ

ジーのサポートを強化しています。

このセクションでは、TestComplete でテスト プロジェクトを作成し、簡単な Web テストをレコーディング、再生

実行し、結果を解析する方法について説明します。これは、自動テストの一般原則に精通しており、

TestComplete IDE についての最低限の知識を持っていることを前提としています。

初心者の方は、上記の自動テストの紹介を読むことをお勧めします。

このテストは、Web ページ上のユーザー アクションをエミュレートし、データを検証します。検証用コマンド

はテスト レコーディング中に作成されます。

テストする Web ページについて

このチュートリアルでは、SmartBear 社の Web サイトにあるサンプルの SmartStore アプリケーションを使用

します。

http://services.smartbear.com/samples/TestComplete14/smartstore/

Web アプリケーションのテスト - チュートリアル

smartbear.com TestComplete by SmartBear Software

38

このアプリケーションは、アイテムをブラウズしたり、ウィッシュ リストとショッピング カートに追加したり、アイテ

ムを比較したりできるサンプル オンライン ストアです。アカウントを作成して、ログインし、モックアップ オー

ダーを作成することができます。

注意: このチュートリアルでは、Google Chrome Web ブラウザーを使用します: チュートリアルのすべの画

像は、テストするアプリケーションを Chrome で開いた状態で作成されています。サポートされてい

る任意の Web ブラウザーを使用できます。

1. Web ブラウザーの準備 TestComplete で Web テストをレコーディングして再生実行するには、Web ブラウザーを特別な方法で設定

する必要があります。また、クロスブラウザー テストを簡単にするため、ブラウザー固有の動作を排除するこ

とを推奨します。ブラウザーの設定についての詳細は、TestComplete ヘルプの「Preparing Web Browsers」を参照してください。

ブラウザーの設定が完了したら、テストを作成します。

Web アプリケーションのテスト - チュートリアル

© 2019 SmartBear Software http://support.smartbear.com/

39

2. テストの計画 このサンプル SmartStore アプリケーションは、オンライン ストアです。アプリケーションがショッピング カート

にアイテムを正しく追加するかどうかをテストする必要があるとします。この場合、次のように定義する必要が

あります。

• テスト目的: テストでは、選択したアイテムがショッピング カートに正しく追加されているかどうかを確

認する必要があります。つまり、ショッピングカートに追加されたアイテムが表示されます。

• テスト手順: テストでは、ショッピング カートにアイテムを追加し、ショッピング カートにこのアイテムが

含まれていることを確認する必要があります。アプリケーション上のユーザー アクションをシミュレー

トしたテストをレコーディングします。

• テスト結果の確認とロギング: アイテムが正しく追加されている場合は、そのアイテムがショッピング カート内にある必要があります。これをチェックするには、ショッピング カートのデータを期待値を比

較します。この目的のために、特別な比較コマンドをテストに追加します。このコマンドは、比較結

果をテストログに出力するので、検証が失敗したかどうかを見れます。

TestComplete を使用したテストの計画についての詳細は、TestComplete ヘルプの「Planning Tests」を参照

してください。

3. テストのレコーディングについて TestComplete では、2 通りの方法でテストを作成することができます。

• テストを手動で作成する - スクリプト オブジェクトまたはキーワード テスト コマンドを使用して、必要

なすべてのコマンドとアクションを入力します。このアプローチは、強力で柔軟なテストを作成する

必要があるとき、またはテストの作成で豊富な経験がある場合、役に立ちます。しかし、手動でテス

トを作成することは、多くの時間を必要とし、別の問題が生じる可能性があります。たとえば、使用す

るアプリケーション オブジェクトのクラスや名前を知っていなければなりません。

• テストを記録する - テストを簡単に作成することができます。一度、テストするアプリケーションに対

していくつかのアクションを実行すると、TestComplete は自動的にこれらのアクションを認識し、それ

らをスクリプトまたはキーワード テスト操作に変換します。テストをビジュアルに作成し、実行したアク

ションをスクリプトまたはキーワード テストに記録できます。これは、非常に役に立つアプローチであ

り、テストの作成であまり経験を必要としません。

このチュートリアルでは、TestComplete でテストを記録する方法を説明します。

レコーディングは次の 3 つの手順を含みます。

1. レコーディングを開始します。TestComplete のメイン メニューあるいは [Test Engine] ツールバーか

ら [Test] - [Record] - [Record Keyword Test] または、[Test] - [Record] - [Record Script] を選択してレコーディングを開始します。スタートページの [Record Test] をクリックして、レコー

ディングを開始することもできます。

Web アプリケーションのテスト - チュートリアル

smartbear.com TestComplete by SmartBear Software

40

さまざまな種類のテスト (キーワード テスト、スクリプト、低レベルのプロシージャー) をレコーディング

することができます。レコーディングの開始に使用するメニュー項目によって、メインのレコーディン

グするテスト (キーワード テストまたはスクリプト コード) が定義されます。そのほかのテストはそのレ

コーディングが開始された後でレコーディングされます。メインのレコーディングするテストには、こ

れらのテストを実行する特別なコマンドが含まれます。

TestComplete は、レコーディング モードに切り替わり、画面上に [Recording] ツールバーが表示さ

れます。デフォルトでは、ツールバーは折りたたまれ、レコーディング中に必要となるよく利用される

コマンドだけが表示されます。

[Recording] ツールバーを展開するには、 矢印ボタンをクリックします。すると、すべてのボタンが

表示されます。

このツールバーを使用して、レコーディング中に追加の動作を実行したり、レコーディングの一時停

止や停止、レコーディングするテスト タイプ (キーワード テスト、スクリプト コード、低レベルのプロ

シージャー) を変更することができます。

2. レコーディング開始後、必要なテスト動作を実行します。テストするアプリケーションを起動し (必要

な場合)、コマンド ボタンをクリックしたり、メニュー項目を選択したり、テキストを入力するなどして使

用します。

3. すべてのテスト動作が終了した後、[Recording] ツールバーから [Stop] を選択し、レコーディン

グを停止します。

テストのレコーディングに関する詳細は、TestComplete ヘルプの「Recording in TestComplete」を参照してく

ださい。

4. テストのレコーディング開始 1. TestComplete でプロジェクトあるいはプロジェクト スイートを開いている場合は、閉じてください。こ

れをするには、[File] - [Close] を TestComplete メインメニューかた選択します。

2. TestComplete スタート ページに切り替えます。このページが隠れている場合、TestComplete の [Help] メニューから [Start Page] を選択します。

Web アプリケーションのテスト - チュートリアル

© 2019 SmartBear Software http://support.smartbear.com/

41

3. スタートページで、 [Record Test] をクリックします。TestComplete は、[Record Test] ウィザー

ドを表示します。

4. ウィザードの最初のページで、プロジェクトの名前、場所、テスト タイプを指定します。

[Project name] テキスト ボックスに Orders と入力します。

[Location] はデフォルトの値をそのままにします。

テスト タイプを選択します。キーワードテストまたは JavaScript、Python スクリプト テストのいずれかを

作成することができます。

• キーワードテストは、マウスのクリック、テキストの入力など、ユーザーの操作を定義する一

連のキーワードです。視覚的にキーワード テストを作成します。スクリプトの知識は必要で

はありません。

• JavaScript と Python テストは、ユーザー アクションをシミュレートする命令を含むスクリプト関

数です。

このチュートリアルでは、キーワード テストの作成方法を示します。[Keyword] をクリックします。

5. [Next] をクリックして続行します。

ウィザードを使って、テストするアプリケーションをプロジェクトに追加するため、ウィザードで作業を続行しま

す。

Web アプリケーションのテスト - チュートリアル

smartbear.com TestComplete by SmartBear Software

42

5. テストする Web ページの定義 1. ウィザードでは、テストするアプリケーションを選択できる 2 番目のページが表示されます:

2. Web ページにある SmartStore アプリケーションをテストするので、[Web] をクリックします。

3. サポートしている Web ブラウザーの 1 つを選択します:

• Internet Explorer

• Firefox

• Google Chrome

• Microsoft Edge

このチュートリアルでは、Google Chrome を使用します。サポートされているその他の Web ブラウ

ザーを使用できます。

4. URL テキスト ボックスで、次の URL を入力します:

http://services.smartbear.com/samples/TestComplete14/smartstore/

5. テストを正常に実行するには、テスト実行の開始時にテストするアプリケーションの状態をテストのレ

コーディング時の開始時と同じにする必要があります。テストのレコーディングを開始するときにテス

トするアプリケーションが実行されている場合、その状態は後続のテスト実行中の状態と異なること

があります (たとえば、データが読み込まれているか、ダイアログが開いているなど)。そのため、テス

トのレコーディングを開始する前に、Web ブラウザーの実行中のすべてのインスタンスを閉じること

をお勧めします。

Web アプリケーションのテスト - チュートリアル

© 2019 SmartBear Software http://support.smartbear.com/

43

サポートされている Web ブラウザーのいずれかが実行されている場合、ウィザードは、[Restart the selected browser] チェックボックスを表示します。このチェックボックスをオンにすると、選択

した Web ブラウザーを閉じて、レコーディングが開始されると自動的に再起動するようにウィザード

に指示します。

(システム内で他の Web ブラウザーが実行されている場合、Web ブラウザーは引き続き実行されま

す。)

6. [Record] をクリックし、プロジェクトの作成を完了し、レコーディングを開始します。

6. テストのレコーディング

注意: レコーディング中に TestComplete ヘルプに切り替えないでください。レコーディング エンジ

ンはすべてのユーザー アクションをトレースし、レコーディングします。つまり、レコーディン

グしたテストに、この "切り替え" をシミュレートするコマンドが含まれてしまいます。

操作手順は、レコーディングを開始する前に印刷しておくことができます。あるいは、2 つの

モニターがある場合、TestComplete ヘルプをもう一方のモニターへ移動しておくことができ

ます。

Web アプリケーションのテスト - チュートリアル

smartbear.com TestComplete by SmartBear Software

44

1. 選択した Web ブラウザーが起動し、SmartStore アプリケーションのメインページに移動するまで待

ちます。

ブラウザーが起動しない場合は、起動して必要な Web ページを手動で開くことができます。

TestComplete は、特別なテスト コマンドを使用して、Web ブラウザーの開始をレコーディングします。

後でレコーディングしたテストを分析するときに、このコマンドを参照します。

Web アプリケーションのテスト - チュートリアル

© 2019 SmartBear Software http://support.smartbear.com/

45

2. [検索] テキスト ボックスに、ball を入力します。

Web アプリケーションのテスト - チュートリアル

smartbear.com TestComplete by SmartBear Software

46

3. 検索結果で、Official game ball アイテムを見つけて、クリックします。

Web アプリケーションのテスト - チュートリアル

© 2019 SmartBear Software http://support.smartbear.com/

47

4. アプリケーションが、選択したアイテムページを開きます。

5. そのページで、アイテムのカラー: 青色 と、サイズ: 3 を選択します。

Web アプリケーションのテスト - チュートリアル

smartbear.com TestComplete by SmartBear Software

48

6. [Add to cart] をクリックします。

Web アプリケーションのテスト - チュートリアル

© 2019 SmartBear Software http://support.smartbear.com/

49

7. アプリケーションは、Shopping Cart にアイテムが追加されて表示されます。

8. テストに比較コマンドを挿入します。ショッピングカートには、選択した機能 (カラー: 青色、サイズ: 3) のアイテムが含まれていることが確認されます。

比較コマンドをチェックポイントと呼びます。TestComplete には、異なる種類のデータの検証に適し

たさまざまな種類のチェックポイントが用意されています (TestComplete ヘルプの「Checkpoints」を参照)。最もよく使用されるチェックポイントの 1 つは、プロパティ チェックポイントです。アプリケー

ションのコントロールのデータのチェックに使用されます。このチュートリアルでは、このプロパティ チェックポイントを使用します。

プロパティ チェックポイントを作成するには、Create Checkpoint ウィザードを使用するは、Quick Checkpoint を作成します。このチュートリアルでは、Quick Checkpoints の作成方法を示します。

• [Recording] ツールバーの をクリックし、Quick Checkpoints が有効になっていることを

確認します。

• マウスポインターを Color: Blue, Size:3 の行に移動します。TestComplete はそれを赤いフレーム

でハイライトします。 アイコンが表示されるまで待ち、マウスポインターをそのアイコンに移動しま

Web アプリケーションのテスト - チュートリアル

smartbear.com TestComplete by SmartBear Software

50

す。TestComplete は、Quick Checkpoints を作成するためにもっとも一般的に使用されるプロパティ

を表示します。

Web アプリケーションのテスト - チュートリアル

© 2019 SmartBear Software http://support.smartbear.com/

51

• リストで、[contentText] プロパティを選択します。

このプロパティは、選択した Web 要素が表示するテキストへのアクセスを提供します。この

プロパティは、ブラウザーに依存しません。つまり、サポートされているすべての Web ブラウ

ザーで同じように動作し、さまざまなブラウザーでテストを実行再生する際の問題を回避で

きます。

• TestComplete は、レコーディングしたテストにチェックポイント コマンドを追加し、それに関

する通知を表示します。

• ユーザーアクションのレコーディングを継続できます。

9. アイテムの横にある [削除] ボタンをクリックし、ショッピングカートをクリアします。

Web アプリケーションのテスト - チュートリアル

smartbear.com TestComplete by SmartBear Software

52

10. ブラウザーのキャプション バーにある [X] ボタンをクリックしてブラウザーを閉じます。

11. [Recording] ツールバーの [Stop] を押して、レコーディングを停止します。レコーディングしたテ

スト コマンドが処理され、テストに保存されます。

7. レコーディングしたテストの解析 レコーディング終了後、TestComplete はレコーディングしたキーワードを Keyword Test エディターで開きま

す。

Web アプリケーションのテスト - チュートリアル

© 2019 SmartBear Software http://support.smartbear.com/

53

レコーディングしたテストは上記の画像に示すテストのようになります。実行環境によってはこれとは異なる

ことがあります。たとえば、不要なクリック操作が含まれていることがあります。

このテストには、レコーディング中に SmartStore アプリケーション上で実行した動作に対応するコマンドが含

まれています。このテスト コマンドを operation と呼びます。

コマンドの下に [Test Visualizer] パネルがあり、TestComplete によってテストのレコーディング中に operation でキャプチャーされた画像が表示されます。

これらの画像は、レコーディングした operation を表し、operation が実行する動作を理解するのに役立ちま

す。TestComplete は、ユーザー アクション (マウス クリック、テキスト入力など) に対応した operation の画像

のみをキャプチャーします。エディター内でこの操作を選ぶと、Test Visualizer は自動的に適切な画像を選

Web アプリケーションのテスト - チュートリアル

smartbear.com TestComplete by SmartBear Software

54

択するため、operation が実行される前にアプリケーションの状態を簡単に見ることができます。画像の作業

についての詳細は、「Test Visualizer」を参照してください。

このテストの最初の operation は、Run Browser です。これは、ブラウザーを起動し、キーワード リストから

指定されたページに移動します。TestComplete は、ブラウザーが起動されたことを検出すると、自動的にこ

の操作をレコーディングします。

次の動作は、検索ボックスと検索結果に連動します。

次に、選択されたアイテムの説明を持つページを待つ動作があります。

それに続いて、アイテムの色とサイズを選択をシミュレートすし、そのアイテムをカートに追加する動作があり

ます。

次は、テストのレコーディング中に追加した比較動作です。

Web アプリケーションのテスト - チュートリアル

© 2019 SmartBear Software http://support.smartbear.com/

55

その後、ショッピングカートをクリアする動作があります。

そして、Web ブラウザーを閉じる動作です。

マウス イベント、キーボード入力、スクリプトからのその他の動作についての詳細は、TestComplete ヘルプ

の「Simulating User Actions」を参照してください。

TestComplete は、自動的に operation を使用したプロセスやウィンドウに対応するグループにまとめます。グ

ループ化することで、テスト構造を簡単に理解できるようになります。さらにアプリケーションのオブジェクト階

層の情報を提供しています。

ここでは、1 つのブラウザーのユーザー アクションをレコーディングしました。そのため、ブラウザーのグルー

プ ノードがあります。これらには、ブラウザー ウィンドウおよびコントロールで実行したすべての動作が含ま

れています。さまざまな Web ページで実行した動作はいくつかの "page" グループ ノードにまとめられてい

ます。

Web アプリケーションのテスト - チュートリアル

smartbear.com TestComplete by SmartBear Software

56

レコーディングしたテストの Web ブラウザー、およびページ要素の名前に注意する必要があります。

これらは、[Object Browser] パネルに表示される名前と異なります。たとえば、[Object Browser] では、

Web ブラウザーの名前は (使用するブラウザーに応じて) Browser("iexplore")、Browser("edge")、Browser("firefox")、または Browser("chrome") であるのに対し、テストでは単に browser と呼ばれます。別

の例は、SmartStore アプリケーションのメインページです。Object Browser では、

Page("http://services.smartbear.com/samples/TestComplete14/smartstore/") と呼ばれ、テストでは、その名前

ははるかに短い pageShop と呼ばれます。

これは、デフォルトで、テストをレコーディングしている間、TestComplete は自動的にすべての項目を Name Mapping リポジトリに追加しているためです。各項目のために、TestComplete は後でアプリケーショ

ン内のオブジェクトを見つけるために使用する認識パラメーターを格納します。また、各項目のために、

alias を格納します。エイリアスはテスト内のオブジェクトを見つけるために使用する短い名前です。

Web アプリケーションのテスト - チュートリアル

© 2019 SmartBear Software http://support.smartbear.com/

57

Project Explorer の Name Mapping 項目をダブルクリックして、Name Mapping リポジトリを開き、

TestComplete がテストのレコーディング中にオブジェクト用に作成した認識パラメーターとエイリアスを表示

できます。

Name Mapping とエイリアスの使用は、テストをより分かりやすく、安定したものにします。

8. レコーディングしたテストの改善 レコーディングされたテストをそのまま実行することもできますが、それを調整してより安定させることをお勧

めします。

Web アプリケーションのテスト - チュートリアル

smartbear.com TestComplete by SmartBear Software

58

たとえば、マウス クリックなどのユーザー アクションをレコーディングすると、TestComplete はクリックが実行

された座標を記録します。たとえば、下の画像は、テストするアプリケーションで [検索] テキスト ボックスの

特定のポイントのクリックをシミュレートする Click 操作を示しています。

レコーディングしたテストを実行すると、TestComplete はテスト レコーディング中に実行されたのとまったく

同じポイントでクリックをシミュレートします。これは、ブラックボックス アプリケーション (TestComplete がアク

セスできないコントロールへのアプリケーション、ユーザー アクションをシミュレートするために座標に依存

する必要がある) をテストするときに便利です。.コントロールのさまざまな部分をクリックするとさまざまな結果

が得られる、複雑なコントロールをテストする場合にも便利です。

ただし、このチュートリアルでは、Open Application をテストしています。TestComplete はすべてのコント

ロールを認識し、そのプロパティとメソッドにアクセスできます。したがって、ユーザー アクションをシミュレー

トするために座標に頼る必要はありません。

さらに、テストしているアプリケーションは、レスポンシブ デザインです。ブラウザー ウィンドウのサイズに合

わせてコントロールのサイズと位置を調整します。TestComplete が 1 つのブラウザー ウィンドウ サイズ用に

レコーディングした座標は、別のブラウザー ウィンドウ サイズ用にテストを実行すると正しくない座標になり

ます。

レコーディングされたテストを修正して、適切なコントロールの左上隅で、すべてのクリック アクションをシミュ

レートしましょう。このようにして、ブラウザー ウィンドウのサイズとアプリケーションの現在のコントロール レイ

アウトに関係なく、テストは正しくクリックをシミュレートします。

Web アプリケーションのテスト - チュートリアル

© 2019 SmartBear Software http://support.smartbear.com/

59

1. テストで、[検索] テキスト ボックスでのクリックを見つけて、[Value] カラムの [...] ボタンをクリックしま

す。

2. TestComplete は、この操作の [Operation Parameters] ダイアログを開きます。

Web アプリケーションのテスト - チュートリアル

smartbear.com TestComplete by SmartBear Software

60

3. ダイアログボックスで、レコーディングされた ClientX と ClientY パラメーターを 1 に置き換えます。

TestComplete の場合、これはコントロールの左上隅をクリックすることに相当します。

[Finish] をクリックして、変更を適用し、ダイアログを閉じます。

注意: 代わりに、クリック座標を -1、-1 に設定することもできます。TestComplete の場合、これは

コントロールの中央をクリックすることに相当します。

4. 同様に、検索結果リストとアイテムのカラー チェック ボックス上のクリックをシミュレートする操作の座

標を変更します。

5. テストでハードコードされた座標でクリックをシミュレートするその他の操作がある場合、必要に応じ

て座標を調整します。

6. TestComplete のメインメニューから、[File] - [Save All] を選択して、すべての変更を保存します。

Web アプリケーションのテスト - チュートリアル

© 2019 SmartBear Software http://support.smartbear.com/

61

9. レコーディングしたテストの実行 TestComplete がユーザー アクションをどのようにシミュレートするか、ここで簡単なテストを実行してみましょ

う。

レコーディングしたテストを実行する前に、初期状態がレコーディングしたときと同じであることを確認して

ください。たとえば、ほとんどの Web テストでは、Web ブラウザーが起動され、必要なページが表示されて

いる必要があります。今回の例では、ブラウザーを起動し、テストする Web ページを開くため、テストの初め

に Run Browser operation を使用します。

レコーディングしたテストを実行するためには、テスト エディターのツールバーにある [Run Test] をク

リックします。

TestComplete がテスト コマンドの実行を開始します。このチュートリアルのテストでは、レコーディングした動

作が実行されます。

注意: テスト実行中は、マウスを動かしたり、キーを押したりしないでください。TestComplete でシ

ミュレートされる動作を妨げたり、テスト実行が正しく行われない可能性があります。

テスト実行の終了後、TestComplete はテスト結果を表示します。次の手順では、これを解析します。

テスト実行に関するいくつかの注意:

• テストの実行中、TestComplete は、画面の右上にインジケーターを表示します。

このインジケーターは、シミュレートしたテスト動作に関する通知メッセージを表示します。

• TestComplete は、テストが終了するまでこのテスト コマンドを実行します。[Test Engine] ツールバー

またはインジケーターの [Stop] をクリックするか、または TestComplete メイン メニューから [Test] - [Stop] を選択することで、テストの実行をいつでも停止することができます。

[Pause] をクリックすることでテスト実行を一時停止することができます。一時停止の間は、必要

な任意の動作を実行することが可能です。たとえば、テスト ログを表示したり、TestComplete の [Watch List] や [Locals] パネルあるいは [Evaluate] ダイアログを使用してテストの変数やオブ

ジェクトを確認することが可能です (TestComplete ヘルプの「Debugging Tests」を参照)。

Web アプリケーションのテスト - チュートリアル

smartbear.com TestComplete by SmartBear Software

62

• TestComplete がインストールされていないコンピューターでテストを実行するためには、

TestExecute と呼ばれるリソース フレンドリーなユーティリティを使用することができます。

TestComplete のテスト実行、実行に影響するプロジェクト設定、テスト実施に関する詳細は、TestComplete ヘルプの「Running Tests」を参照してください。

10. テスト結果の解析 TestComplete は、テスト中に実行されたすべての操作の完全なログを保存します。Project Explorer は、テ

ストの結果を Project Suite Logs > SmartStore Log ノードの下に維持しています。これは、プロジェクト

およびプロジェクト スイートのテスト履歴を表示するための場所です。各ノードは 1 つのテスト実行に対応し

ます。ノードの左側のアイコンは、対応するテストの実行が成功したかどうかを表します。

テスト実行の終了後、TestComplete は自動的に最終結果のノードを追加します。つまり、テストが実行中の

ときは、結果は表示されません (テストの実行を一時停止した場合は、中間結果を表示することができま

す)。

ここまでに実行したテストは 1 つのみなので、Project Explorer には 1 つのログ ノードだけが表示されます。

デフォルトで、TestComplete は、自動的にそのログを開きます。テスト ログを手動で開くには、[Project Explorer] パネルで表示したログ ノードをダブルクリックします。

注意: デフォルトで、TestComplete はログ ファイルにすべてのテスト結果を格納します。テスト実

行ごとにログ ファイル数が増えて、メモリ消費量が増加します。メモリ使用量を減らすため

に、手動でログ ファイルを削除したり、保存するログ ファイルの数を制限することができま

す。

Web アプリケーションのテスト - チュートリアル

© 2019 SmartBear Software http://support.smartbear.com/

63

この例では、ログは次のようになります。

ログ ウィンドウは、1 度に 1 つのテスト実行の結果を表示します。ウィンドウの左側は、実行されたテストのツ

リー構造で、それぞれのテストのノードを選択してその結果を表示することができます。1 つのテストを実行

した場合、このツリーには 1 つのノードのみ含まれます。このノードのアイコンは、テストが成功したかどうか

を示します。

テスト ログには、エラー、警告、情報および他の種類のメッセージが含まれています。左のアイコンは、メッ

セージの種類を示します。メッセージ リストの上のチェック ボックスを使用することで、種類によってメッセー

ジを表示/非表示にすることができます。

それぞれのメッセージでは、アクションが行われた時間が Time 列に表示されます。

TestComplete は、メッセージとともに追加テキストや画像を出力することがあります。これらを確認するには、

ログ内でメッセージを選択し、メッセージ リストの下にある [Details] や [Picture] ペインを参照します。

[Picture] パネルでは、選択したテスト コマンドを実行する前に、期待される状態と実際のアプリケーションの

状態を示す画像が表示されます("Expected" (期待される) とはレコーディング中にそのテスト コマンドでキャ

プチャーされた画像を指し、"Actual" (実際) とはテストの実行中にキャプチャーされた画像を指します)。この画像を比較するには [View Comparison Results] をクリックして、違いを簡単に見ることができます。

そのため、テストでエラーが発生した場合、簡単に見つけることができます。詳細については、

TestComplete ヘルプの「Test Visualizer」を参照してください。

[Call Stack] ペインは、選択したメッセージをログに出力したテスト コールの階層を表示します。他のテスト

を呼び出さなかったテストを 1 つしか実行していないため、パネルは空です。

Web アプリケーションのテスト - チュートリアル

smartbear.com TestComplete by SmartBear Software

64

[Performance Counters] ペインは、テスト実行中にモニターしたパフォーマンス カウンターの値を表示し

ます。値はグラフ形式で表示されます。パフォーマンス カウンターを設定していなかったので、パネルは空

です。

ログにメッセージを出力したテスト操作を表示するには、ログ内でメッセージをダブルクリックします。すると、

エディターでキーワード テストが開き、該当する操作がハイライトされます。たとえば、ログの "The button was clicked with the left mouse button" メッセージをダブルクリックした場合、この動作が行われたキーワード テスト操作がハイライトされます。

テスト ログ パネル、ログへメッセージを出力、その結果の使用に関する詳細情報は、TestComplete ヘルプ

の「About Test Log」を参照してください。

注意: ここで説明したログは、TestComplete キーワード テストおよびスクリプト特有のログです。ほ

かの種類のテストは異なった構造のログになります。ログに関する詳細情報は、適当なプロ

ジェクト項目の解説を参照するか、そのログ ページ内をクリックして、F1 を押してください。

エラーの解決 テストが失敗することがあります。これにはいくつかの可能性があります。たとえば、開発者がアプリケーショ

ンの振る舞いを変更したり、ウィンドウとコントロールの認識属性の変更によりテスト エンジンが必要なオブ

ジェクトの検出に失敗したり、サードパーティのアプリケーションがテストするアプリケーションのウィンドウに

重なっているためにテスト エンジンがアクションのシミュレートに失敗するなどの可能性があります。

初めてのユーザーが直面するもっとも典型的なものは、テスト作成中と再生実行中でアプリケーションの状

態が異なることです。この問題を避けるには、テストを作成したときと同じ初期状態でテスト実行しているか

確認してください。たとえば、レコーディングする前にテストするアプリケーションが実行されていた場合、テ

ストを開始する前にアプリケーションを実行しておかなければなりません。また、レコーディングしたときにテ

Web アプリケーションのテスト - チュートリアル

© 2019 SmartBear Software http://support.smartbear.com/

65

ストする Web ページがブラウザーの 2 つめのタブで開かれていた場合、テストを実行するときも 2 つめのタ

ブで開かれるようにしなければなりません。

エラーの原因を探し、典型的な問題を解決するための情報は、TestComplete ヘルプの「Handling Playback Errors」を参照してください。

11. 複数のブラウザーでのテストの実行 レコーディングしたブラウザーでテストが正常に実行されることを確認したら、テストを変更して、別のブラウ

ザーで実行することができます (これは、クロスブラウザー テストと呼ばれます)。これにより、Web アプリ

ケーションがさまざまなブラウザーで正しく動作することを確認できます。

ここで、システムにインストールされているサポートされているすべてのブラウザでテストが実行されるように

テストを修正します。

1. Keyword Test エディターでテストを開きます。

2. Run Browser operation を右クリックして、コンテキスト メニューから [Make Browser Loop] を選択

します。

Web アプリケーションのテスト - チュートリアル

smartbear.com TestComplete by SmartBear Software

66

3. 操作パラメーターのダイアログで、[Iterate Through All Browsers] を選択し、[Finish] をクリック

します。

Run Browser operation が Browser Loop operation に変換されます。

4. Browser Loop operation の後のすべてのテスト操作を選択し、 をクリックしてこれらの操作をルー

プの内側に移動します。これらの操作はループの各反復で実行されます。

変更後のテストは次のようになります。

5. TestComplete のメイン メニューから [File] - [Save] を選択してテストを保存します。

TestComplete ヘルプの「Preparing Web Browsers」の説明に従って、ほかのブラウザーの準備と設定を行い

ます。

変更したテストを実行します。

TestComplete は、ブラウザーの数だけテスト操作を繰り返します。毎回、異なるブラウザーでテスト アクショ

ンが実行されます。

Web アプリケーションのテスト - チュートリアル

© 2019 SmartBear Software http://support.smartbear.com/

67

テスト ログには、使用したブラウザーに関する情報と、各ブラウザーで実行されたテスト操作の結果が含ま

れます。

TestComplete を使用したクロスブラウザー テストについての詳細は、TestComplete ヘルプの

「Cross-Browser Testing – Overview」を参照してください。

Android アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

68

Android アプリケーションのテスト TestCompleteは、物理的な Android デバイス、仮想マシン、エミュレーター上で動作する Android モバイル アプリケーションをサポートしています。

このチュートリアルでは、TestComplete で Android アプリケーションをテストする方法を説明します。これは、

自動テストの一般原則に精通しており、TestComplete IDE についての最低限の知識を持っていることを前

提としています。

初心者の方は、上記の自動テストの紹介を読むことをお勧めします。

モバイル テスト用のテスト環境の準備、モバイル デバイスへの接続、モバイル デバイスへのテストするアプ

リケーションの展開、簡単なテストの作成と実行、結果の分析を行います。このテストは、モバイル アプリ

ケーション上のユーザー アクションをエミュレートし、データを検証します。

テストするアプリケーションについて ここでは、Orders アプリケーションを使用します。

アプリケーションを入手するには、Web サイトの https://support.smartbear.com/downloads/testcomplete ペー

ジから TestComplete Samples インストール パッケージをダウンロードして実行してください。サンプルは、

<TestComplete Samples>\Mobile\Android\Orders\ フォルダーにインストールされまます。

このアプリケーションは、注文テーブルを管理します。新しい注文の追加、既存の注文の変更または削除、

既存の注文リストの確認を行うことができます。

Android アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

69

後述する手順に従って、このアプリケーションをモバイル デバイスへ展開します。

1. 事前準備 このセクションでは、TestComplete で Android アプリケーション用のテスト環境を準備するために、事前に行

わなければならないことを説明します。

注意: TestComplete は、物理モバイル デバイス (スマートフォンおよびタブレット)、エミュレー

ター、Android-x86 仮想マシンで実行するアプリケーションをテストすることができます。

サポートされているデバイスおよびサポートされていないデバイスのリストは、TestComplete のドキュメント を参照してください。

ここでは、物理デバイスでテストを行う場合の準備手順を示します。Android エミュレーター

と Android-x86 仮想マシンでは、必要な事前準備が異なります (TestComplete ヘルプの

「Preparing Devices, Emulators and Virtual Machines」を参照してください)。それ以外のテス

ト手順は、すべての環境で同じです。

Android アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

70

必要なソフトウェアのインストール

JDK と Android SDK のインストール

Android アプリケーションをテストするには、Java 開発キット (JDK) または Java 実行環境 (JRE) ver 6 - 8 と Android SDK をダウンロードし、テスト コンピューターにインストールする必要があります。

注意: • Java 実行環境 (JRE) または Java 開発キット (JDK) ver. 9 または 10 を使用した Android アプリケーションのテストは現在サポートされていません。

• Android SDK と JDK (または JRE) が既にインストールされている場合は、SDK Manager または次の 「Android Studio を入手するには」 および「SDK のみを入手するには」 セク

ションで記載されている sdkmanager ユーティリティを使用して、必要なプラットフォーム

とツールをインストールします。

1. 次の場所から JDK をダウンロードします。

http://java.com/en/download/windows_manual.jsp

テストのためには、JRE をインストールすれば十分ですが、JDK には JRE モジュールが含まれてい

るため、JDK をダウンロードしてインストールしてもかまいません。

2. ダウンロードしたインストーラーを実行して、ウィザードの指示に従います。

3. 次の場所から Android SDK をダウンロードします。

https://developer.android.com/sdk/index.html

Android Studio (デフォルトのダウンロード) の一部として、ダウンロードすることも、SDK のみをダウ

ンロードすることもできます。

Android Studio を入手するには

• Download ページで、Download Android Studio をクリックします。

• ダウンロードしたインストーラーを実行して、ウィザードの指示に従います。

• Studio をインストールした後、起動して、[Configure] - [SDK Manager] を選択します。

• SDK Manager で、次の項目が選択されていることを確認します。

o Android SDK Platform-tools

o Android SDK Build-tools

o Google USB Driver

Android アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

71

• OK をクリックして、必要に応じてパッケージをインストールします。ライセンス許諾契約に同

意して、インストールを続行します。

SDK のみを入手するには

• Download ページで、Get just the command line tools セクションまでスクロールし、

sdk-tools-windows-NNN.zip パッケージをダウンロードします。

• ファイルを解凍し、sdkmanager ユーティリティを見つけます。

• ユーティリティを使用して、次の項目をインストールします。

o Android SDK Platform-tools

o Android SDK Build-tools

o Google USB Driver

これをするには、次のコマンドライン パラメーターを付けてけユーティリティを実行します。

sdkmanager "platform-tools" "build-tools;NN.N.N" "extras;google;usb_driver"

NN は、ツールをインストールする API のバージョンです。

Android アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

72

デバイス USB ドライバーのインストール

前述のように、このチュートリアルでは物理デバイス上のテストを自動化します。デバイスと通信するため、

TestComplete コンピューターにデバイス USB ドライバーをインストールする必要があります。手順とドライ

バーのダウンロード リンクについては、Android ドキュメントの「OEM USB Drivers」を参照してください。

http://developer.android.com/tools/extras/oem-usb.html

TestComplete プラグインのインストールと設定 Android アプリケーションをテストするには、TestComplete Mobile モジュールのライセンスが必要です。この

モジュールには、必要なプラグインが含まれています。

モバイル モジュールがインストールされていない場合は、TestComplete インストール プログラムを変更モー

ドで実行し、インストール ウィザードでモバイル モジュールのインストールを選択します。これにより、必要な

プラグインがインストールされ有効になります。

TestComplete の設定

プラグインが有効になったら、TestComplete 設定で JDK と Android SDK のパスを指定する必要があります。

TestComplete インストール ウィザードは、自動的にコンピューター上でこれらのパスの検出を試みます。検

出できない場合は、TestComplete で手動でこれらのパスを指定する必要があります。

正しいパスが指定されているか確認するには:

1. TestComplete を起動します。

2. TestComplete のメイン メニューから、[Tools] - [Options] を選択します。[Options] ダイアログが表

示されます。

3. ダイアログの左ペインで [Engines] - [Mobile] - [Android] カテゴリを選択します。

4. [Path to Android SDK] エディット ボックスで、コンピューター上の Android SDK のインストール フォルダーを指定します。

5. [Path to Java Runtime] エディット ボックスで、コンピューター上の Java のインストール フォル

ダーを指定します。

Android アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

73

6. [Engines] - [Mobile] - [General] カテゴリを選択します。

7. [Automatically display Mobile Screen on OnScreen operation] オプションを有効にしま

す。

8. [Automatically display Mobile Screen when recording] オプションを有効にします。

9. [OK] をクリックしてダイアログを閉じ、変更を保存します。

モバイル デバイスの準備 デスクトップ コンピューターに必要なすべてのソフトウェアをインストールしたら、モバイル デバイスを準備す

る必要があります。

デバイスで Developer options を有効にする

物理 Android デバイスでテストを実行するには、デバイスで特定の Developer options を有効にする必要が

あります。

1. Developer options を表示します。[Settings] - [About phone/tablet] を選択し、[Build number] を 7 回タッチします。

注意: Developer options を表示する方法は、デバイスと Android バージョンにより異なります。詳細

は、デバイスのドキュメントを参照してください。

2. [Settings] - [Developer Options] を選択し、次のオプションを有効にします。

• [USB debugging] - デバイスと Android Debug Bridge (ADB) 間の通信を有効にします。

つまり、ADB と TestComplete がデバイスにアクセスできるようにします。

• [Stay awake] - デバッグ中にデバイスがスリープ モードにならないようにします。

注意: Xiaomi デバイスをお持ちの場合は、[Install via USB] オプションも有効にする必要がありま

す。 このオプションを有効にするには、アクティブな Mi アカウントが必要で、SIM カードが

デバイスにインストールされている必要があります。

3. 変更を保存します。

デバイスの接続

デバイスの電源を入れ、USB ケーブルを使用してコンピューターに接続します。Android Debug Bridge は接続を検出し、自動的にデバイスに接続します。

デバイスが接続されているかどうかの確認

モバイル デバイスが正常に接続されているかどうか確認するには:

• TestComplete ツールバーで [Show Mobile Screen] ボタンをクリックします。

Android アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

74

1 つのモバイル デバイスまたは仮想マシンが Android Debug Bridge に接続されている場合、[Mobile Screen] ウィンドウが表示されます。

複数のデバイスまたは仮想マシンが接続されている場合、[Show Mobile Screen] をクリックすると、接続され

ているデバイスのリストを含む [Select Current Device] ダイアログが表示されます。リストにデバイスまた

は仮想マシンがあることを確認します。リストでデバイスまたは仮想マシン選択し [OK] をクリックすると、その

デバイスまたは仮想マシンの [Mobile Screen] ウィンドウが表示されます。

TestComplete Android Agent のインストール

TestComplete Android Agent は、TestComplete でテストする Android アプリケーションとデータ交換を行う

ヘルパー アプリケーションです。モバイル デバイスにこの Agent をインストールする必要があります。

Agent をインストールするには:

• (まだ開いていない場合) [Mobile Screen] ウィンドウを開きます。

• ウィンドウ ツールバーにある [Install Android Agent] ボタンをクリックします。

アプリケーションの準備 TestComplete で Android アプリケーション用のオブジェクトを認識できるようにするには (つまり、"Open" アプリケーションにするには)、特別な方法でアプリケーションを準備する必要があります。

手動または自動でアプリケーションを準備する方法については、TestComplete ヘルプの「Instrumenting Android Applications」を参照してください。

このチュートリアルで使用する Orders アプリケーションは、すでにホワイトボックス テスト用に準備されていま

す。そのため、この準備は必要ありません。

これで、テストに必要な TestComplete、モバイル デバイス、アプリケーションの準備が整いました。ここから

は、テスト プロジェクトの作成方法、および簡単なテストの作成と再生実行方法について説明します。

2. テストの計画 サンプルの Orders アプリケーションは、注文のリストを管理します。ここでは、アプリケーションの Edit Order ページが正しく機能し、注文リストのデータが変更されるかどうかをテストします。この場合、次のように定義

する必要があります。

• テストの目的: このテストは、Edit Order ページで変更されたデータが保存され、その変更内容が注

文リストに反映されるかどうかをチェックします。

• テストの手順: テストでは、注文の詳細情報の変更、注文リスト内のデータの検証をシミュレートしま

す。簡単にするために、このテストでは 1 つの注文の 1 つのプロパティのみを "変更" します。

• チェックおよびテスト結果の記録: 注文への変更が正しく保存されたのであれば、注文リストにその

変更内容が反映されるべきです。これをチェックするために、今回のテストはリスト内のデータと期

Android アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

75

待される値を比較します。テストに特別な比較コマンドを追加します。このコマンドは、テスト ログに

比較結果を出力するので、これによって検証が成功したか失敗したかを確認することができます。

TestComplete を使用したテストの計画についての詳細は、TestComplete ヘルプの「Planning Tests」を参照

してください。

3. テストのレコーディングについて TestComplete では、2 通りの方法でテストを作成することができます。

• テストを手動で作成する - スクリプト オブジェクトまたはキーワード テスト コマンドを使用して、必要

なすべてのコマンドとアクションを入力します。このアプローチは、強力で柔軟なテストを作成する

必要があるとき、またはテストの作成で豊富な経験がある場合、役に立ちます。しかし、手動でテス

トを作成することは、多くの時間を必要とし、別の問題が生じる可能性があります。たとえば、使用す

るアプリケーション オブジェクトのクラスや名前を知っていなければなりません。

• テストを記録する - テストを簡単に作成することができます。一度、テストするアプリケーションに対

していくつかのアクションを実行すると、TestComplete は自動的にこれらのアクションを認識し、それ

らをスクリプトまたはキーワード テスト操作に変換します。テストをビジュアルに作成し、実行したアク

ションをスクリプトまたはキーワード テストに記録できます。これは、非常に役に立つアプローチであ

り、テストの作成であまり経験を必要としません。

このチュートリアルでは、TestComplete でテストを記録する方法を説明します。

レコーディングは次の 3 つの手順を含みます。

1. レコーディングを開始します。TestComplete のメイン メニューあるいは [Test Engine] ツールバーか

ら [Test] - [Record] - [Record Keyword Test] または、[Test] - [Record] - [Record Script] を選択してレコーディングを開始します。スタートページの [Record Test] をクリックして、レコー

ディングを開始することもできます。

さまざまな種類のテスト (キーワード テスト、スクリプト、低レベルのプロシージャー) をレコーディング

することができます。レコーディングの開始に使用するメニュー項目によって、メインのレコーディン

グするテスト (キーワード テストまたはスクリプト コード) が定義されます。そのほかのテストはそのレ

コーディングが開始された後でレコーディングされます。メインのレコーディングするテストには、こ

れらのテストを実行する特別なコマンドが含まれます。

TestComplete は、レコーディング モードに切り替わり、画面上に [Recording] ツールバーが表示さ

れます。デフォルトでは、ツールバーは折りたたまれ、レコーディング中に必要となるよく利用される

コマンドだけが表示されます。

Android アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

76

[Recording] ツールバーを展開するには、 矢印ボタンをクリックします。すると、すべてのボタンが

表示されます。

このツールバーを使用して、レコーディング中に追加の動作を実行したり、レコーディングの一時停

止や停止、レコーディングするテスト タイプ (キーワード テスト、スクリプト コード、低レベルのプロ

シージャー) を変更することができます。

2. レコーディング開始後、必要なテスト動作を実行します。テストするアプリケーションを起動し (必要

な場合)、コマンド ボタンをクリックしたり、メニュー項目を選択したり、テキストを入力するなどして使

用します。

3. すべてのテスト動作が終了した後、[Recording] ツールバーから [Stop] を選択し、レコーディン

グを停止します。

テストのレコーディングに関する詳細は、TestComplete ヘルプの「Recording in TestComplete」を参照してく

ださい。

最初のテストのレコーディング方法は、次の「4. テストのレコーディング開始」を参照してください。

4. テストのレコーディング開始 1. TestComplete でプロジェクトあるいはプロジェクト スイートを開いている場合は、閉じてください。こ

れをするには、[File] - [Close] を TestComplete のメインメニューから選択します。

2. TestComplete スタート ページに切り替えます。このページが隠れている場合、TestComplete の [Help] メニューから [Start Page] を選択します。

3. スタートページで、 [Record Test] をクリックします。TestComplete は、[Record Test] ウィザー

ドを表示します。

Android アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

77

4. ウィザードの最初のページで、プロジェクトの名前、場所、テスト タイプを指定します。

[Project name] テキスト ボックスに Orders と入力します。

[Location] テキスト ボックスはデフォルトの値のままにします。

テスト タイプを選択します。キーワードテストまたは JavaScript、Python スクリプト テストのいずれかを

作成することができます。

• キーワードテストは、マウスのクリック、テキストの入力など、ユーザーの操作を定義する一

連のキーワードです。視覚的にキーワード テストを作成します。スクリプトの知識は必要で

はありません。

• JavaScript と Python テストは、ユーザー アクションをシミュレートする命令を含むスクリプト関

数です。

このチュートリアルでは、キーワード テストの作成方法を示します。[Keyword] をクリックします。

5. [Next] をクリックして続行します。

ウィザードを使って、テストするアプリケーションをプロジェクトに追加するため、ウィザードで作業を続行しま

す。

5. テストするアプリケーションの定義 各 TestComplete プロジェクトには、テストするアプリケーションのリストが含まれます。これにより、プロジェク

トで使用するアプリケーションとそのテスト設定を追跡できます。

Android アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

78

プロジェクトにアプリケーションを追加する方法はいくつかあります。

• プロジェクトの作成中にこれを行うことができます。

• これは、後で Project Explorer でいつでも行うことができます。

• (モバイル アプリケーションではサポートされていません) テストのレコーディング中に自動的に追加

することができます。レコーダーはコマンドライン、エクスプローラーなどからのアプリケーションの開

始を検出することが可能です。

テストする Orders アプリケーションをプロジェクトに追加してみましょう。

1. ウィザードでは、テストするアプリケーションを選択できる 2 番目のページが表示されます。

2. Orders アプリケーションは、.apk ファイルとして出荷される Android アプリケーションなので、Mobile アプリケーションのカテゴリに該当します。

[Mobile] をクリックします。

3. [Device] ドロップダウン リストからテストをレコーディングするモバイル デバイスを選択します。デバ

イスは、上記の「事前準備」 で説明したように、TestComplete に接続する必要があります。

デバイスがリストにない場合、TestComplete がデバイスに接続できない問題を解決するには、

「Start troubleshooting」 リンクをクリックします。

Android アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

79

4. [Mobile application file] ボックスで、[...] ボタンをクリックします。表示される [Select Tested Application] ダイアログで、Android Orders パッケージ ファイルの場所を見つけます。以下のパス

にあります。

C:\Users\Public\Public Documents\TestComplete 14 Samples\Mobile\Android\Orders\Orders Application\bin\Orders.apk

注意: ファイル マネージャーによっては、Public Documents フォルダーを Documents として表示するものがあります。

5. [Deploy the application to a device automatically] チェックボックスをオンにして、選択したデ

バイスにアプリケーションをインストールします。

6. TestComplete は、アプリケーションがインストルメントされている (テスト用に準備されている場合) のみ、Android アプリケーションの内部オブジェクト、メソッド、プロパティにアクセスすることができます。

このチュートリアルで使用する Orders アプリケーションは、すでにインストルメントされています。

ただし、テスト用の準備されていないアプリケーションを使用すると、TestComplete はアプリケーショ

ンを自動的にインストルメントし、それを作成したオブジェクトに追加します。表示されるダイアログで

アプリケーションに署名するための証明書データを指定するだけです。

7. [Record] をクリックし、プロジェクトの作成を完了し、レコーディングを開始します。

6. テストのレコーディング

注意: レコーディング中に TestComplete ヘルプに切り替えないでください。レコーディング エン

ジンはすべてのユーザー アクションをトレースし、レコーディングします。つまり、レコー

ディングしたテストに、この "切り替え" をシミュレートするコマンドが含まれてしまいます。

操作手順は、レコーディングを開始する前に印刷しておくことができます。あるいは、2 つのモニターがある場合、TestComplete ヘルプをもう一方のモニターへ移動しておくことが

できます。

1. TestComplete は、テストのレコーディングを開始し、レコーディング モードに切り替わり、画面上に [Recording] ツールバーが表示されます。

2. TestComplete は、接続されたデバイスの画面で [Mobile Screen] ウィンドウを表示します。

TestComplete は、このウィンドウで実行されたモバイル アプリケーションのアクションのみをレコー

ディングし、デバイス、エミュレーター、または仮想マシンで実行されたアクションは無視します。

Android アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

80

3. TestComplete は自動的に Orders アプリケーションをモバイル デバイスに展開して、起動します。ア

プリケーションが起動しない場合は、[Recording] ツールバーの [Run App] メニューからアプリケー

ションを選択して手動で起動できます。

TestComplete は、特別なアプリケーションの起動テスト コマンドを使用して、アプリケーションの開

始を記録します。後でレコーディングしたテストを分析するときに、このコマンドを参照します。

4. モバイル デバイスに Android Orders アプリケーションがインストールされるのを待ってから、起動し

ます。[Mobile Screen] ウィンドウにアプリケーションの初期ウィンドウが表示されます。

5. [Mobile Screen] ウィンドウで Samuel Clemens の注文をクリックします。

Android アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

81

6. Orders アプリケーションの [Edit] ボタンをクリックします。[Edit Order] ページが表示されます。

7. 注文の詳細情報で顧客名を変更してみましょう。

Samuel Clemens を消去して、代わりに Mark Twain と入力します。デスクトップのキーボードを使用

して、[Mobile Screen] ウィンドウでテキストを入力します。

8. [Edit Order] ページをスクロール ダウンして、[OK] をクリックします。これにより、注文の変更が保存

され、注文リストに戻ります。

9. テストに比較コマンドを挿入します。この比較コマンドは、アプリケーションの顧客リストに変更した

名前 (Mark Twain) が表示されることを検証します。

Android アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

82

比較コマンドをチェックポイントと呼びます。TestComplete には、異なる種類のデータの検証に適し

たさまざまな種類のチェックポイントが用意されています (TestComplete ヘルプの「Checkpoints」を参照)。最もよく使用されるチェックポイントの 1 つは、プロパティ チェックポイントです。アプリケー

ションのコントロールのデータのチェックに使用されます。このチュートリアルでは、このプロパティ チェックポイントを使用します。

• [Recording] ツールバーの [Add Check] をクリックします。

[Checkpoint] ウィザードが呼び出されます。このウィザードを利用して、チェックポイントを

作成します。

• ウィザードの最初のページで、[Object property] をクリックします。

• ウィザードの次のページで、ターゲット アイコン ( ) をマウスの左ボタンでクリックし、そのま

まおしたままにします。

Android アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

83

ウィザードが最小化されるまで待ってから、そのアイコンを Orders アプリケーションの注文リ

ストにドラッグします。ドラッグしている間、マウス カーソル下のコントロールとウィンドウが赤

いフレームでハイライトされます。

[ターゲット アイコン] を Mark Twain の注文の上に移動し、その項目全体が赤いフレームで

ハイライトされたら、マウスのボタンを離します。

Android アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

84

• マウスのボタンを離すと、ウィザードに戻り、選択したオブジェクトの名前が [Object] ボック

スに表示され、その下にオブジェクトの画像が表示されます。

[Next] をクリックして続行します。

Android アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

85

• ウィザードの次のページには、チェックのための提案されたプロパティのリストが表示されま

す。

このリストには、テストするアプリケーションによって定義されたプロパティと TestComplete によって提供されるプロパティが含まれます。使用可能なすべてのプロパティを表示するには、

[More Properties] をクリックします。

Android アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

86

• テーブルで、ControlText プロパティが選択されていることを確認します。[Condition] カラムで [Equals (case-sensitive)] 条件が選択されていることを確認します。

[Finish] をクリックしてチェックポイント作成を完了します。レコーディングしたテストにチェッ

クポイント コマンドが追加されます。

10. [Recording] ツールバーの [Stop] を押して、レコーディングを停止します。レコーディングしたテ

スト コマンドが処理され、テストに保存されます。

7. レコーディングしたテストの解析 レコーディング終了後、TestComplete はレコーディングしたキーワード テストを編集用に開き、Keyword Test エディターにテストの内容を表示します。

Android アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

87

レコーディングしたテストは上記の画像に示すテストのようになります。実行環境によってはこれとは異なる

ことがあります。たとえば、不要なタッチ操作が含まれていることがあります。

このテストには、レコーディング中に Orders アプリケーション上で実行した動作に対応するコマンドが含まれ

ています。このテスト コマンドを operation と呼びます。

コマンドの下に [Test Visualizer] パネルがあり、TestComplete によってテストのレコーディング中に operation でキャプチャーされた画像が表示されます。

これらの画像は、レコーディングした operation を表し、operation が実行する動作を理解するのに役立ちま

す。TestComplete は、ユーザー アクション (タッチ、ドラッグ、テキスト入力など) に対応した operation の画

像のみをキャプチャーします。

エディター内でこの操作を選ぶと、Test Visualizer は自動的に適切な画像をハイライトするため、operation が実行される前にアプリケーションの状態を簡単に見ることができます。画像の作業についての詳細は、

TestComplete ヘルプの「Test Visualizer」を参照してください。

Android アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

88

このテストの最初の operation は、Select Device です。これは、テストに使用するモバイル デバイスを指定

します。以降のテスト操作はすべてこのデバイスに関するものです。

2 つめの operation は Run TestedApp です。これは、テストするアプリケーション (今回の場合、Orders アプリケーション) を、キーワード テストから起動するのに使用します。TestComplete は、自動的にアプリケー

ションを起動するときに、あるいは [Recording] ツールバーからアプリケーションが起動されたことを検出す

ると、自動的にこの操作を記録します。

その後、アプリケーションでのユーザー アクションをシミュレートする operation が続きます。これらの operation は、注文リストから項目を選択し、[Edit] ボタンをクリックして、テキスト フィールドの値を変更し、

[OK] ボタンをクリックします。

タッチ イベント、テキスト入力、その他のユーザー アクションのシミュレートについての詳細は、

TestComplete ヘルプの「Simulating User Actions Over Android Devices」を参照してください。

Android アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

89

最後に、テスト レコーディング中に追加した比較動作です。

TestComplete は、自動的に operation を使用したモバイル デバイスやプロセスに対応するグループにまと

めます。グループ化することで、テスト構造を簡単に理解できるようにし、さらにアプリケーションのオブジェ

クト階層の情報を提供しています。

ここでは、1 つのモバイル デバイスで 1 つのプロセスのユーザー アクションをレコーディングしました。その

ため、グループ ノードは 2 つです。"device" ノードには、同じデバイスで起動されたプロセスがまとめられま

す。"process" ノードには、プロセス ウィンドウおよびコントロールでシミュレートしたすべての動作が含まれて

います。

テストするプロセスやそのウィンドウ、およびコントロールの名前が、[Object Browser] パネルに表示される名

前と異なることにお気付きかもしれません。たとえば、[Object Browser] では、テストするプロセスは Process("smartbear.example.orders") という名前であるのに対し、テスト内では Process_example_orders と呼ばれます。また [Object Browser] で、[Edit] ボタンは Button("editButton") と呼ばれるのに対し、テストで

は Button_Edit という名前です。

これには、論理的な理由があります。デフォルトでは、TestComplete は、テスト レコーディング中に使用した

オブジェクトに対して自動的にカスタム ネームを生成し、使用します。カスタム ネームの生成および割り当

ては、名前のマッピングと呼ばれます。デフォルトの名前は理解しにくいことがあるので、TestComplete では

名前のマッピングを行っています。デフォルトの名前では、名前に対応するウィンドウやコントロールがどれ

なのかの判断が難しいことがあります。マッピングした名前はテストをよりわかりやすく、安定したものにしま

す。名前のマッピングに加えて、TestComplete はマップされたオブジェクトのイメージを Name Mapping リポジトリに格納します。これは、1 つまたは別のマップされたオブジェクトが一致するウィンドウまたはコントロー

ルを理解するのに役立ちます。名前のマッピングに関する詳細情報は、TestComplete ヘルプの「Name Mapping」を参照してください。

Android アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

90

8. テストの実行 TestComplete がユーザー アクションをどのようにシミュレートするか、ここで簡単なテストを実行してみましょ

う。

テストを実行する前に、テスト作成時と同じ初期状態でテストが開始されることを確認してください。たとえ

ば、モバイル アプリケーション用のテスト デザインでは、どのモバイル デバイスを使用するか選択する必要

があります。そのため、テストの開始時に [Select Device] キーワード操作があります。さらに、ほとんどの場

合、テストするアプリケーションをデバイスへ展開し起動する必要があります。ここでは、テストするアプリ

ケーションを展開し起動するため、Run TestedApp キーワード操作を使用し、テストするアプリケーション

の Deploy to the device on start パラメーターを有効にしています。

レコーディングしたテストを実行するためには、テスト エディターのツールバーにある [Run Test] をク

リックします。

TestComplete がテスト コマンドの実行を開始します。このチューリアルのテストでは、注文を表示し、顧客名

を Samuel Clemens から Mark Twain に変更して、名前が変更されたかどうか確認します。

注意: テスト実行中は、マウスを動かしたり、キーを押したりしないでください。TestComplete でシ

ミュレートされる動作を妨げたり、テスト実行が正しく行われない可能性があります。

テスト実行の終了後、TestComplete はテスト結果を表示します。次の手順では、これを解析します。

テスト実行に関するいくつかの注意:

• テストの実行中、TestComplete は、画面の右上にインジケーターを表示します。

このインジケーターは、シミュレートしたテスト動作に関する通知をするためのメッセージを表示しま

す。

• TestComplete は、テストが終了するまでこのテスト コマンドを実行します。[Test Engine] ツールバー

またはインジケーターの [Stop] を押すか、または TestComplete メイン メニューから [Test] - [Stop] を選択することで、テストの実行をいつでも停止することができます。

[Pause] をクリックすることでテスト実行を一時停止することができます。一時停止の間は、必要

な任意の動作を実行することが可能です。たとえば、テスト ログを表示したり、TestComplete の

Android アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

91

[Watch List] や [Locals] パネルあるいは [Evaluate] ダイアログを使用してテストの変数やオブジェ

クトを確認することが可能です (TestComplete ヘルプの「Debugging Tests」を参照)。

TestComplete のテスト実行、実行に影響するプロジェクト設定、テスト実施に関する詳細は、TestComplete ヘルプの「Running Tests」を参照してください。

9. テスト結果の解析 TestComplete は、テスト中に実行されたすべての操作の完全なログを保存します。テスト結果へのリンクは、

[Project Explorer] パネルの [Project Suite Logs] - [AndroidOrders Log] ノードに表示されます。こ

れは、プロジェクトおよびプロジェクト スイートのテスト履歴を調べるための主なワークスペースです。各ノー

ドは 1 つのテスト実行に対応します。ノードの左の画像は、対応するテストの実行が成功したかどうかを表し

ています。

テスト実行の終了後、TestComplete は自動的に最終結果のノードを追加します。つまり、テストが実行中の

ときは、結果は表示されません (テストの実行を一時停止した場合は、中間結果を表示することができま

す)。

ここまでに実行したテストは 1 つのみなので、Project Explorer には 1 つのログ ノードだけが表示されます。

デフォルトでは、[Workspace] パネルにこのノードの内容が自動的に表示されます。このログは、いつでも

確認することができます。ログを見るには、[Project Explorer] パネルで表示したい結果を右クリックし、コン

テキスト メニューから [Open] を選択します。

Android アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

92

注意: デフォルトで、TestComplete はログ ファイルにすべてのテスト結果を格納します。テスト実

行ごとにログ ファイル数が増えて、メモリ消費量が増加します。メモリ使用量を減らすため

に、手動でログ ファイルを削除したり、保存するログ ファイルの数を制限することができま

す。

この例では、ログは次のようになります。

ログ ウィンドウは、1 度に 1 つのテスト実行の結果を表示します。ウィンドウの左側は、実行されたテストのツ

リー構造で、それぞれのテストのノードを選択してその結果を表示することができます。たとえば、今回の例

のように 1 つのテストを実行した場合、このツリーには 1 つのノードのみ含まれます。このノードのアイコンは、

テストが成功したかどうかを示します。

テスト ログには、エラー、警告、情報および他の種類のメッセージが含まれています。左のアイコンは、メッ

セージの種類を示します。メッセージ リストの上のチェック ボックスを使用することで、種類によってメッセー

ジを表示/非表示にすることができます。

それぞれのメッセージでは、アクションが行われた時間が Time 列に表示されます。

TestComplete は、メッセージとともに追加テキストや画像を出力することがあります。これらを確認するには、

ログ内でメッセージを選択し、メッセージ リストの下にある [Details] や [Picture] ペインを参照します。

[Picture] パネルでは、選択したテスト コマンドを実行する前に、期待される状態と実際のアプリケーションの

状態を示す画像が表示されます"Expected" (期待される) とはレコーディング中にそのテスト コマンドでキャ

プチャーされた画像を指し、"Actual" (実際) とはテストの実行中にキャプチャーされた画像を指します)。テ

Android アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

93

スト ログには、画像を比較し、簡単に差異を見ることができる特別なボタンがあります。そのため、テストでエ

ラーが発生した場合、簡単に見つけることができます。詳細については、TestComplete ヘルプの「Test Visualizer」を参照してください。

[Call Stack] ペインは、選択したメッセージをログに出力したテスト コールの階層を表示します。

[Performance Counters] ペインは、テスト実行中にモニターしたパフォーマンス カウンターの値を表示し

ます。値はグラフ形式で表示されます。

ログにメッセージを出力したテスト操作を表示するには、ログ内でメッセージをダブルクリックします。すると、

エディターでキーワード テストが開き、該当する操作がハイライトされます。たとえば、ログの "The button was touched" メッセージをダブルクリックした場合、この動作が行われたキーワード テスト操作がハイライトさ

れます。

テスト ログ パネル、ログへメッセージを出力、その結果の使用に関する詳細情報は、TestComplete ヘルプ

の「About Test Log」を参照してください。

意: ここで説明したログは、TestComplete キーワード テストおよびスクリプト特有のログです。ほか

の種類のテストは異なった構造のログになります。ログに関する詳細情報は、適当なプロジェ

クト項目の解説を参照するか、そのログ ページ内をクリックして、F1 を押してください。

エラーの解決 テストが失敗することがあります。これにはいくつかの可能性があります。たとえば、開発者がアプリケーショ

ンの振る舞いを変更したり、ウィンドウとコントロールの認識属性の変更によりテスト エンジンが必要なオブ

ジェクトの検出に失敗したり、サードパーティのアプリケーションがテストするアプリケーションのウィンドウに

重なっているためにテスト エンジンがアクションのシミュレートに失敗するなどの可能性があります。

初めてのユーザーが直面するもっとも典型的なものは、テスト作成中と再生実行中でアプリケーションの状

態が異なることです。この問題を避けるには、テストを作成したときと同じ初期状態でテスト実行しているか

確認してください。たとえば、テストするアプリケーションがテストを記録する前に実行されていた場合、テス

トを開始する前に実行しておかなければなりません。また、テスト動作がアプリケーションの特定の画面上で

実行された場合は、テストを実行するときにその画面が開かれるようにする必要があります。

テストの実行時にエラーが発生した場合は、テストが正常に実行されるようにそれらを確認して修正します。

Android アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

94

エラーの原因を探し、典型的な問題を解決するための情報は、TestComplete ヘルプの「Handling Playback Errors」を参照してください。

10. 複数のデバイスでのテスト実行 1 つのモバイル デバイスでテストが正常に実行されることを確認したら、そのテストを変更して複数のモバイ

ル デバイスで実行することができます。そうすることで、モバイル アプリケーションが異なる種類のモバイル デバイス (スマートフォン、タブレットなど) で正しく動作することを確認できます。

テストを変更して、異なるモバイル デバイス上で実行できるようにする必要があります。

• Keyword Test エディターでテストを開きます。

• [Operations] パネルの [Mobile] カテゴリから [Test Area] へ Device Loop operation をドラッグし、

テストの始め (ほかのすべての operation の上) にドロップします。これにより、この operation がテスト

に追加されます。

操作パラメーターのダイアログで、[Iterate Through All Connected Devices] を選択し、[Finish] をクリックしま

す。

• テストから Select Device operation を削除/無効にします。Device Loop operation によりモバイル デバイスの切り替えが行われるため、Select Device operation は不要です。

• Device Loop operation の後のすべてのテスト操作を選択し、 をクリックしてこれらの操作をルー

プの内側に移動します。これらの操作はループの各反復で実行されます。

Android アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

95

変更後のテストは次のようになります。

• TestComplete のメイン メニューから [File] - [Save] を選択してテストを保存します。

「事前準備」の「モバイル デバイスの準備」で説明したようにほかのモバイル デバイスの準備と接続を行い

ます。

変更したテストを実行します。

TestComplete は、ブラウザーの数だけテスト操作を繰り返します。毎回、異なるモバイル デバイスでテスト アクションが実行されます。

テスト ログには、使用したモバイル デバイスに関する情報と、各デバイスで実行されたテスト操作の結果が

含まれます。

iOS アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

96

iOS アプリケーションのテスト このチュートリアルでは、TestComplete で iOS アプリケーションをテストする方法を説明します。これは、自

動テストの一般原則に精通しており、TestComplete IDE についての最低限の知識を持っていることを前提

としています。

初心者の方は、上記の自動テストの紹介を読むことをお勧めします。

モバイル テスト用のテスト環境の準備、モバイル デバイスへの接続、モバイル デバイスへのテストするアプ

リケーションの展開、簡単なテストの作成と実行、結果の分析を行います。このテストは、モバイル アプリ

ケーション上のユーザー アクションをエミュレートし、データを検証します。

システム要件

このチュートリアルを実行するには、次のものが必要です。

• 次のソフトウェアを搭載した Windows コンピューター:

• Mobile モジュール用の有効なライセンスを持つ TestComplete。

• Apple iTunes。TestComplete が iOS デバイスに接続するために使用する USB ドライバが含

まれているため iTunes が必要です。最新バージョンの iTunes を使用することを推奨しま

す。

• iOS 10.0–10.3.2、11.0–11.4、12.0–12.1 を実行するサポートされているデバイス。

• サンプル Orders アプリケーションをコンパイルし、証明書ファイルを取得するための、Xcode、iOS SDK、および iOS 開発ライセンスを備えた Mac コンピューター。

テストするアプリケーションについて

この説明では、Orders アプリケーションの iOS バージョンを使用します。

アプリケーションを入手するには、https://support.smartbear.com/downloads/testcomplete/samples/ ページか

ら TestComplete Samples インストール パッケージをダウンロードし実行してください。サンプルは、

<TestComplete Samples>\Mobile\iOS\Orders\ フォルダーにインストールされます。

このアプリケーションは、注文テーブルを管理します。新しい注文の追加、既存の注文の変更または削除、

既存の注文リストの確認を行うことができます。

iOS アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

97

このチュートリアルで説明する手順に従って、アプリケーションを Mac 上でコンパイルし、モバイル デバイス

へ展開します。

1. iOS デバイスの準備 TestComplete で iOS アプリケーションをテストする前に、次の操作を行う必要があります。

• アプリケーション プロビジョニング プロファイルへのテスト デバイスの追加

• TestComplete へのデバイスの接続

アプリケーション プロビジョニング プロファイルへのテスト デバイスの追加 iOS Developer Program に登録されている場合は、テストする iOS アプリケーションのプロビジョニング プロ

ファイルにテスト デバイスを追加して、デバイスにアプリケーションをインストールできるようにする必要があり

ます。テスト デバイスは、Apple の Member Center Web サイトで登録できます。

iOS アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

98

• デバイス ID (UDID) を取得します。iTunes を起動し、iOS デバイスを選択して、[Summary] タブで [Serial Number] をクリックします。シリアル番号の代わりに UDID が表示されます。

• Member Center の Devices セクションを開きます。

http://developer.apple.com/ios/manage/devices/index.action

• 右上にある ボタンをクリックします。

• [Register Device] ラジオ ボタンをオンにします。

• デバイス名と UDID を入力します。

• [Continue]、そして [Register] をクリックします。

これで、テスト用にデバイスが登録されました。次に、アプリケーションのプロビジョニング プロファイルにデ

バイスを追加します。

• 左側のメニューから [Provisioning Profiles] を選択します。

• デバイスを追加するプロファイルを選択し、[Edit] をクリックします。

• [Devices] リストで、アプリケーションのテストに使用するデバイスをすべて選択します。

iOS アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

99

• [Generate] をクリックして変更を保存します。

iOS アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

100

TestComplete へのデバイスの接続 USB ケーブルを使用して iOS デバイスを TestComplete コンピューターに接続します。

このコンピューターを信頼するかどうか確認を求めるダイアログが表示されたら、[Trust] をタップします。

また、デバイスの次の設定を変更することを推奨します。

• [Settings] - [General] を選択します。

• [Auto-Lock] をタップします。

• [Never] を選択します。

• [Settings] - [Wallpapers&Brightness] を選択します。

• 明るさを最小値に設定します。

これにより、テストの実行中に画面がロックされるのを防ぎ、接続されているデバイスのバッテリーの使用率

を軽減します。

TestComplete が接続されているデバイスを "認識" できるように、Object Browser に切り替えます。Mobile オブジェクト以下に Device("your_device_name") オブジェクトが表示されていることを確認します。

次のステップでは、このテストで使用するサンプルの Orders アプリケーションを準備します。

2. iOS Certificate (証明書) ファイルの準備 TestComplete で iOS アプリケーションをテストするには、TestComplete ライブラリを使用して準備する必要

があります。TestComplete で iOS アプリケーションをインストルメントする場合、Mac 上のユーザー証明書

ファイルが必要になります。ユーザー証明書ファイルは、アプリケーションが特定の開発者により作成された

ものであり、特定のデバイスで実行できることを証明します。ここで説明する操作は一度だけ行います。この

操作を行うと、ユーザー証明書ファイルを使用して、すべての iOS アプリケーションをインストルメントできる

ようになります。

Xcode で直接アプリケーションをインストルメントすることができます。これを行うには、TestComplete 静的ラ

イブラリをプロジェクトに追加し、アプリケーションをビルドします。

iOS アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

101

1. Apple WWDR 証明書の取得

Apple Worldwide Developer Relations (WWDR) 証明書は、開発証明書を Apple と関連付けます。次の場

所からダウンロードできます。

http://developer.apple.com/certificationauthority/AppleWWDRCA.cer

2. 証明書ファイルの取得

iOS アプリケーションをインストルメントするには、いくつかの証明書ファイルも必要です。

• 開発者証明書。

• PEM ファイル。

• プロビジョニング プロファイル。

これらの 3 つのファイルを入手するには、TestComplete に同梱される Certificate Exporter ユーティリティ

を使用することができます。このユーティリティは、次の場所にあります。

<TestComplete>/Bin/Extension/iOS/CertificateExporter.zip

注意: これらのファイルを手動で入手する方法については、 TestComplete ヘルプの「Getting Certificate Files」 トピックを参照してください。

ユーティリティを使用してファイルを入手するには:

1. Mac コンピューター上でアーカイブを解凍します。

Windows マシン上でユーティリティを解凍しないでください。ユーティリティが破損します。

2. CertificateExporter.app を実行します。利用可能なプロビジョニング プロファイルのリストが表示され

ます。

3. リストからプロファイルを選択します。ユーティリティは、割り当てられた証明書を以下のリストに表示

します。

4. エクスポートする証明書を選択し、[Export] をクリックして目的のディレクトリを指定します。

5. ユーティリティがキーチェーンへアクセスを許可するダイアログを表示したら、[Allow] をクリックしま

す。

iOS アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

102

3. テストの計画 サンプルの iOS Orders アプリケーションは、注文のリストを管理します。ここでは、アプリケーションの Edit Order ページが正しく機能し、注文リストのデータが変更されるかどうかをテストします。この場合、次のよう

に指定する必要があります:

• テストの目的: このテストは、Edit Order ページで変更されたデータが保存され、その変更内容が注

文リストに反映されるかどうかをチェックします。

• テストの手順: テストでは、注文の詳細情報の変更、注文リスト内のデータの検証をシミュレートしま

す。簡単にするために、このテストでは 1 つの注文の 1 つのプロパティのみを "変更" します。

• チェックおよびテスト結果の記録: 注文への変更が正しく保存されたのであれば、注文リストにその

変更内容が反映されるべきです。これをチェックするために、今回のテストはリスト内のデータと期

待される値を比較します。テストに特別な比較コマンドを追加します。このコマンドは、テスト ログに

比較結果を出力するので、これによって検証が成功したか失敗したかを確認することができます。

TestComplete を使用したテストの計画についての詳細は、TestComplete ヘルプの「Planning Tests」を参照

してください。

4. レコーディングについて TestComplete では、2 通りの方法でテストを作成することができます。

iOS アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

103

• テストを手動で作成する - スクリプト オブジェクトまたはキーワード テスト コマンドを使用して、必要

なすべてのコマンドとアクションを入力します。このアプローチは、強力で柔軟なテストを作成する

必要があるとき、またはテストの作成で豊富な経験がある場合、役に立ちます。しかし、手動でテス

トを作成することは、多くの時間を必要とし、別の問題が生じる可能性があります。たとえば、使用す

るアプリケーション オブジェクトのクラスや名前を知っていなければなりません。

• テストを記録する - テストを簡単に作成することができます。一度、テストするアプリケーションに対

していくつかのアクションを実行すると、TestComplete は自動的にこれらのアクションを認識し、それ

らをスクリプトまたはキーワード テスト操作に変換します。テストをビジュアルに作成し、実行したアク

ションをスクリプトまたはキーワード テストに記録できます。これは、非常に役に立つアプローチであ

り、テストの作成であまり経験を必要としません。

このチュートリアルでは、TestComplete でテストを記録する方法を説明します。

レコーディングは次の 3 つの手順を含みます。

1. レコーディングを開始します。TestComplete のメイン メニューあるいは [Test Engine] ツールバーか

ら [Test] - [Record] - [Record Keyword Test] または、[Test] - [Record] - [Record Script] を選択してレコーディングを開始します。スタートページの [Record Test] をクリックして、レコー

ディングを開始することもできます。

さまざまな種類のテスト (キーワード テスト、スクリプト、低レベルのプロシージャー) をレコーディング

することができます。レコーディングの開始に使用するメニュー項目によって、メインのレコーディン

グするテスト (キーワード テストまたはスクリプト コード) が定義されます。そのほかのテストはそのレ

コーディングが開始された後でレコーディングされます。メインのレコーディングするテストには、こ

れらのテストを実行する特別なコマンドが含まれます。

TestComplete は、レコーディング モードに切り替わり、画面上に [Recording] ツールバーが表示さ

れます。デフォルトでは、ツールバーは折りたたまれ、レコーディング中に必要となるよく利用される

コマンドだけが表示されます。

[Recording] ツールバーを展開するには、 矢印ボタンをクリックします。すると、すべてのボタンが

表示されます。

iOS アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

104

このツールバーを使用して、レコーディング中に追加の動作を実行したり、レコーディングの一時停

止や停止、レコーディングするテスト タイプ (キーワード テスト、スクリプト コード、低レベルのプロ

シージャー) を変更することができます。

2. レコーディング開始後、必要なテスト動作を実行します。テストするアプリケーションを起動し (必要

な場合)、コマンド ボタンをクリックしたり、メニュー項目を選択したり、テキストを入力するなどして使

用します。

3. すべてのテスト動作が終了した後、[Recording] ツールバーから [Stop] を選択し、レコーディン

グを停止します。

テストのレコーディングに関する詳細は、TestComplete ヘルプの「Recording in TestComplete」を参照してく

ださい。

5. テストのレコーディング開始 1. TestComplete でプロジェクトあるいはプロジェクト スイートを開いている場合は、閉じてください。こ

れをするには、[File] - [Close] を TestComplete のメインメニューから選択します。

2. TestComplete スタート ページに切り替えます。このページが隠れている場合、TestComplete の [Help] メニューから [Start Page] を選択します。

3. スタートページで、 [Record Test] をクリックします。TestComplete は、[Record Test] ウィザー

ドを表示します。

4. ウィザードの最初のページで、プロジェクトの名前、場所、テスト タイプを指定します。

iOS アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

105

[Project name] テキスト ボックスに Orders と入力します。

[Location] テキスト ボックスはデフォルトの値のままにします。

テスト タイプを選択します。キーワードテストまたは JavaScript、Python スクリプト テストのいずれかを

作成することができます。

• キーワードテストは、マウスのクリック、テキストの入力など、ユーザーの操作を定義する一

連のキーワードです。視覚的にキーワード テストを作成します。スクリプトの知識は必要で

はありません。

• JavaScript と Python テストは、ユーザー アクションをシミュレートする命令を含むスクリプト関

数です。

このチュートリアルでは、キーワード テストの作成方法を示します。[Keyword] をクリックします。

5. [Next] をクリックして続行します。

ウィザードを使って、テストするアプリケーションをプロジェクトに追加するため、ウィザードで作業を

続行します。

6. テストするアプリケーションの定義 各 TestComplete プロジェクトには、テストするアプリケーションのリストが含まれます。これにより、プロジェク

トで使用するアプリケーションとそのテスト設定を追跡できます。

プロジェクトにアプリケーションを追加する方法はいくつかあります。

• プロジェクトの作成中にこれを行うことができます。

• これは、後で Project Explorer でいつでも行うことができます。

• (モバイル アプリケーションではサポートされていません) テストのレコーディング中に自動的に追加

することができます。レコーダーはコマンドライン、エクスプローラーなどからのアプリケーションの開

始を検出することが可能です。

テストする Orders アプリケーションをプロジェクトに追加します。

iOS アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

106

1. ウィザードでは、テストするアプリケーションを選択できる 2 番目のページが表示されます。

2. Orders アプリケーションは、.ipa ファイルとして出荷される iOS アプリケーションなので、Mobile アプ

リケーションのカテゴリに該当します。

[Mobile] をクリックします。

3. [Device] ドロップダウン リストからテストをレコーディングするモバイル デバイスを選択します。デバ

イスは、上記で説明したように、TestComplete に接続する必要があります。

デバイスがリストにない場合、TestComplete がデバイスに接続できない問題を解決するには、

「Start troubleshooting」 リンクをクリックします。

4. [Mobile application file] ボックスで、[...] ボタンをクリックします。表示される [Select Tested Application] ダイアログで、Orders.ipa ファイルの場所を見つけます。以下のパスにあります。

C:\Users\Public\Public Documents\TestComplete 14 Samples\Mobile\iOS\Orders\Orders Application\bin\Orders.ipa

注意: ファイル マネージャーによっては、Public Documents フォルダーを Documents として表示するものがあります。

5. [Deploy the application to a device automatically] チェックボックスをオンにして、選択したデ

バイスにアプリケーションをインストールします。

6. TestComplete は、アプリケーションがインストルメントされている (テスト用に準備されている場合) のみ、Android アプリケーションの内部オブジェクト、メソッド、プロパティにアクセスすることができま

す。

iOS アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

107

アプリケーションがインストルメントされていない場合、TestComplete はアプリケーションを自動的に

インストルメントし、それを作成したオブジェクトに追加します。アプリケーションに署名するための証

明書データを保持するファイルを指定するだけです。これらは、上記のステップ「2. iOS Certificate (証明書) ファイルの準備」で入手した証明書ファイルです。

7. [Record] をクリックし、プロジェクトの作成を完了し、レコーディングを開始します。

7. テストのレコーディング

テストのレコーディング中に TestComplete ヘルプに切り替えないでください。レコーディング エン

ジンはすべてのユーザー アクションをトレースし、レコーディングするため、レコーディングしたテ

ストにこの動作が含まれてしまいます。

操作手順は、レコーディングを開始する前に印刷しておくことができます。あるいは、モニターが 2 つある場合は、TestComplete ヘルプをもう一方のモニターへ移動しておくことができます。

1. TestComplete は、テストのレコーディングを開始し、レコーディング モードに切り替わり、画面上に [Recording] ツールバーが表示されます。

2. TestComplete は、接続されたデバイスの画面で [Mobile Screen] ウィンドウを表示します。

TestComplete は、このウィンドウで実行されたモバイル アプリケーションのアクションのみをレコー

ディングし、デバイス、エミュレーター、または仮想マシンで実行されたアクションは無視します。

3. TestComplete は自動的に Orders アプリケーションをモバイル デバイスに展開して、起動します。ア

プリケーションが起動しない場合は、[Recording] ツールバーの [Run App] メニューからアプリケー

ションを選択して手動で起動できます。

TestComplete は、特別なアプリケーションの起動テスト コマンドを使用して、アプリケーションの開

始を記録します。後でレコーディングしたテストを分析するときに、このコマンドを参照します。

iOS アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

108

4. モバイル デバイスに iOS Orders アプリケーションがインストールされるのを待ってから、起動します。

[Mobile Screen] ウィンドウにアプリケーションの初期ウィンドウが表示されます。

iOS アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

109

5. [Mobile Screen] ウィンドウで [Edit] ボタンをクリックします。

Orders アプリケーションが編集モードに切り替わります。

iOS アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

110

6. リストの 2 つめにある Samuel Clemens の注文をクリックします。[Edit Order] パネルが表示されます。

7. 注文の詳細情報で顧客名を変更してみましょう。

[CUSTOMER INFO] セクションで、Samuel Clemens を消去してして、代わりに Mark Twain と入力

し、[Enter] をクリックします。デスクトップのキーボードを使用して、[Mobile Screen] ウィンドウでテキ

ストを入力します。

8. [Edit Order] パネルの [Save] ボタンをクリックし、変更を確定します。

9. iPhone デバイス (一度に 1 つのパネルしか表示されない) でレコーディングする場合は、ナビゲー

ション バーにある Orders ボタンをタッチすると、[Orders List] パネルが表示されます。

iPad デバイスは両方のパネルを同時に表示できるため、このアクションは必要ありません。

iOS アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

111

10. [Done] ボタンをクリックして編集モードを終了します。

注文リストが通常モードに戻ります。

11. テストに比較コマンドを挿入します。この比較コマンドは、アプリケーションの顧客リストに変更した

名前 (Mark Twain) が表示されることを検証します。

比較コマンドをチェックポイントと呼びます。TestComplete には、異なる種類のデータの検証に適し

たさまざまな種類のチェックポイントが用意されています (TestComplete ヘルプの「Checkpoints」を参照)。最もよく使用されるチェックポイントの 1 つは、プロパティ チェックポイントです。アプリケー

ションのコントロールのデータのチェックに使用されます。このチュートリアルでは、このプロパティ チェックポイントを使用します。

iOS アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

112

• [Recording] ツールバーの [Add Check] をクリックします。

[Checkpoint] ウィザードが呼び出されます。このウィザードを利用して、チェックポイントを

作成します。

• ウィザードの最初のページで、[Object property] をクリックします。

• ターゲット アイコン ( ) をマウスの左ボタンでクリックし、そのまま押したままにします。

ウィザードが最小化されるまで待ってから、そのアイコンを Orders アプリケーションの注文リ

ストにドラッグします。ドラッグしている間、マウス カーソル下のコントロールとウィンドウが赤

いフレームでハイライトされます。

iOS アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

113

[ターゲット アイコン] を注文リストの上に移動し、リスト全体が赤いフレームでハイライトされ

たら、マウスのボタンを離します。

iOS アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

114

• マウスのボタンを離すと、ウィザードに戻り、選択したオブジェクトの名前が [Object] ボック

スに表示され、その下にオブジェクトの画像が表示されます。

[Next] をクリックして続行します。

iOS アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

115

• ウィザードの次のページには、チェックのための提案されたプロパティのリストが表示されま

す。

このリストには、テストするアプリケーションによって定義されたプロパティと TestComplete によって提供されるプロパティが含まれます。利用可能なすべてのプロパティを表示するには、

[More Properties] をクリックします。

• デフォルトで選択されているプロパティの [Selected] チェックボックスをオフにします。

データの検証には、 親の TableView オブジェクトの wItem プロパティを使用します。こ

のプロパティは、選択したテーブル ビューの指定した項目のテキストにアクセスできるように

します。

テーブル内の wItem プロパティを見つけ、[PAR] ボタンをクリックします。1 を [Index] カラ

ムに、0 を [Section] カラムに入力します。ウィザードは、確認するデータを取得します。

wItem プロパティの [Selected] チェックボックスを選択します。

iOS アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

116

• [Finish] をクリックしてチェックポイント作成を完了します。レコーディングしたテストにチェッ

クポイント コマンドが追加されます。

12. [Recording] ツールバーの [Stop] を押して、レコーディングを停止します。 レコーディングしたテ

スト コマンドが処理され、キーワード テストに保存されます。

8. レコーディングしたテストの解析 レコーディング終了後、TestComplete はレコーディングしたキーワード テストを編集用に開き、Keyword Test エディターにテストの内容を表示します。

iOS アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

117

レコーディングしたテストは上記の画像に示すテストのようになります。実行環境によってはこれとは異なる

ことがあります。たとえば、不要なタッチ操作が含まれていることがあります。

このテストには、レコーディング中に Orders アプリケーション上で実行した動作に対応するコマンドが含まれ

ています。このテスト コマンドを operation と呼びます。

コマンドの下に [Test Visualizer] パネルがあり、TestComplete によってテストのレコーディング中に operation でキャプチャーされた画像が表示されます。

これらの画像は、レコーディングした operation を表し、operation が実行する動作を理解するのに役立ちま

す。TestComplete は、ユーザー アクション (タッチ、ドラッグ、テキスト入力など) に対応した operation の画

像のみをキャプチャーします。

エディター内でこの操作を選ぶと、Test Visualizer は自動的に適切な画像をハイライトするため、

operation が実行される前にアプリケーションの状態を簡単に見ることができます。画像の作業についての

詳細は、TestComplete ヘルプの 「Test Visualizer」 セクションを参照してください。

iOS アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

118

このテストの最初の operation は、Select Device です。これは、テストに使用するモバイル デバイスを指定し

ます。以降のテスト操作はすべてこのデバイスに関するものです。

2 つめの operation は Run TestedApp です。これは、テストするアプリケーション (今回の場合、Orders アプリケーション) を、キーワード テストから起動するのに使用します。TestComplete は、自動的にアプリケー

ションを起動するときに、あるいは [Recording] ツールバーからアプリケーションが起動されたことを検出す

ると、自動的にこの操作を記録します。

その後、アプリケーションでのユーザー アクションをシミュレートする operation が続きます。これらの operation は、[Edit] ボタンをクリックし、注文リストから項目を選択し、テキスト フィールドの値を変更し、変更

を保存して [Done] ボタンをクリックします。

iOS アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

119

タッチ イベント、テキスト入力、その他のユーザー アクションのシミュレートについての詳細は、

TestComplete ヘルプの「Simulating User Actions on iOS Applications」および「Working With iOS Controls」を参照してください。

最後に、テスト レコーディング中に追加した比較動作です。

TestComplete は、自動的に operation を使用したモバイル デバイスやプロセスに対応するグループにまと

めます。グループ化することで、テスト構造を簡単に理解できるようにし、さらにアプリケーションのオブジェ

クト階層の情報を提供しています。

ここでは、1 つのモバイル デバイスで 1 つのプロセスのユーザー アクションをレコーディングしました。その

ため、グループ ノードは 2 つです。"device" ノードには、同じデバイスで起動されたプロセスがまとめられま

す。"process" ノードには、プロセス ウィンドウおよびコントロールでシミュレートしたすべての動作が含まれて

います。

テストするプロセスやそのウィンドウ、およびコントロールの名前が、[Object Browser] パネルに表示される名

前と異なることにお気付きかもしれません。たとえば、Object Browser では、テストするプロセスは Process("Orders") という名前であるのに対し、テスト内では ProcessOrders と呼ばれます。また Object Browser で、ナビゲーション バーは NavigationBar(1) と呼ばれるのに対し、テストでは navigationbar1 という名前です。

これには、論理的な理由があります。デフォルトでは、TestComplete は、テスト レコーディング中に使用した

オブジェクトに対して自動的にカスタム ネームを生成し、使用します。カスタム ネームの生成および割り当

ては、名前のマッピングと呼ばれます。デフォルトの名前は理解しにくいことがあるので、TestComplete では

iOS アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

120

名前のマッピングを行っています。デフォルトの名前では、名前に対応するウィンドウやコントロールがどれ

なのかの判断が難しいことがあります。マッピングした名前はテストをよりわかりやすく、安定したものにしま

す。名前のマッピングに加えて、TestComplete はマップされたオブジェクトのイメージを Name Mapping リポジトリに格納します。これは、1 つまたは別のマップされたオブジェクトが一致するウィンドウまたはコントロー

ルを理解するのに役立ちます。名前のマッピングに関する詳細情報は、TestComplete ヘルプの「Name Mapping」を参照してください。

9. レコーディングしたテストの実行 テストを実行してその動作を検証してみましょう。

テストの実行 テストを実行するには、テスト エディターのツールバーにある [Run Test] をクリックします。

TestComplete は、デバイスで Orders アプリケーションを起動して、テスト動作を実行します。Samuel Clemens の注文を開き、顧客名を Mark Twain に変更します。

テスト結果 テストの終了後、テスト結果が表示され、テストが成功したか、失敗したかを確認できます。テスト結果につ

いては、このチュートリアルの次のステップで詳しく説明します。

テスト実行に関する注意 • 重要: テスト実行中は、テスト動作の妨げとならないように、デバイスの画面に触れないでください。

• テスト実行中、コンピューター画面の右上隅にある TestComplete インジケーターは、実行されたテ

スト操作に関する情報を表示します。

このインジケーターは、シミュレートしたテスト動作に関する通知をするためのメッセージを表示しま

す。

iOS アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

121

• [Test Engine] ツールバーまたはインジケーターの [Stop] を押すか、または TestComplete メイン メニューから [Test] - [Stop] を選択することで、テストの実行をいつでも停止することができます。

インジケーターの [Pause] をクリックすることでテスト実行を一時停止することができます。 一時

停止の間は、必要な任意の動作を実行することが可能です。たとえば、テスト ログを表示したり、

TestComplete の [Watch List] や [Locals] パネルあるいは [Evaluate] ダイアログを使用してテスト

の変数やオブジェクトを確認することが可能です (TestComplete ヘルプの「Debugging Tests」を参

照)。

詳細に関する情報は、TestComplete ヘルプの 「Running Tests」 を参照してください。

10. テスト結果の解析 テスト終了後、すべてのテスト操作の結果を含むテスト ログが表示されます。

この例では、ログは次のようになります。

ログには、アクション、イベント、チェックポイントなどに関するさまざまなメッセージが含まれています。メッ

セージ リストの上のツールバーを使用してメッセージをフィルタリングできます。ログ メッセージをダブルク

リックすると、そのメッセージを出力したテスト操作が表示されます。これは、エラーの原因となった操作を把

握するのに便利です。

[Picture] パネルでは、選択したテスト コマンドを実行する前に、期待される状態と実際のアプリケーション

の状態を示す画像が表示されます("期待される" とはレコーディング中にそのテスト コマンドでキャプチャー

された画像を指し、"実際" とはテストの実行中にキャプチャーされた画像を指します)。[Actual Image] ツー

iOS アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

122

ルバーには、2 つの画像の差異をハイライトする特別なボタンがあります。これらの画像は、テスト実行中の

アプリケーションの動作を理解し、差異を確認して、エラーを迅速に見つけるのに役立ちます。画像のキャ

プチャーについての詳細は、TestComplete ヘルプの「Test Visualizer」を参照してください。

[Details] ペインには、実行された操作の詳細が表示されます。たとえば、プロパティ チェックポイントの [Details] には、チェック タイプ (equals、contains、matches a regular expression など) およびその他の詳細が

含まれます。

ログの下には、このほかにも 2 つのペインがあります。

• Call Stack は、互いを呼び出すテストのデバッグに役立ちます。現在の操作またはエラーのテスト コールのシーケンスが分かります。

• Performance Counters は、テスト実行中のローカルまたはリモート コンピューターに関する情報 (CPU 負荷、メモリ使用など) を表示します。このチュートリアルでは使用しませんが、クライアント サーバー型の iOS アプリケーションでは、パフォーマンス カウンターを利用してサーバーに関する

情報を追跡できます。

すべてのログが Project Explorer の [Project Suite Logs] - [ProjectName Logs] にあるため、以前のロ

グを見ることもできます。

注意: デフォルトで、TestComplete はログ ファイルにすべてのテスト結果を格納します。テスト実

行ごとにログ ファイル数が増えて、メモリ消費量が増加します。メモリ使用量を減らすため

に、手動でログ ファイルを削除したり、保存するログ ファイルの数を制限することができま

す。

iOS アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

123

エラーの解決 テストが失敗することがあります。これにはいくつかの可能性があります。たとえば、開発者がアプリケーショ

ンの振る舞いを変更したり、ウィンドウとコントロールの認識属性の変更によりテスト エンジンが必要なオブ

ジェクトの検出に失敗したり、サードパーティのアプリケーションがテストするアプリケーションのウィンドウに

重なっているためにテスト エンジンがアクションのシミュレートに失敗するなどの可能性があります。

初めてのユーザーが直面するもっとも典型的なものは、テスト作成中と再生実行中でアプリケーションの状

態が異なることです。この問題を避けるには、テストを作成したときと同じ初期状態でテスト実行しているか

確認してください。たとえば:

• テストするアプリケーションがテストを記録する前に実行されていた場合は、テストを実行する前に

実行している必要があります。

• テストアクションがアプリケーションの特定の画面で実行された場合は、テストを実行するときにもそ

の画面を開く必要があります。

• アプリケーション内のデータを編集して保存した場合は、テスト実行が正常に終了するように変更を

元に戻す必要があります。

特定のアプリケーションの応答を待つ必要があるため、テスト エンジンがアプリケーション オブジェクトを検

出できないことがあります。この問題を解決するには、Delay コマンドを挿入し、テキストの実行を一時停止

する時間を指定します。

• キーワード テストでは、指定した Delay Time (遅延時間) パラメーターで Delay オペレーションを使

用します。

• スクリプトでは、ループ本体に aqUtils.Delay メソッドを使用します。

エラーの特定と修正の詳細については、TestComplete ヘルプの「Handling Playback Errors」と「Debugging Tests」を参照してください。

11. 複数のデバイスで実行するためテストを設定する 1 つのモバイル デバイスでテストが正常に実行されることを確認したら、そのテストを変更して複数のモバイ

ル デバイスで実行することができます。

複数の iOS デバイスで実行されるテストは、次のことを処理できなければなりません。

• タブレットとスマートフォンで異なるアプリケーション レイアウト: アプリケーションのユーザー イン

ターフェースは、小さい画面のデバイス (iPhones) で実行するか、大きい画面のデバイス (iPads) で実行するかに応じて変わることがあります。小さい画面では、UI 要素がいくつかのレイアウト (パネ

ル、ページ、ビュー、タブなど) に分割されることがあり、タブレットとスマートフォンでは、同じコント

ロールにアクセスするのに、異なるアクションを実行しなければならないことがあります。そのため、

iPad で作成されたテストは、ほかの iPads でも動作しますが、iPhones デバイスでは動作しない可能

性があります。逆も同様で、iPhone で作成されたテストは、ほかの iPhones デバイスでは動作します

が、iPad デバイスでは動作しない可能性があります。

iOS アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

124

これに対応する方法はいくつかあります。最も簡単な方法は、タブレット用とスマートフォン用の 2 つのバージョンのテストを作成することです。より複雑な方法は、テストを両方の種類のデバイスに

対応させることです。この場合、条件付きテスト構造を作成し、オブジェクト認識の条件を調整する

必要があるでしょう。

• iOS バージョンごとに異なるオブジェクト階層: iOS バージョンごとにオブジェクト階層が異なる可能

性があります。そのため、別の iOS バージョンでは、テストが必要なオブジェクトを見つけられないこ

とがあります。この問題を解決するには、Name Mapping プロジェクト項目 (オブジェクト レポジトリ) で不一致オブジェクトの識別プロパティを修正する必要があります。

このチュートリアルで使用する Orders アプリケーションも、タブレットで実行する場合とスマートフォンで実行

する場合ではレイアウトが変わります。チュートリアルでは、簡潔にするため、テストを両方の種類のデバイ

スに対応させることはしません。テストを実行する場合は、同じ種類のデバイス (iPhones または iPads) を使

用してください。

テストの一貫性を保持するため、textfield0 オブジェクトに拡張検索条件を適用できます。階層内のオ

ブジェクトを上に移動するとき、間違った認識を避けるために条件を見つけることを明確にする必要がありま

す。ここでは、残りの TextField オブジェクトと目的のオブジェクトを区別するために text プロパティを追加

する必要があります。

• TestComplete がこのオブジェクトを見つけることを確実にするため、 [Mobile Screen] ウィンドウ切り

替えて、次の操作をします。

• Orders アプリケーションで [Edit] ボタンをクリックします。

• リストの Mark Twain 注文を選択します。Customer name エディターを含む [Edit Order] パネ

ルが表示されます。

• Mark Twain を Samuel Clemens に名前を変更して戻します。

• 編集モードを閉じないでください。

• Project Explorer で NameMapping 項目をダブルクリックして、Name Mapping エディターを開きま

す。このエディターで、マッピングしたオブジェクトの識別プロパティを確認および編集できます。

• [Mapped Objects] ペインを開きます。

• オブジェクト ツリーを展開して、textfield0 オブジェクトを見つけます。

• Textfield0 オブジェクトをダブルクリックします。

• 表示されるダイアログで、右側のリストでテキスト プロパティを選択し、 をクリックします。

iOS アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

125

左の Selected プロパティは、次のようになります。

• [OK] をクリックして、[Edit Name Mapping Item] ダイアログを閉じます。

• [Mapped Objects] ペインで、textfield0 オブジェクトをドラッグして、tableviewcell6 オブ

ジェクトの直下の子にします。

• textfield0 オブジェクトの [Extended Find] チェックボックスをオンにします。

• 確認ダイアログが表示された場合は、[Yes] をクリックします。

• [Aliases] ツリーで、textfield0 オブジェクトのエイリアスを (Mapped Objects ツリーで行った操

作と同様に) tableviewcell6 エイリアスにドラッグします。

• 不要な scrollview0 オブジェクトを Mapped Objects と Aliases ツリーから削除します。オブジェク

トを削除するには、オブジェクトを右クリックして、コンテキスト メニューから [Delete] を選択します。

• キーワード テストのオブジェクト名を更新します。

• Keyword エディターで Test1 を開きます。

• 顧客名の変更に使用される operation をダブルクリックします。

• 以下のオブジェクト名を変更します。 (変更前) Aliases.Device.processOrders.window0.tableview0.scrollview0.TableViewCell3_0.textfield0

iOS アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

126

(変更後) Aliases.Device.processOrders.window0.tableview0.tableviewcell6.textfield0

• [Finish] をクリックします。

• [Mobile Screen] ウィンドウで、Orders アプリケーションを初期状態に戻します。注文を変更した場合

はそれらを破棄し、[Edit Order] パネルを閉じて、[Done] をクリックします。

これで、複数のデバイスで実行できます。

12. 複数のデバイスでのテスト実行 テストを変更して、異なるモバイル デバイスで実行してみましょう。

• [Mobile] カテゴリから Device Loop operation を追加します。テストの始めに配置します。

操作パラメーターのダイアログで、[Iterate Through All Connected Devices] を選択し、

[Finish] をクリックします。

• テストから Select Device operation を削除/無効にします。Device Loop operation によりモバイル デバイスの切り替えが行われるため、Select Device operation は不要です。

• Device Loop operation の後のすべてのテスト操作を選択し、 をクリックしてこれらの操作をルー

プの内側に移動します。これらの操作はループの各反復で実行されます。

iOS アプリケーションのテスト

© 2019 SmartBear Software http://support.smartbear.com/

127

変更後のテストは次のようになります。

• TestComplete のメイン メニューから [File] - [Save] を選択してテストを保存します。

「iOS デバイスの準備」で説明したようにほかのモバイル デバイスの準備と接続を行います。テストに使用す

るデバイスの種類は、テストの作成に使用したデバイスの種類と同じでなければなりません (iPhones または iPads のいずれか)。

変更したテストを実行します。

TestComplete は、ブラウザーの数だけテスト操作を繰り返します。毎回、異なるモバイル デバイスでテスト アクションが実行されます。

iOS アプリケーションのテスト

smartbear.com TestComplete by SmartBear Software

128

テスト ログには、使用したモバイル デバイスに関する情報と、各デバイスで実行されたテスト操作の結果が

含まれます。

次のステップ

© 2019 SmartBear Software http://support.smartbear.com/

129

次のステップ スタート ガイド チュートリアルはこれで終了です。このスタート ガイドが TestComplete の理解に役立つことを

願っています。他のアプリケーション タイプのテストを作成する方法を習得したり、高度な機能を習得し独自

のテストを作成してみてください。TestCompleteとその機能についての詳細情報は、TestComplete ヘルプ

を参照してください。いくつかのヘルプ トピックを次に示します。

共通トピック

TestComplete によるレコーディング (Recording in TestComplete)

このセクションには、TestComplete によるテストのレコーディングに関する情報があります。

チェックポイント (Checkpoints)

このセクションは、テスト エンジンによって提供されるさまざまなチェックポイントの種類と、テストのレ

コーディング中およびデザイン時にチェックポイントを作成する方法を説明します。

テストの実行 (Running Tests)

このセクションには、テスト実行の方法、バッチ実行 (テストのグループを実行) の設定方法、テスト

実行の予定の立て方などの情報があります。

テスト ログ (Test Log)

TestComplete によるテスト結果の記録方法とテスト ログ パネルについて説明します。このセクション

では、メッセージ、画像、ファイルをログに投稿する方法についても説明します。

再生実行エラーの対応 (Handling Playback Errors)

テスト実行中に発生したエラーの対応方法を説明します。

TestComplete の使用 (Working With TestComplete)

TestComplete プロジェクトをチーム メンバーと共有する方法、TestComplete テストをビルド、開発、

品質保証プロセスに統合する方法がわかります。

デスクトップ アプリケーションに関するトピック

オブジェクトの命名方法 (Naming Objects)

このセクションには、TestComplete によるプロセス、ウィンドウ、コントロールの名前の付け方に関す

る情報があります。

ユーザー アクションのシミュレーション (Simulating User Actions)

このセクションは、TestComplete を用いたマウス クリック、キーストローク、メニュー項目の選択のシ

ミュレートについて説明します。

次のステップ

smartbear.com TestComplete by SmartBear Software

130

アプリケーションのオブジェクトとコントロールの使用 (Working With Applications’ Object and Controls)

このセクションは、テスト オブジェクトに対する特定のアクションの実行方法と、そこからデータを取り

込む方法を説明します。

詳細なタスク (Advanced Tasks)

テストの拡張に役立つさまざまな TestComplete 機能に関する情報が得られます (イベントの処理方

法、ActiveX オブジェクト、ファイル、データベースの使用方法など)。

Web アプリケーションに関するトピック

Web アプリケーションのテスト - チュートリアル (Testing Web Applications)

TestComplete によるモバイル アプリケーションのテストに関する基本情報があります。

Web テストの作成とレコーディング (Creating and Recording Web Tests)

Web アプリケーションの自動テストの作成とレコーディングに関する基本情報を説明します。

Web テストの共通タスク (Common Tasks for Web Testing)

Web ページ要素を検出するさまざまな方法を説明します。

TestComplete でクロスブラウザー テスト (Cross-Browser Testing in TestComplete)

TestComplete でブラウザーに依存しないテストを作成する方法を示します。

エキュレーターを使用したモバイル Web アプリケーションののテスト (Testing Mobile Web Applications Using Emulator – Tutorial)

サンプルのクロスブラウザー モバイル Web テストを作成するためのステップ バイ ステップのチュー

トリアル

モバイル アプリケーションに関するトピック

Android アプリケーション

Android アプリケーションのテスト (Testing Android Applications)

TestComplete による Android アプリケーションのテストに関する基本情報があります。

Android Open アプリケーション用のテストの作成 (Creating Tests for Android Open Applications)

TestComplete 用に準備された Android アプリケーションのテストに関する詳しい情報を提供しま

す。

Android デバイスでのユーザー アクションのシミュレーション (Simulating User Actions Over Android Devices)

Android デバイスで、タッチ、スワイプなどのさまざまなユーザー アクションをシミュレートする方法を

説明します。

次のステップ

© 2019 SmartBear Software http://support.smartbear.com/

131

iOS アプリケーション

iOS アプリケーションのテスト (Testing iOS Applications)

TestComplete による iOS アプリケーションのテストに関する基本情報があります。

iOS テスト用のアプリケーション、デバイス、テスト コンピューターの準備 (Preparing Applications, Devices and Test Computers for iOS Testing)

テスト用に iOS アプリケーション、デバイス、テスト コンピューター、TestComplete を準備する方法を

説明します。

iOS アプリケーションでのユーザー アクションのシミュレート (Simulating User Actions on iOS Applications)

iOS アプリケーションでタッチやキーストロークなどのユーザー アクションをシミュレートする方法を

説明します。

テクニカル サポートとリソース

smartbear.com TestComplete by SmartBear Software

132

テクニカル サポートとリソース TestComplete に関する質問、問題、その他のお問い合わせについては、下記のフォームからサポート チームまでご連絡ください。

http://support.smartbear.com/message/?prod=TestComplete

サポート チームから電子メールで回答を送付します。また、以後の連絡は電子メールで行われます。

さらに、フォーラムで回答を探したり、意見を交換することもできます。また、よくある質問で質問に対する回

答を見つけたり、ビデオ チュートリアル、Web セミナー、ブログを見たり、テクニカル ペーパーを参照したり、

SmartBear 社による TestComplete トレーニング セミナーに参加することも可能です。

開発元から提供されるサポート情報に関しては、次の Web サイトを参照してください。

http://support.smartbear.com/

エクセルソフト株式会社へのお問合せ TestComplete に関する質問、問題、その他のお問い合わせについては、エクセルソフト株式会社の下記の

お問合せページからお気軽にご連絡ください。

http://www.xlsoft.com/jp/qa/

索引

© 2019 SmartBear Software http://support.smartbear.com/

133

索引

A Android アプリケーションのテスト .................................. 68

I iOS アプリケーションのテスト ......................................... 96

M Mobile Screen ............................................................ 80

N NameMapping ......................................................... 123

識別プロパティの修正 ............................................ 123 Naming オブジェクト ...................................................... 9

O Object Browser パネル ................................................. 8 Open アプリケーション .................................................. 11

P Project Explorer パネル ................................................ 8

S Stores ......................................................................... 12

U UI テスト ........................................................................ 5

W Web アプリケーションのテスト ........................................ 37

お オブジェクト naming ....................................................... 9 オブジェクト モデル ......................................................... 9 オブジェクト名のマッピング ...................................... 30, 56

き キーワード テスト ............................................................. 5

機能テスト ...................................................................... 5

さ サポートとリソース ........................................................132

し 自動テスト ...................................................................... 5 準備

Android アプリケーション .........................................74 Android デバイス ....................................................73 iOS アプリケーション...............................................100 iOS デバイス ............................................................97

す スクリプト ........................................................................ 5

ち チェックポイント .............................................................12

作成 ..................................................................22, 81 チェックポイント (Checkpoints) ...............................22, 81

て テクニカル サポートとリソース .......................................132 デスクトップ アプリケーションのテスト ..............................13 テスト

テスト タイプ .............................................................. 5 テスト結果の解析 .................................. 33, 62, 91, 121 レコーディング ....................................................19, 43 レコーディングしたテストの解析 ............. 26, 52, 86, 116 作成 .............................................. 19, 43, 77, 79, 107 自動テストについて .................................................... 5 実行 .................................................... 30, 61, 90, 120 調整 ........................................................................57

テスト オブジェクト モデル ............................................... 9 テスト プロジェクト ........................................................... 6

Web プロジェクトの作成 ............................................37 デスクトップ プロジェクトの作成 ..................................16 モバイル プロジェクトの作成 (Android) .....................76 モバイル プロジェクトの作成 (iOS) .................... 96, 104

テスト ログ Web ........................................................................62 ソースにジャンプ .......................................... 35, 64, 93 デスクトップ ..............................................................33

索引

smartbear.com TestComplete by SmartBear Software

134

テストするアプリケーション デスクトップ .............................................................. 17 モバイル .......................................................... 76, 104

テストのレコーディング Web ........................................................................ 43 デスクトップ .............................................................. 19

テストの作成 Web ........................................................................ 43 デスクトップ .............................................................. 19 モバイル (Android) .................................... 77, 79, 107

テストの実行 Web ........................................................................ 61 デスクトップ .............................................................. 30 バッチの実行 ........................................................... 32 モバイル .......................................................... 90, 120 異なるブラウザー ...................................................... 65 一時停止 ............................................. 32, 61, 90, 121 初期状態 ..................................................... 30, 61, 90 停止 .................................................... 32, 61, 90, 121 複数のデバイス ................................................ 94, 126

テスト結果 Web ........................................................................ 62 エラーの解決 ....................................... 35, 64, 93, 123 ソースにジャンプ .......................................... 35, 64, 93 デスクトップ .............................................................. 33 モバイル (Android) .................................................. 91 モバイル (iOS) ....................................................... 121

テスト結果の解析 Web ........................................................................ 62 デスクトップ .............................................................. 33 モバイル .......................................................... 91, 121

ね ネーム マッピング .................................................... 30, 56

は パネル............................................................................ 8

ふ ブラックボックス アプリケーション ....................................10 プロジェクト .................................................................... 6

Web ........................................................................37 デスクトップ ..............................................................16 モバイル (Android) ..................................................68 モバイル (iOS) .........................................................96

プロジェクト スイート........................................................ 6 プロジェクト項目 ............................................................. 6

ほ ホワイトボックス アプリケーション .....................................11

も モバイル アプリケーションのテスト ............................68, 96 モバイル テストの準備 .............................................69, 97

ゆ ユーザー アクションのシミュレーション ............................29 ユーザー インターフェース概要 ...................................... 8

れ レコーディングしたテストの解析

Android ..................................................................86 Web ........................................................................52 デスクトップ ..............................................................26 モバイル ................................................................116

ろ ログ

Web ........................................................................62 ソースにジャンプ .......................................... 35, 64, 93 デスクトップ ..............................................................33