2

我对 mocha / omf 很陌生。我有以下基本测试:

omf('http://localhost:7000', function(client) {
  client.get('/apps', function(response){
    response.has.statusCode(200);
    response.has.body('["test1","test2"]');
  });
});

我想检查值“test2”是否在返回的列表中,但我不知道这是如何可行的。我在想类似的东西:

omf('http://localhost:7000', function(client) {
  client.get('/apps', function(response){
    response.has.statusCode(200);
    // response.body.split.contains("test2"); // Something like that
  });
});

我可以访问 response.body 然后解析字符串吗?

** 更新 **

我试过用 mocha 进行测试,只是一个简单的状态码:

request = require("request");

describe('Applications API', function(){
  it('Checks existence of test application', function(done){
    request
      .get('http://localhost:7000/apps')
      .expect(200, done);
  });
});

但我收到以下错误:

TypeError: Object # has no method 'expect'

任何的想法 ?摩卡咖啡需要额外的插件吗?

4

1 回答 1

7

第二个示例不能如图所示工作。request.get 是异步的。

这是一个使用请求运行的工作示例,应该

request = require("request");
should = require("should");

describe('Applications API', function() {
  it('Checks existence of test application', function(done) {
    request.get('http://google.com', function(err, response, body) {
      response.statusCode.should.equal(200);
      body.should.include("I'm Feeling Lucky");
      done();
    })
  });
});
于 2013-02-19T20:15:16.657 回答