最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

使用Frisbyjs和测试的NodeJS POST请求

运维笔记admin14浏览0评论

使用Frisbyjs和测试的NodeJS POST请求

使用Frisbyjs和测试的NodeJS POST请求

我测试的POST请求/ ABC / getme /页眉作为内容类型和在体内I M下方发送object.My代码登录:

describe('HTTP Method Test for app.js', function() {
  var frisby = require('frisby');
  frisby.post('http://localhost:8000/abc/getme/login', {
    username:"myusername",
    password:"mypassword"
  }, {json: true})
  frisby.addHeaders({
    'Content-type':'application/json'

  })
  frisby.expectHeaderContains('content-type', 'application/json')
  frisby.expectJSON({
    method: 'POST'
  }).toss();
}); 

而就像我的错误:

Failures:

  1) HTTP Method Test for app.js encountered a declaration exception
   Message:
     TypeError: frisby.addHeaders is not a function
   Stacktrace:
     TypeError: frisby.addHeaders is not a function
    at jasmine.Suite.<anonymous> (/home/srikanth/Desktop/qcs/QCS/server/spec/app_spec.js:8:20)
    at Object.<anonymous> (/home/srikanth/Desktop/qcs/QCS/server/spec/app_spec.js:2:5)
    at Module._compile (module.js:660:30)
    at Object.Module._extensions..js (module.js:671:10)
    at Module.load (module.js:573:32)
    at tryModuleLoad (module.js:513:12)
    at Function.Module._load (module.js:505:3)
回答如下:

试试这个,它与弗里斯比的更新版本

var req = {
    method: "post",
    url: httpMode + "://" + url + "/v1/companies/" + companyId + "/accounts/login",
    headers : {
        "Accept": "application/json", 
        "content-type" : "application/json",
        "Authorization": "Basic " + Buffer.from(username + ":" + password).toString("base64")
    },
    body: {}
}; 

frisby.globalSetup({
    request: { 
        headers : req.headers
    }
});

it("Test login_account_spec", function(done){
    frisby.post(req.url)
        .expect("status", 200)
        .expect("header", "content-type", "application/json; charset=utf-8")
        .expect("jsonTypes", "data", {
            "user_id": Joi.string(),
            "role": Joi.string()
        })
        .then(function(res) {
            var body = res.body;
            body = JSON.parse(body);

            expect(body.data.role).toBeDefined();
            expect(body.data.user_id).toHaveLength(24);
        })
        .then(function(res) {
            record.createLogFile("login_account_spec" + dateTime, null, req, res);
        })
        .done(done);
}); 
发布评论

评论列表(0)

  1. 暂无评论