茉莉“期望”永远不会错在超级代理“结束”
Jasmine `expect` never wrong in superagent `end`
我的代码没有做它应该做的事情。所有在超测试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.1
和supertest@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文档:异步支持
相关文章:
- 为什么“;未定义的“;在JavaScript中结束循环
- 循环结束/推送到数组之前在页面上呈现EJS
- 在不打开聊天屏幕的情况下制作Zopim-ding代理
- 在另一个函数成功结束后调用该函数
- 在动画结束之前调用函数
- 希望日期开始结束于while循环中的一个房间id的一个数组
- 使用nunjucks时发生块结束错误
- HTML5获取弧的坐标's结束
- 内容结束时停止无限滚动
- 使用jQuery插入HTML页面的第一个项目缺少结束标记
- 如何在视频上显示海报图像使用Jquery结束
- 使用while循环+break是一种可接受的方式;goto;手术的结束
- servlet和代理servlet之间的区别
- 处理第三方库发送的ajax请求的开始和结束事件
- 结束后Javascript倒计时计时器重定向
- 如何在鼠标悬停时将对象从起始位置移动到结束位置,然后在鼠标悬停后再次移动
- 第一个字第一个字符第二个字第二个字符,一直到数组结束
- 从工作日结束到下一个工作日开始的完整日历JS包装时间
- 茉莉“期望”永远不会错在超级代理“结束”
- Node / Express / Request -尝试用参数代理POST请求抛出“结束后写入”