testing下载是否成功与超级

我正在用超级testing我的API端点,它工作的很好,但我不知道如何testing文件下载是否成功。

在我的路线文件中,我已经定义了端点:

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('File found!'); return res.download(att.getPath(), att.name); } 

然后,在我的testing文件中,我尝试以下内容:

 describe('when trying to download file', function() { it('should respond with "200 OK"', function(done) { request(url) .get('/api/attachment/' + attachment._id + '/file'); .expect(200) .end(function(err, res) { if (err) { return done(err); } return done(); }); }); }); 

我知道确定该文件被find,因为它注销了File found! 。 它也工作正常,如果我尝试手动,但由于某种原因,摩卡返回Error: expected 200 "OK", got 404 "Not Found"

我已经尝试了不同的mimetypes和supertest .set("Accept-Encoding": "*") ,但没有任何作用。

有人知道怎么做吗?

       

网上收集的解决方案 "testing下载是否成功与超级"