茉莉“期望”永远不会错在超级代理“结束”

Jasmine `expect` never wrong in superagent `end`

本文关键字:代理 结束 不会错 期望 永远 茉莉      更新时间:2023-09-26

我的代码没有做它应该做的事情。所有在超测试end()回调函数中的Jasmine expect()都通过了,即使它们不应该通过。

const app = require('../server')
const request = require('supertest')
describe('Client', function() {
  const agent = request.agent(app)
  it('connects to the server', function() {
    agent.post('/users/register/foobar').end(function(err, res) {
      done()
      expect(true).toBe(false) // Doesn't fail
    }
  })
})

提取自package.json:

"devDependencies": {
  "jasmine": "^2.4.1",
  "supertest": "^2.0.0"
}

npm list给出的实际版本为jasmine@2.4.1supertest@2.0.0

我猜end()从来没有调用过它的函数,但是我昨天才开始做这些,我不知道该怎么解决这个问题。

你看到我的错误了吗?


<标题>编辑

按照建议,我交换了行,把done()放在最后,但是仍然没有改变。

我认为你使用函数"done"是错误的。试一试:

it('connects to the server', function(done) {
agent.post('/users/register/foobar').end(function(err, res) {
  expect(true).toBe(false); // Doesn't fail
  done();
}  })
有关详细信息,请查看jasmine文档:jasmine文档:异步支持