Articles of nodeunit

有没有办法通过maven / ant运行nodeunittesting

我为nodeunit中的node.js应用程序创build了一些unit testing。 我希望能够通过maven / ant来运行testing,因为我打算通过Jenkins运行它们。 有没有人有这样做的成功?

Node.js上Geddy MVC的unit testing框架

我正在Heroku上的Node.js上运行Geddy MVC框架,并使用Postgres数据库。 我似乎无法find任何支持Geddy的node.js的unit testing框架。 我试过nodeunit,茉莉花和其他一些,但似乎没有与geddy(说它是未定义的 – 我想是因为它不知道如何导入所有必需的文件)。 我知道Geddy提供了他们的杰克testing工具,但它似乎也不工作。 它给了我这个输出: ReferenceError: geddy is not defined 任何帮助将不胜感激。 也在寻找一个代码覆盖的工具,将与我开始工作的unit testing框架一起工作。 谢谢! 编辑:我的testing都开始这个头来导入所需的模块: var assert = require('assert') , tests , Activity = geddy.model.Activity; 而Activity的导入失败,上面的ReferenceError,所以它甚至从来没有尝试我的testing。 这是我写的一个nodeunittesting var tests , User = geddy.model.User; exports['addUser1'] = function (test) { var user = User.create({username: 'Greg', password: 'MyPassword!', confirmPassword: 'MyPassword!', familyName: 'LastName1', givenName: 'FirstName1', […]

如何在Nodeunit中显示完整的堆栈跟踪?

当nodeunit捕获错误时,如何显示完整的堆栈跟踪? 例如,我的testing是抛出: ✔ event delete – basic ✔ delete – errors Fatal error: undefined is not a function 如何让nodeunit告诉我undefined被调用的地方?

使用node.js,nodeunit和ES6 / Harmony

现在我有一个使用node.js和nodeunit的unit testing构build环境。 非常高兴与这些,但现在我需要TCO。 我知道TCO已经join了ES6标准,但我不知道如何让它与我的项目一起使用。 尝试了和谐标志,但无法使它与nodeunit一起工作。 任何帮助? 得到了在这里使用和谐的想法: Node.js尾巴优化:可能与否? 我喜欢这些家伙想的方式,但是我不能做第一个答案,因为那么其他在这个项目上的工作也将被迫改变他们的nodeunit.cmd文件(这可能搞砸了他们正在处理的其他项目),第二个答案似乎不起作用: NodeUnit启用和声function

我可以从cloud9-ide运行nodeunit吗?

我想知道是否可以在Cloud9 IDE中运行nodeunittesting(就像我在Eclipse中运行JUnittesting一样)。 ps:我使用本地Cloud9 IDE,而不是来自c9.io 谢谢

滥用Javascript:是否可以为nodeunit使用辅助方法?

节点单元是否有可以放置在exports.MYTEST中的辅助方法? 我目前正在做这样的事情: exports.test = { setup: function(test) { this.foo = "bar"; }, helper: function(test) { that.foo = 'baz'; }, myTest: function(test) { that.helper(test); } }; var that = exports.test; 我知道我滥用JavaScript,但目前这工作得很好。 在每个人都完成了关于unit testing不应该涉及这样的事情之前,我只是想这样做,因为我觉得有这个对象中存在的辅助方法是非常有帮助的。

用模拟函数replacenodejs模块中的函数

我正在创build一个包含API的nodejs中的小项目。 我正在使用nodeunit编写一些unit testing,并且需要向模块中注入各种模拟函数(例如模拟向服务器发出HTTP请求并输出各种不同响应以testing我的代码的函数)。 我的问题是如何将这些function注入到我的模块? 我已经确定了两个理论上应该如下工作的方法: 方法1 重命名我想要replace的模块的文件夹,并添加一个包含我想要注入的代码的新文件夹,例如: ./node_modules/request -> ./node_modules/request.tmp ./tests/myRandomFunction -> ./node_modules/request 进行testing后,我会做相反的事情: ./node_modules/request -> ./tests/myRandomFunction ./node_modules/request.tmp -> ./node_modules/request 这看起来很诡异,不是我想尝试的东西,即使理论上它应该工作。 方法2 这是我使用模块初始化的首选方法。 我的模块需要一个JSON对象,可以包含各种选项,如下所示: var module = require('./module')({ option1: '', option2: '', … }); 我打算为这个名为'_testing'的JSON对象添加一个键,其中包含各种函数的JSON对象的值,例如: var module = require('./module')({ _testing: { request: function() {return false;} } }); 在我的模块中,我可以做到以下几点: 如果this._testing存在并且是一个JSON对象 循环this._testing 对于这个._testing中的每个键 用与其值相同的名称replace该函数的值,例如 eval(''+key+' = this._testing.'+key) […]

咕噜的Nodeunit找不到模块“点击”

所以,在本教程中 ,我决定添加一些unit testing到我的node.js应用程序。 我gruntfile似乎是好的,当我inputgrunt nodeunit我唯一的testing运行得很好,但之后,它崩溃与错误Fatal error: Cannot find module 'tap' : $> grunt nodeunit Running "nodeunit:all" (nodeunit) task Testing db.test.js .OK Fatal error: Cannot find module 'tap' 我对这个模块一无所知,但是在googliing之后,似乎是nodeunit需要的东西。 实际上,存在$MY_NODE_APP/node_modules/nodeunit/node_modules/tap ,当我在$MY_NODE_APP/node_modules/nodeunit启动节点并在交互式控制台中inputrequire('tap')时,的东西,给我一个印象,它的工作原理应该。 所以,显而易见的问题是:为什么我得到这个错误,我该如何解决? Gruntfile: module.exports = function(grunt) { grunt.initConfig({ nodeunit: { all: ['./**/*.test.js'] } }); grunt.loadNpmTasks('grunt-contrib-nodeunit'); }; 更新 :安装了我的项目,但它也没有帮助。

Nodeunit没有检测到done()

试图加快node.js和nodeunit的速度,但是在nodeunit中发现一个问题,在其中一个testing中没有看到对test.done()的调用。 代码: // Added for clarity. var client = require("restify").createJsonClient({ "version": "*", "url": "http://localhost:" + server.Port }); exports["tests"] = { "setUp": function (callback) { server.StartServer(); callback(); }, "tearDown": function (callback) { callback(); }, "CanIHaveSomeTeaPlease?": function (test) { test.expect(4); client.get("/tea", function (err, req, res, data) { test.equal(err.statusCode, 418, "Expected ImATeapot Error."); test.equal(err.message, "Want a biscuit?", "Expected […]

npm安装无法find新版本

我只是试图做一个mac上的sudo npm安装,具有以下依赖关系: "devDependencies": { "grunt": "~0.4.2", "grunt-contrib-jshint": "~0.6.3", "grunt-contrib-nodeunit": "~0.6.3", "grunt-contrib-uglify": "~0.6.3" }, 但npm不断告诉我: npm ERR! notarget No compatible version found: grunt-contrib-uglify@'>=0.6.3-0 <0.7.0-0' npm ERR! notarget Valid install targets: npm ERR! notarget ["0.1.0","0.1.1","0.1.2","0.2.0","0.2.1","0.2.2","0.2.3","0.2.4","0.2.5","0.2.6","0.2.7","0.1.1-rc5","0.1.1-rc6"] 同样的事情与uglify发生,当我确定我想要的版本存在,我的Windows上的朋友能够安装相同的package.json就好了 我很担心我的版本,所以我安装了最新版本的节点和npm,并运行sudo npm update npm -g,没有解决问题 109 error node -v v0.10.22 110 error npm -v 1.3.15 111 error code ETARGET 112 verbose […]