在nodejs中加载或压力测试

时间:2014-11-24 05:16:29

标签: node.js

我正在使用带有express的nodejs。

我创建了一个包含一些字段的注册表单。我想检查1000个用户同时注册的时间。会发生什么? 是否有任何可用模块或任何简单示例。如何输入假数据。

我如何为此编写测试用例。我用谷歌搜索,但没有得到结果。

由于

1 个答案:

答案 0 :(得分:3)

使用faker生成虚假数据,使用request将数据发送到服务器。您可以使用async.each同时异步执行1000次注册。

var faker = require('faker');
var async = require('async');

var number_of_signups = 1000;
var identities = [];

for (var i=0; i < number_of_signups; i++) {
  identities.push({
    name: faker.name.findName(),
    email: faker.internet.email(),
    password: faker.internet.password()
  });
}

function submit(identity, callback) {
  var opts = {
    url: 'http://youdomain.com/signup-endpoint',
    method: 'POST',
    json: identity
  };
  request(opts, function(err, connection, body) {
    if(err) return callback(err);
    callback();
  });
}

async.each(identities, submit, function(err) {
  if(err) throw err;
  console.log('done...');
  process.exit();
});