2

我在 UI 自动化测试项目中工作,我需要向我的服务器发送一个 ajax 请求,但是在 Nightwatch.js 中,一些香草 javascript 和 JQuery 函数的功能是不可接受的,

因此,如果有人有在 nightwatch.js 环境中向服务器发送 Ajax 获取请求的经验,请给我一些信息/建议。

4

1 回答 1

2

经过长时间的研究,我发现 request.js 是一个节点模块,我通过安装“请求”节点模块解决了我的问题。安装后,我可以在Nightwatch环境中对我的服务器执行“GET”和“POST”请求。我正在编写一段像魅力一样工作的代码。

/* jshint expr: true */
module.exports = {
'@tags' : ['book'],
beforeEach : function (client) {

},
after : function (client) {
    client.end();
},
wGroup: {
    book_url: "https://example.myApi.mycompany.in"
},

userSettings: Array(),

"Get all settings": function (client, done) {
    var widget = this.wGroup;
    client.getreq( widget.book_url + "/api/store", widget, function (response) {
        client.assert.equal(response.statusCode, 200, "201 Created");
        var objects = response.body.objects;
        client.userSettings = objects;
        console.log( 'Found number of settings: ' + client.userSettings.length );
        client.end();
    });
},

"Remove settings": function (client, done) {
    var widget  = this.wGroup;
    var objects = client.userSettings;
    for( i=0; i<objects.length; i++ ) {
        var obj = objects[i];
        console.log('Removing user settings id ' + obj.id );
        client.deletereq( widget.book_url: l + "/api/store" + obj.id, widget, function (resp) {
            client.assert.equal(resp.statusCode, 204, "204 Created");
            client.end();
        });
     }
   },
};
于 2016-05-20T07:18:39.400 回答