Tag: supertest

下午摩根看不起

我有一个非常简单的Koa应用程序: var app = module.exports = require("koa")(); app.use(function *(){ this.body = "Koa says Hi!"; }); var port = process.env.PORT || (process.argv[2] || 3000); port = (typeof port === "number") ? port : 3000; app.listen(port); console.log("Application started. Listening on port:" + port); 我用这样的摩卡和超级特质来testing var app = require("../"); var request = require("supertest").agent(app.listen()); describe("Our amazing site", function () […]

用超级,摩卡和模型进行环回testing

在Google组织发布弃用回送testing的post时,有一个问题,就是提供一个适当的例子,说明如何在没有回送testing的情况下实现testing。 那个线程讲的是使用supertest来代替。 下面是我将Mocha,超模与模型( 来自app.js )结合在一起的尝试。 当我自己运行文件时,结果效果非常好。 但是如果我有另一个testing文件(比如test-teacher.js),那么第一个testing文件(称为test-student.js)就会以我无法描述的奇怪方式开始失败。 我错过了什么东西,或者模型不能像我在下面使用它们一样使用? describe('/Student', function () { var server = require('../server/server') var loopback = require('loopback') var supertest = require('supertest') var request = require('supertest')(server) var dataSource = server.dataSource('db', {adapter: 'memory'}) var Student = dataSource.define('Student', { 'id': Number, 'points': Number }); beforeEach(function () { Student.updateOrCreate({id: 1, points: 5000}); }) it('Post a new […]

用Mocha和SupertesttestingExpress错误

例如,我必须在验收testing中testing服务器错误(Express),例如,验收testing不能(或不应该)发送响应 错误:发送后无法设置标题。 捕获error handling程序的错误和5XX代码响应将提供有价值的反馈在这里,但问题是头已经发送。 这类错误可能并不严重,难以发现,通常可以从日志中找出。 规范是 it('should send 200', function (done) { request(app).get('/').expect(200, done); }); 和testing的应用程序是 app.get('/', function (req, res, next) { res.sendStatus(200); next(); }); app.use(function (req, res) { res.sendStatus(200); }); 快速app实例和请求testing库(即Supertest)在类似情况下进行通信的最适合的方式是什么? 问题不限于Supertest。 如果有包可以解决Supertest无法解决的问题,也可以考虑。

使用mocha和超级testing的NodeJS HTTPS APItesting – “DEPTH_ZERO_SELF_SIGNED_CERT”

我需要使用mocha和super test来testing通过HTTPS提供的API(证书未过期) 这是服务器的要点: … var app = express(); var _options = { key: fs.readFileSync('my-key.pem');, cert: fs.readFileSync('my-cert.pem') }; // Start HTTPS server https.createServer(_options, app).listen(app.get('port'), app.get('ip'), function () { // ok or not logs }); 这是要testing的路线 app.get('/hello',function (req, res) { res.json(200); }); 我试图用这个代码在test/test.js中test/test.js var supertest = require('supertest'), api = supertest('https://localhost:3000'); describe('Hello test', function () { it('hello', function […]

Node.js / Express / Mocha / Supertest Rest API – 空请求正文

我到处寻找解决办法。 我唯一发现的是一个没有回答的post。 我很抱歉,如果我忽略了一些东西。 问题是,当我尝试在/createQuestion API中获取POST值时,正文为空/未定义。 我得到这样的错误Cannot read proprety 'question' of undefined来自API Cannot read proprety 'question' of undefined 。 Express API: app.post("/createQuestion", function(req, res) { var questionType = req.body.question.type; var questionText = req.body.question.text; var questionDuringClass = req.body.question.duringClass; // Do a bunch of stuff res.send(response); }); 考试: var should = require('should'); var assert = require('assert'); var request […]

在node.js服务器上读取supertest / superagent的响应输出缓冲区/stream

我正在尝试编写一个testing,检查API路由是否输出正确内容的ZIP文件。 我正在使用mocha和supertest进行testing,我想实际读取输出stream/缓冲区,读取zip文件的内容,看看内容是否正确。 任何想法我应该怎么做? 当我尝试阅读res.body ,它只是一个空的对象。 request(app) .get( "/api/v1/orders/download?id[]=1&id=2" ) .set( "Authorization", authData ) .expect( 200 ) .expect( 'Content-Type', /application\/zip/ ) .end( function (err, res) { if (err) return done( err ); console.log( 'body:', res.body ) // Write the temp HTML file to filesystem using utf-8 encoding var zip = new AdmZip( res.body ); var zipEntries […]