用supertest,我可以测试重定向代码302varrequest=require('supertest');varapp=require('../server').app;describe('testroute',function(){it('return302',function(done){request(app).get('/fail_id').expect(302,done);});it('redirectto/');});如何测试要重定向的url目标? 最佳答案 @JuanPablo的答案是正确的(双关语),但它会匹配
我正在使用Jasmine2.3通过NPM安装并使用Grunt执行。'usestrict';module.exports=function(grunt){grunt.initConfig({package:grunt.file.readJSON('package.json'),exec:{jasmine:'node_modules/.bin/jasmine'}});require('load-grunt-tasks')(grunt);require('time-grunt')(grunt);grunt.registerTask('default','exec:jasmine');};我导
例如,我必须在无法(或不应该)随响应一起发送的验收测试中测试服务器错误(Express)Error:Can'tsetheadersaftertheyaresent.使用错误处理程序捕获错误并使用5XX代码响应将在此处提供有值(value)的反馈,但问题是header已经发送。这类错误可能是非关键且难以发现的,通常它们是从日志中找出来的。规范是it('shouldsend200',function(done){request(app).get('/').expect(200,done);});测试的应用是app.get('/',function(req,res,next){res.sen
我正在使用supertest测试Node.jsAPI,我无法解释为什么res.body对象超集返回为空。数据显示在res.text对象中,但没有显示在res.body中,知道如何解决这个问题吗?我正在使用Express和body-parser:app.use(bodyParser.json());app.use(bodyParser.json({type:jsonMimeType}));app.use(bodyParser.urlencoded({extended:true}));这是我正在测试的API方法:app.get(apiPath+'/menu',function(req,re
我需要一些帮助来解决我对nodejs代码进行测试的问题。我正在使用Mocha和super测试。我对超测中的实现感到困惑。我不知道要解决它。我正在尝试自动下载文件。describe('GET/entry/:entryId/file/:id/download',function(){it('shouldpassdownloadfunction',function(done){this.timeout(15000);request(app.webServer).get('/entry/543CGsdadtrE/file/wDRDasdDASAS/download').set('Authori
在Googlegroupspostondeprecatingloopback-testing有一个问题要求提供一个适当的例子来说明如何在没有环回测试的情况下实现测试。该线程谈到使用supertest反而。下面是我尝试将Mocha、超测与模型(fromapp.js)结合起来。当我自己运行文件时,结果非常好。但是,如果我有另一个测试文件(比如test-teacher.js),那么第一个测试文件(称为test-student.js)开始以我无法描述的奇怪方式失败。我是否遗漏了什么,或者不能像我在下面使用它们那样使用模型?describe('/Student',function(){varse
我有这段代码使用supertest和mocha:importrequestfrom'supertest';//....varnewGame;describe('Creatinggame',function(){beforeEach(function(done){request(app).post('/api/games').send({owner:'Mr.X',}).expect(201).expect('Content-Type',/json/).end((err,res)=>{if(err){returndone(err);}newGame=res.body;done();});}
我正在使用supertest测试我的API端点,而且效果很好,但我不知道如何测试文件下载是否成功。在我的路由文件中,我将端点定义为:app.get('/api/attachment/:id/file',attachment.getFile);函数getFile()看起来像这样:exports.getFile=function(req,res,next){Attachment.getById(req.params.id,function(err,att){[...]if(att){console.log('Filefound!');returnres.download(att.getPa
我似乎无法让以下集成测试通过使用mocha、supertest和should(和CoffeeScript)的快速项目。测试should=require('should')request=require('supertest')app=require('../../app')describe'authentication',->describe'POST/sessions',->describe'success',(done)->it'displaysaflash',(done)->request(app).post('/sessions').type('form').field('us
我正在用supertest测试一个expressAPI。我无法在一个测试用例中获得多个请求来使用supertest。以下是我在测试用例中尝试过的。但是测试用例似乎只执行最后一个调用,即HTTPGET。it('shouldrespondtoGETwithaddeditems',function(done){varagent=request(app);agent.post('/player').type('json').send({name:"Messi"});agent.post('/player').type('json').send({name:"Maradona"});agent.