如何使用请求js和jasminetesting一个使用file upload的nodejs POST Web服务?

我使用nodeJS(express)创build了一个带有JSON文件的web服务,读取它并将其内容作为文档存储在mongodb中。

POST路线工作正常。 代码看起来像这样

var multipart = require('connect-multiparty'); var fs = require('fs'); router.post('/', multipartMiddleware, function(req, res) { fs.readFile(req.files.swagger.path, 'utf8', function(err, data) { req.body.swagger = JSON.parse(data); . . }); }); 

基本上,它从req.files的JSON文件中req.files并放入req.body对象中。

我需要在Jasmine spec文件上做同样的事情。 我能够使用POSTman物理testingWeb服务,但是我需要使用茉莉花来通过spec文件进行testing。 现在,我想检查一下,Web服务是否会抛出200 OK状态,但是会抛出500

到目前为止,我的jasmine-nodetesting套件看起来像这样

 describe("POST /", function() { it("returns status code 200", function(done) { var req = request.post(base_url, function(error, response, body) { expect(response.statusCode).toBe(200); }); var form = req.form(); form.append('file','<FILE_DATA>', { filename : "sample.json", contentType : "text/plain" }); console.log("Form", form); }); }); 

如何以编程方式将file upload到nodejs服务器,以便我可以从我的规范中的req.files文件中提取文件?