问题标签 [supertest]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
testing - supertest 是否与 express.js 2.5.8 兼容?
我正在使用 express.js 版本 2.5.8(来自遗留代码),并希望使用 supertest 测试路由加载。我在服务器运行时遇到问题,但没有停止。我使用 运行测试jasmine-node
,这表明我的断言成功。但是,控制台显示该进程仍在运行。
此示例改编自可能使用 express.js 3.xx 的示例。我的假设是 express 服务器的行为不同,导致当请求在测试中终止时它不会关闭。我不确定如何纠正这个问题。
testing - 观看时摩卡测试失败(“毕竟”:done()多次调用)
我有一个 Mocha 测试在第一次运行时可以通过,但是当进行更改并且 Mocha 第二次重新运行测试(使用--watch
标志)时,它会失败。我的测试:
错误:
node.js - 如何在node.js中的compoundjs应用程序中模拟会话对象
我在 node.js 中有一个复合 js 应用程序。对于某些操作,我有一个过滤器检查“session.user”值的存在,该值仅在成功验证后才会填充。但是,每当为此类操作编写单元测试用例时, session.user 的值就会变得未定义。我使用 supertest、sinon 模块对操作进行获取、发布请求,但由于“session.user”值的未定义值,它不会进行身份验证并被重定向到正确的操作。请帮助我,因为我遇到了同样的问题。
请指导我究竟需要模拟什么,以便我可以验证 session.user 值。提前致谢,
等待肯定的答案,
谢谢,
node.js - 用于测试 Express 应用的有状态交互
我用 express 写了一个简单的 JSON api,我正在尝试使用 mocha 进行一些黑盒测试。全面测试 API 需要以不同用户身份进行身份验证,因此针对特定功能的每次测试至少由两个请求组成:登录操作和一个或多个测试实际功能的经过身份验证的请求。
我还没有找到任何类似于django.test.client
模拟 HTTP 客户端和服务器之间的状态交互的库。Supertest似乎很流行,但与django测试客户端相比,它是非常低级的。这就是我用它编写一个简单的经过身份验证的测试的方式(请原谅我的咖啡脚本):
这真的是执行交互的最干净的方式吗?是否有任何库可以帮助我处理异步性(在 99% 的情况下,除了简单的测试序列化之外,我不需要任何东西,回调只是令人困惑)和状态?会是这样的:
如果不存在类似的东西,我应该自己写 :-) 对上下文的依赖是因为这些天我使用了太多的 ZappaJS,并且感谢 CoffeeScript 的胖箭头,这根本不是一个坏习惯。
node.js - 是否可以在 NodeExpress 中以某种方式全局访问 req 和 res 对象?
req.session.username = 用户名;
我正在使用 supertest 来测试路由处理。在我的登录处理代码中,如果用户成功登录,我有以下内容 -
但是在超测回调函数中,我无权访问 req 对象。
我想添加类似的内容,expect(req.session.username).toBe('dummy_username')
但显然当我无法使用 req 时我不能这样做。那么有没有办法引用 req 对象呢?
node.js - 协助 nodejs/express/supertest
NodeJS 和 Express3 的新手...完成我在以下位置找到的教程:
http://www.scotchmedia.com/tutorials/express/authentication
这似乎很有帮助,但我似乎在通过超级测试时遇到了一些困难。
这是测试:
/signup 路由由以下人员处理:
export.signup = function (req, res) {
}
困难在于验证总是失败。
我的 app.j 包含以下使用语句:
没有想法......似乎 req.body.xxx 没有绑定......
感谢任何指导以降低我的无知程度。
干杯
express - mocha/express/supertest: '错误:done() 调用了多次'
我正在尝试使用 mocha 和 supertest 在 express 中测试我的路线。不幸的是,我似乎无法测试我的重定向。
这是相关代码
我的 app.js 有这个:
app.get('/', routes.index);
我的 routes.index 看起来像这样:
我的登录页面是:
运行测试时出现以下错误,这让我认为它实际上运行了不止一次:
我已经查看并发现了一些可能相关的错误,但它们已经快一年了,我遵循建议的解决方法无济于事: https ://github.com/visionmedia/supertest/issues/11#issuecomment-20251424 和express 使用的测试套件: https ://github.com/visionmedia/express/blob/master/test/res.redirect.js 我在这里不知所措。谢谢
regex - Mocha Supertest json响应正文模式匹配问题
当我进行 API 调用时,我想检查返回的 JSON 的结果。我可以看到正文和一些静态数据正在被正确检查,但是无论我在哪里使用正则表达式,事情都会被破坏。这是我的测试示例:
这是输出的图像:
关于使用正则表达式进行模式匹配 json 正文响应的任何想法?
javascript - Node.js supertest 发布 gzip 压缩数据
我想编写一个测试来将一些压缩数据发布到一个 url,如下所示,但它不起作用:
我认为问题在于 send 不接受缓冲区。不过,我仍然希望让 expect() 和 end() 方法工作。
node.js - 重定向后使用 supertest 检查 didFlash
我正在尝试测试当用户销毁回调收到用户控制器错误时会发生什么。当 destroy 收到错误时,它会执行以下操作:
这是到目前为止的测试:
我已经看到了这个问题,并且该res.header..
部分按预期工作。但是,我仍然对如何测试重定向后发生的闪存感到困惑。