LoginSignup
0
0

More than 5 years have passed since last update.

KatalonStudio シンプルなテストの作成

Last updated at Posted at 2019-05-09

今回はシンプルなテストを作成して Katalonの使い方を覚えようと思います。

日本語が使えない

テストを作る前の注意です。
Katalon Studio 6.1.4 時点では、日本語を使えない場所が多々あります。
特に、WebRecorderなどを使用してクリックするコンポーネントに名前をつけるとき、日本語を入力してしまうと、保存時に日本語部分が消えてしまうので注意してください。

新プロジェクトの作成

プロジェクトの作成

ここでは File - New - Project で新しいプロジェクトを作成します。
テストプロジェクトは API用やMobile用など、特定のサービスを対象にしたプロジェクトを作成することもできます。
image.png

プロジェクトに名前を付けます。
image.png

プロジェクト内のフォルダ

プロジェクトを作成するといくつかのフォルダが表示されます。
ここでは基本的な3つのフォルダについて確認します。
image.png

  • Profiles
    環境別に設定値を変えたい場合、ここで設定値を登録しておきます。 開発環境、ステージング環境でログインURLが違い場合に、それぞれのURLを登録しておく、というような使い方ができます。

  • Object Repository
    画面上の項目を Object Repository として登録しておくことができます。WebRecorderで作成したり、自分で作成することもできます。

  • Test Cases
    ここにテストケース(シナリオ)を作成します。画面上でクリックできる項目は ObjectRepositoryから選択することができます。実際は Groovyスクリプトになっているので、スクリプト内で操作対象を定義することもできます。

テストケースの作成

操作の記録

ここでは WebRecorderを使って、画面操作を録画してみます。
メニューバーにある WebRecorder のアイコンをクリックします。
image.png

ここではURLにQiitaのURL (https://qiita.com) を指定してみます。
次に、右のドロップダウンリストから chrome を選択します。
すると、Chromeが自動的に起動しQiitaのトップページが表示されます。
image.png

自動テストの対象になっているブラウザには「Chromeは自動テスト ソフトウェアによって制御されていません」という表示があります。
image.png

このとき WebRecorderには2つの操作が記録されています。

Open Browser
Chromeブラウザを起動する

Navigate To Url
指定したURLを起動中のブラウザで開く

image.png

次に、自動テスト中のブラウザで、右上にあるログインのリンクをクリックします。
image.png

画面はログイン画面に切り替わります。
image.png

WebRecorderを確認すると、いまのクリック操作が登録されています。

image.png

Click
指定したコンポーネントをクリックする

操作したコンポーネントの情報 (TestObject)

テスト中に操作したコンポーネントは TestObject を呼ばれます。
TestObjectはWebRecorder内でその位置情報をXPathとして確認することができます。

SelectionMethod XPath

右上のRunボタンの上にある「Show Captured Objects」をクリックします。
すると、画面が右側に広がり、Aタグの情報が表示されます。
Selector Editor に表示されているXPathが、このコンポーネントを指定するときのパスになります。

image.png

この画面では Selection Method として「XPath」が選択されていますが、「Attributes」を選択すると、タグやClass名などの属性を組み合わせたXpathを構築することができます。

※ xpath:neighborがたくさんありますが、これは AutoHealing smart XPath 機能で使われるようです

SelectionMethod Attribute

右端のチェックボックスをON/OFFすることで、属性の組み合わせを変更できるので、確実に一意になる組み合わせを定義することもできます。

image.png

操作記録の停止

WebRecorder右上の StopRecordingボタンをクリックして記録を停止し、OKボタンでRecorderを閉じると、これまでに操作したコンポーネントを保存する画面が表示されます。

このままOKをクリックした場合、Object Repository に Page_Qiita フォルダを作成し、このフォルダ内に a_ という名前で ログインリンクの位置情報(Xpath)が保存されます。
今回はこのままの状態でOKをクリックします。

image.png

次に今の操作をテストケースとして保存するダイアログが表示されます。ここで任意のテストケース名を入力してOKをクリックします。

image.png

元の画面に戻ると、いま保存したテストケースが TestCases フォルダに表示され、操作したコンポーネントの情報は Object Repository に保存されます。

image.png

操作の再生

記録した操作を再生するには、メニューバーのRunボタンをクリックします。
この場合、Firefoxがデフォルトブラウザになっているので、記録の再生はFirefoxブラウザを起動して行われます。

ブラウザを指定したい場合は、Runボタンの横にある▼をクリックし、ブラウザを選択します。

image.png

新しいブラウザが起動し、いま記録した操作が実行されます。
このときKatalonの画面では再生中のログが表示され、すべて正しく実行すると緑色のバーが表示されます。

image.png

TestObject名に日本語が使えない

WebRecorderで操作コンポーネントを確認するとき、Object Name のところは編集可能なので、操作を記録しながら、コンポーネントに分かりやすい名前を付けることができます。

ここではAタグに「ログインリンクのAタグ」という名称を付けました。

image.png

しかし、ここで日本語の名称を登録した場合、テストケースを保存してKatalonの画面に戻ると、日本語の部分がすべてなくなり「A」だけしか残りません。

image.png

現時点では日本語に対応していないため、名称を付ける場合はがんばって英語名称をつけましょう。

TestObject名についての一考

テストする画面数が増えてくるとTestObjectも増えていきます。
WebRecorderでは自動的に名称を付けてくれますが、そのまま利用すると TestCaseの作成時に ObjectRepositoryから選択するのが難しい場合があります。
このため、プロジェクトメンバーと命名規則を決めておくと良いと思います。

たとえば、ObjectRepository内で

  • 画面単位のフォルダを作成
  • 画面内のパーツごとにフォルダを作成
  • TestObject名は 「パーツ名_Htmlタグ名_名称」 とする

といったような規則を作っておきます。

image.png

私がTestObjectを作ったとき、はじめは htmlタグ名は不要かなと思っていたのですが、ObjectRepositoryを使ってテストケースを作成するとき、

  • アプリケーションの画面を見る
  • クリックしたいコンポーネントを確認する
  • ObjectRepositoryを探す

という流れになり、コンポーネントを確認するときに Htmlタグを意識していたように思ったので、TestObjectに Htmlタグ名が入っていると探しやすい印象がありました。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0