2016-10-21 10 views
3

私は分度器で作業していますが、自分のプロジェクトに1つのテストデータ(JSON)ファイルを作成しました。時には、画面オブジェクトが作成された後でそのオブジェクトを識別するために、私のページオブジェクトファイルにテストデータが必要です。JSONファイルからプロジェクタのページオブジェクトファイルにテストデータを取得できます

私は同じCSSロケータを持つ複数のオブジェクトを持っており、JSONを使用して挿入されたデータを持つ特定のものを特定したいと思います。私はオブジェクトを識別するのに 'cssContainingText'ロケータを使用していますが、JSONから直接データを取得することはできません。

解決方法を教えてもらえますか?ページオブジェクトファイルからデータファイル(JSON)を呼び出す方法がわかりません。

答えて

3

単純なrequireステートメントは、PageObjectにjsonファイルを含めるために使用します。トムの答え@に加えて

// The require statement will import your JSON file into the json variable 
var json = require('path/to/json/file.json'); 

// Now you can access data from your json file as usual: 
var users = json.users; //Example 1 
var data = json['data']; //Example 2 
5

、あなたはconf.jsファイルのparams対象にテストデータパスを割り当て、ちょうど変数名を使用して、任意のファイルにアクセスすることができます。

以下のconfig.jsファイルの例を参照してください。

exports.config = { 

    seleniumAddress: 'http://localhost:4444/wd/hub', 
    capabilities: { 
    'browserName': 'chrome' 
    }, 

    onPrepare: function() { 

    }, 
    params: { 
    testdata: require('path/to/json/file.json') 
    } 
} 

そして、あなたpageObjectsやスペックの内部、あなたはbrowser.params.testdata.usersまたは任意のテストデータオブジェクトの名前を使用してデータにアクセスすることができます。

関連する問題