我正在研究量角器,我为我的项目创建了一个测试数据(JSON)文件,我也使用Page Object作为我的脚本。有时我需要将测试数据放入我的Page对象文件中,以便在创建后在屏幕上识别对象。
我有多个具有相同css定位器的对象,我想识别具有使用JSON插入的数据的特定对象。我正在使用' cssContainingText' locator用于标识对象但无法直接从JSON获取数据。
有人可以帮我解决问题吗?我不知道如何从页面对象文件中调用数据文件(JSON)。
答案 0 :(得分:7)
除了@Tom的回答,您可以将测试数据路径分配给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或Spec中,您可以使用browser.params.testdata.users
或任何testdata对象的名称访问数据。
答案 1 :(得分:3)
一个简单的require语句可以将json文件包含在PageObject中。
// 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