---
title: "進行した状態の検査"
slug: "test-an-advanced-condition"
abstract: "実験や体験リクエストでヘッダーやパラメータを使う高度な状態のテスト方法を説明します。"
---
# 進行した状態の検査

Sitecore Personalize選択されたゲストに対して条件[](https://doc.sitecore.com/personalize/ja/users/sitecore-personalize/developer-center/conditions/test-a-condition/test-a-condition.html "Test a condition")をテストすることを可能にします。このトピックでは、実験や体験リクエストにヘッダーやパラメータを含む高度な条件をテストする方法について説明します。

条件をテストする際、Sitecore Personalizeサーバー側でJavaScriptをテストします。これにより、JavaScriptが実行されるコンテキスト内で検証されることが保証されます。

*User*、*Developer*、または*Admin*Sitecore Cloud Portalで役割を持つチームメンバーは、進行状態を検査することができます。

進行状態の検査:

1.  条件を開いて **「テスト**」をクリックします。
    
    ![Testing a condition](https://doc.sitecore.com/api/markdown-image/personalize/ja/users/sitecore-personalize/images/pers_testcond.png)
    
2.  **「テスト条件**」ダイアログでは、その条件をゲストに対してテストする必要があります。デフォルトのゲストの属性でテストするか、検索ボックスをクリックして「**最近**」を選択して最近アクティブなゲストのリストから選択するか、ブックマークしたゲストのリストから「**ブックマーク**」を選択できます。システムは最近アクティブだったゲストを選択します。例えば、メールアドレスや他のユニークな識別子、ブラウザIDを使ってゲストを検索できます。
    
    > !注コードの設定やテスト時によく使うゲストのデータを使っている場合は、**スター** アイコンをクリックしてゲストをブックマークするだけで、もう探す必要がなくなりましょう。
    
3.  実験や体験のヘッダーやパラメータを含めるには、**Experience request**オプションをクリックしてください。これを行うには、JavaScriptコードエディタでrequestコンテキストを呼び出してください:
    
    (function () {
     return { request: request };
    })();
    
4.  エクスペリエンスリクエストにヘッダーを追加するには、コードエディタのJavaScriptにヘッダーを含める必要があります。例えば、標準の **デバイス** 条件はJavaScriptにUser-Agentヘッダーを含めるように、こちらの様子です:
    
    (function () {
     load("classpath:ua-parser.js");
     var comparator = "is | enum(is, is not) | is | { required: true, placeholder: is/is not }";
     var deviceTypes = "device type(s) | multienum(mobile, tablet, desktop, other) | | { required: true, placeholder: device type(s) }";
     var deviceTypesArray = deviceTypes.toLowerCase().split(',');
     var desktopOSTypes = 'Mac OS', 'Windows', 'Ubuntu', 'Unix', 'Linux', 'Chromium OS';
     var deviceMatch = false;
    
     if (request && request.requestDetails && request.requestDetails.headers && request.requestDetails.headers'User-Agent') {
     var parser = new UAParser();
     parser.setUA(request.requestDetails.headers'User-Agent');
     var uaParsed = parser.getResult();
     if (uaParsed.device.type) {
     var deviceType = uaParsed.device.type.toLowerCase();
     if (deviceType !== 'mobile' && deviceType !== 'tablet') {
     deviceMatch = deviceTypesArray.indexOf('other') >= 0;
     } else {
     for (var k = 0; k < deviceTypesArray.length; k++) {
     if (deviceType === deviceTypesArrayk.toLowerCase()) {
     deviceMatch = true;
     break;
     }
     }
     }
     } else {
     var device = 'other';
     if (uaParsed.os.name) {
     for (var i = 0; i < desktopOSTypes.length; i++) {
     if (uaParsed.os.name.toLowerCase() === desktopOSTypesi.toLowerCase()) {
     device = 'desktop';
     break;
     }
     }
     }
     deviceMatch = deviceTypesArray.indexOf(device) >= 0;
     }
     }
    
     return (comparator === "is") && deviceMatch || (comparator === "is not") && !deviceMatch;
    })();
    
5.  **テストシナリオ**オプションから「**ヘッダーを追加**」をクリックします。
    
6.  この形式でオブジェクトをキーとして含めることができます: objects.keys。例えば、User\_Agentはキー、Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Safari/537.36 Edg/112.0.1722.58はここに示すような値です。
    
    ![pers\_header.png](https://doc.sitecore.com/api/markdown-image/personalize/ja/users/sitecore-personalize/images/pers_header.png)
    
7.  「 **テスト**」をクリックします。テストシナリオに追加したパラメータや値は回答に含まれています。
    
8.  エクスペリエンスリクエストにパラメータを追加するには、JavaScriptコードエディタでパラメータへの全パスを含める必要があります。こちらに示されています。
    
    (function () {
     return { request: request.params.utm.campaign === "summer\_sale"};
    })();
    
9.  **テストシナリオ**オプションからパラメータ**を追加**をクリックします。
    
10.  この形式でオブジェクトをキーとして含めることができます: objects.keys。例えば、utm\_campaignはキー、summer\_saleはここに示すような値です。
     
     ![Add parameters to test conditions](https://doc.sitecore.com/api/markdown-image/personalize/ja/users/sitecore-personalize/images/pers_addparam.png)
     
11.  「 **テスト**」をクリックします。テストシナリオに追加したパラメータや値は回答に含まれています。以下に示されています:
     
     ![Parameters in the test response](https://doc.sitecore.com/api/markdown-image/personalize/ja/users/sitecore-personalize/images/pers_paramresponse.png)