Articles of 摩卡

节点摩卡数组应该包含一个元素

我想做一个简单的断言 knownArray.should.include('known value') 该数组是正确的,但我根本无法找出正确的断言用来检查数组是否有这个值(索引不重要)。 我也尝试了should.contain但是这两个都抛出一个错误,即Object #<Assertion> has no method 'contain' should.contain Object #<Assertion> has no method 'contain' (或'include' ) 我怎样才能检查一个数组包含使用should的元素?

mongoose模型testing需要模型

我有一个testing我的mongoose模型的问题 我有一个像 应用 楷模 地址 用户 组织 testing 用户和组织都需要知道型号Address。 我的模型结构如下: module.exports = function (mongoose, config) { var organizationSchema = new mongoose.Schema({ name : { type : String }, addresses : { type : [mongoose.model('Address')] } }); var Organization = mongoose.model('Organization', organizationSchema); return Organization; }; 在我的正常的应用程序,我需要地址之前要求用户和组织,一切都很好。 我现在为用户和组织编写testing。 为了让地址模型注册,我打电话require('../models/Address.js')这工作正常,如果我运行一个testing。 但是,如果我在批处理中运行所有testing,我得到一个错误,因为我试图注册地址两次。 OverwriteModelError: Cannot overwrite Address model once compiled. […]

如何通过Passport / Facebook战略authenticationSupertest请求/?

我使用Passport.js进行身份validation(Facebook策略),并使用Mocha和Supertest进行testing。 我如何创build一个会话,并与Supertest Facebook的策略进行authentication的请求? 以下是用户未login时的示例testing: describe 'when user not logged in', -> describe 'POST /api/posts', -> it 'respond with 401', (done)-> request(app). post(API.url('posts')). set('Accept', 'application/json'). send(post: data). expect('Content-Type', /json/). expect(401, done) 谢谢你的build议:D

在sinon中断言recursion调用的次数

我有以下队列消费者类通过承诺recursion运行: "use strict"; var queue = require("./queue"), helpers = require("./helpers"), vendors = require("../config/vendors"), queueConf = require("../config/queue"); function Consumer() { this.queue = new queue.TaskQueue(); this.currentItem = null; this.port = null; this.payload = null; } Consumer.prototype.payloadSuccessCb = function (data) { this.payload = data; this.run(); }; Consumer.prototype.failureCb = function (data) { console.error(data); throw new Error(data); //TODO: Continue queue […]

在整个摩卡testing之前运行asynchronous代码

我正在寻找一种方法来在整个摩卡testing之前运行asynchronous代码。 下面是一个testing的例子,它使用了一系列参数和期望值,并循环了这个数组中的所有项来产生函数断言。 var assert = require('assert') /* global describe, it*/ var fn = function (value) { return value + ' ' + 'pancake' } var tests = [ { 'arg': 'kitty', 'expect': 'kitty pancake' }, { 'arg': 'doggy', 'expect': 'doggy pancake' }, ] describe('example', function () { tests.forEach(function (test) { it('should return ' + test.expect, […]

在Visual Studio Team Services Build中启动摩卡testing

我不能为我的生活find文档或教程开始在Visual Studio在线构build摩卡咖啡unit testing。 我有在VSO中构build并正在部署到Azure的node.js应用程序。 这一切都奇妙的作品。 我似乎无法弄清楚如何通过构build过程启动spec文件。 这是怎么做的? 是否有文档可用,我失踪了。

找不到模块'ts-node / register'

我想用摩卡来testing我的TypeScript / Angular2项目。 我尝试使用ts-node,如下所述: npm install -g ts-node 但运行时 mocha –require ts-node/register -t 10000 ./**/*.unit.ts 我得到一个错误 找不到模块'ts-node / register' 我在这里错过了什么?

摩卡'每个挂钩'消息之前红色。 我怎么知道具体是什么错误?

在失败的testing之前,我有以下消息: 1) "before each" hook 这是整个信息 。 这是红色的,这让我觉得在每个钩子之前有什么问题,但我不确定错误是什么。 它可能是: 超时失败 一个失败的断言 抛出错误 我怎么知道错误是什么? beforeEach()通常执行得非常好。

在node.js中testing响应?

我刚刚下载了mocha.js并用expect.js运行了一些基本的testing,以确保它正常工作。 但是在我的node应用程序中testing特定url的响应呢? 也就是说,我如何testing我从导航到/users得到什么答案? 使用mocha.js的前身Expresso,我可以做assert.response(server, req, res|fn[, msg|fn])并testing响应。

如何configurationMocha的TeamCity构build?

我有一个项目,我正在build立通过CI的团队。 该项目本身是一个nodejs应用程序,它包含了用mocha写的testing,我们通过jscoverage覆盖。 在构buildconfiguration我设置我有3个build立步骤发生在签入。 调用jscoverage.exe对我覆盖的项目中的文件夹。 呼叫摩卡运行testing从步骤1 jscovered文件并输出到html-cov记者 将生成的coverage.html报告移到公共Web目录中以供稍后浏览。 生成目前失败的步骤2:摩卡“不存在目录C:\ NodeJS \ MeasuresAPI 我已经确保在系统环境path中包含mocha和所有节点包,并且能够在命令提示符下访问它们,但TeamCity似乎看不到它们。 对于jscoverage.exe,我不得不包括完整的path。 用摩卡,我尝试了包括我的节点全局安装的path摩卡安装的path,但它给了我一个错误: “.. \ node_modules \ mocha \ bin \ mocha”(在目录“C:\ NodeJS \ MeasuresAPI”中):CreateProcess错误= 193,%1不是有效的Win32应用程序 任何人有任何Teamcity和摩卡的经验,以及如何让他们打好? 或任何想法与一个nodejs,摩卡堆栈的持续集成?