6
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ServiceNowAdvent Calendar 2024

Day 5

ServiceNow:ATFの超具体的な基本設定(設定画像付き)

Last updated at Posted at 2024-11-16

はじめに

ServiceNowのAutomated Test Framework (ATF) は、システムやプロセスのテストを効率化するための非常に強力なツールです。この記事では、ATFのテストプロセスを「Apple iPhone 13」のカタログアイテムを例に、基本的な構成ステップを順を追って解説します。

ATFのことがよくわからない方は、先にこちらもご覧ください


1. ユーザーを指定する(Impersonate)

最初にテストを実行するユーザーを指定します。このステップでは、特定の役割や権限を持つユーザーをシミュレートします。

image.png

設定内容

  • 選択するユーザー: System Administrator(例)
  • 注意点: 必要に応じて、Create a Userステップを利用して新規ユーザーを作成することも可能です。ただし、既存のユーザーをインパーソネートする方が本来のユーザーの問題点を発見しやすいかもしれないです。該当ユーザーのロールを事前確認するのは必須です。

2. カタログアイテムを開く(Open a Catalog Item)

次に、Service Portal上で対象のカタログアイテム(Apple iPhone 13)を開きます。

image.png

設定内容

  • Portal: Service Portal
  • Catalog Item: Apple iPhone 13

ポイント:

  • ポータルとアイテムの正しい指定が重要です。
  • 次のフォーム入力ステップの準備が整います。

3. フォームの入力を開始する(Set Variable Values - Part 1)

フォームの最初の質問に回答します。

image.png

設定内容

  • 質問: "Is this a replacement for a lost or broken iPhone?"
  • 回答: Yes

ポイント:

  • UIポリシーで動的に変化するフォームの場合、適切に順番を考慮して入力する必要があります。

4. フォームの追加入力を行う(Set Variable Values - Part 2)

フォームの残りの質問に回答します。

image.png

設定内容

  • 質問と回答:
    • What was the original phone number? → test
    • Monthly data allowance → 500MB
    • Choose the colour → Green
    • Choose the storage → 128 GB

ポイント:

  • 必要に応じて複数のステップに分割して設定します。

5. 入力した値を確認する(Validate Variable Values)

フォームに入力した値が正しいかを検証します。

image.png

設定内容

  • 検証項目:
    • Is this a replacement for a lost or broken iPhone? → Yes
    • What was the original phone number? → test
    • Monthly data allowance → 500MB
    • Choose the storage → 128 GB

ポイント:

  • 入力値が正しいか確認することで、次のプロセスの精度を高めます。

6. カタログアイテムをサブミットする(Order a Catalog Item)

設定したフォームをサブミットし、リクエストを作成します。

image.png

設定内容

  • アサートタイプ: Successfully ordered Catalog Item

7. リクエストアイテムを探す(Record Query - Requested Item)

カタログアイテムをサブミットした後、関連するリクエストアイテムを検索します。

image.png

設定内容

  • Table: Requested Item (sc_req_item)
  • Conditions: Request = {{Step 6: Order a Catalog Item (SP).Record}}

ポイント:

  • データピルを活用して、関連レコードを動的に参照します。

【重要】「さっきのアイツ!」を探す方法

このステップ以降は、サブミットされた後に作成されたレコードを「探す」「開く」を繰り返しながら進めていきます。作成されたレコードを動的に見つけるにはこのデータピルを使い、「どのステップで作成された・探したレコード」かを指定します。

image.png

これを設定しないと、朝遅刻しそうなときに食パンを加えて走り交差点の角でぶつかった男の子と教室で再会して「あー!さっきのアイツ!」ができません。必ず探しましょう。女子目線です。


8. 見つけたリクエストアイテムを開く(Open an Existing Record - Requested Item)

検索したリクエストアイテムを開きます。

image.png

image.png

設定内容

  • Table: Requested Item (sc_req_item)
  • Record: {{Step 7: Record Query → First record}}

9. リクエストアイテムを更新する(Record Update - Requested Item)

開いたリクエストアイテムに作業ノートを追加します。

image.png

設定内容

  • 更新内容:
    • Work notes = "I will respond to you.|対応を開始します。"

10. リクエストアイテムの値を確認する(Record Validation - Requested Item)

リクエストアイテムが期待される状態にあるか確認します。

image.png

設定内容

  • 検証条件:
    • Stage = Fulfillment
    • State = Open
    • Is this a replacement for a lost or broken iPhone? → Yes
    • Choose the colour → Green

image.png
カタログアイテムの「変数」もしっかりチェックできます。Variablesから指定しましょう。


11. 承認レコードを探す(Record Query - Approval)

関連する承認レコードを検索します。

image.png

設定内容

  • Table: Approval (sysapproval_approver)
  • Conditions: Approval for = {{Step 7: Record Query → First record}}

12. 見つけた承認レコードを開く(Open an Existing Record - Approval)

検索した承認レコードを開きます。

image.png


13. 承認ボタンをクリックする(Click a UI Action - Approve)

承認レコードの「Approve」ボタンをクリックします。

image.png

いままではStatusをRecord Updateで更新していましたが、Approveはフィールドが保護されているので更新できません。そういう時はUI Actionからボタンをクリックする操作を行います。


14. カタログタスクを探す(Record Query - Catalog Task)

リクエストに関連する最初のカタログタスクを検索します。

image.png

設定内容

  • Table: Catalog Task (sc_task)
  • Conditions: Request item = {{Step 7: Record Query → First record}} and State = Open

15. カタログタスクを開く(Open an Existing Record - Catalog Task)

検索したカタログタスクを開きます。

image.png


16. カタログタスクをクローズする(Record Update - Catalog Task)

カタログタスクを完了(クローズ)します。

image.png

設定内容

  • 更新内容:
    • State = Closed Complete
    • Work notes = "Closed sc task"

17. カタログタスクの値を確認する(Record Validation - Catalog Task)

カタログタスクが正しくクローズされているか確認します。

image.png

設定内容

  • 検証条件:
    • State = Closed Complete

18. カタログアイテムを再度開く(Open Catalog Item)

リクエストアイテムのレコードを再度開きます。
一通りの作業が完了したので、ユーザー目線で各画面の終了確認をします。

image.png


19. カタログアイテムの値を確認する(Record Validation - Catalog Item)

カタログアイテムの状態が「Closed Complete」であることを確認します。

image.png


20. リクエストを開く(Open Request)

関連するリクエストレコードを開きます。

image.png


21. リクエストの値を確認する(Record Validation - Request)

リクエストが正しくクローズされていることを確認します。

image.png


テスト結果の確認

テストの実行をして、結果を確認します
image.png

テストの写真もしっかりとられています。
image.png

縦に長い画面もちゃんと撮れてます。
image.png

おわりに

以上がステップバイステップでのATFの設定の詳細です。
他にここまで詳しくATFのステップについて書いている記事は無いと思います。ぜひご参考ください。

6
3
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
6
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?