【问题标题】:Random "write EPIPE" error随机“写 EPIPE”错误
【发布时间】:2017-11-21 11:45:18
【问题描述】:

我目前正在为 Node.js 应用程序制作一个测试程序,该应用程序将在这里和那里发送 HTTP 请求。 我正在使用 Chai 创建我的测试并使用 Express 来模拟服务器。

这是我的问题:当我运行以下请求时,一切正常......但如果我多次运行它,我会随机出错。 它来来去去,似乎与我的代码中的任何内容都没有关联,所以我什至不知道在哪里看。

这是我的要求:

let chai = require('chai');
let chaiHttp = require('chai-http');
let fs = require('fs');

let should = chai.should();

chai.use(chaiHttp);

describe("Test external service 'TEST'", function () {
    it('POST /testCheck', function testCheck(done) {
        chai.request('http://servicetest:8888')
            .post('/testCheck')
            .attach('files', "server.js")
            .end(function (err, res) {
                if (err) {
                    console.log(err)
                    done();
                } else {
                    res.should.have.status(202);
                    done();
                }
            })
    })
})

何时生效:

Test external service 'TEST'
    ✓ POST /testCheck (51ms)

1 passing (60ms)

随机地,我得到了这个:

Test external service 'TEST'
  1) POST /testCheck


0 passing (50ms)
1 failing

1) Test external service 'TEST'
     POST /testCheck:
   Error: write EPIPE
    at _errnoException (util.js:1031:13)
    at WriteWrap.afterWrite [as oncomplete] (net.js:873:14)

这是另一边的代码:

var express = require('express');
var app = express();

app.post('/testCheck', function(req, res) {
    if ((req.get('content-type') != undefined) && (req.get('content-length') != undefined)) {
        res.status(202);
        res.end();
    } else {
        res.status(400);
        res.end();
    }
});

console.log("Server test started");
app.listen(8888);

我完全不明白发生了什么,并想在处理其他任何事情之前解决这个问题。

【问题讨论】:

  • 我遇到了同样的问题。您找到解决此问题的方法了吗?
  • 如果我没记错的话,它与我的程序启动有关,而所有加载都还没有被其他应该预先运行的程序完成,但现在已经几个月了,我没有真的不知道了

标签: node.js express request mocha.js chai


【解决方案1】:

只需按照文档进行操作即可!

https://github.com/chaijs/chai-http#setting-up-requests

.attach('files', fs.readFileSync('server.js'), 'server.js')

【讨论】:

    猜你喜欢
    • 2014-12-26
    • 2016-04-25
    • 2015-08-17
    • 1970-01-01
    • 2014-04-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-04
    相关资源
    最近更新 更多