我用摩卡,柴,卡玛,西农,Webpack进行单元测试。
我按照这个链接来配置React Redux代码的测试环境。
我可以成功地测试我的操作和还原javascript代码,但是当涉及到测试我的组件时,它总是会抛出一些错误。
import React from 'react';
import TestUtils from 'react/lib/ReactTestUtils'; //I like using the Test Utils, but you can just use the DOM API instead.
import chai from '
我想检查是否使用正确的参数调用了"res.render“。
it("Renders the page where a new user can be created", done => {
const spy = sinon.spy(ejs, "render");
chai
.request(app)
.get("/users/create")
.end((err, res) => {
res.should.have.status(200);
我正试图在与骨干应用程序一起使用requ.js/mocha/chai/sinon的过程中爬升学习曲线。当我运行时
define([
"chai",
"sinon"
], function(chai, sinon){
var expect = chai.expect;
describe("Trying out the test libraries", function(){
describe("Chai", function(){
it("should
请不要建议使用Sinon。我想让崔-间谍,特别是chai.spy.on与你的帮助。基本上,我有这个规格。在PatientController的初始化方法中,调用this.initializePatientEvents();
beforeEach(function() {
this.patientController = new PatientController({model: new Backbone.Model(PatientModel)});
});
it('executes this.initializePatientEvents', function () {
我看到一些,但我的设置略有不同,我找不到测试它的好方法。
我正在尝试测试我的express app路由是否指向正确的控制器方法。
例如:
//server.js, base application
var express = require("express");
var app = express();
require("./routes.js")(app);
...
//routes.js
var menuController = require("./controllers/menu.js");
module.exports = fu
我想监视一个子函数,它被导出为一个命名的导出,但是,似乎我们不能监视它。
假设我在add中有两个名为multiply和operations.js的函数,并将它们导出为名为exports:
const add = (a, b) => {
return a + b
}
const multiply = (a, b) => {
let result = 0
for (let i = 0; i < b; i++) {
result = add(a, result)
}
return result
}
export { add, multiply }
我刚开始写节点测试.这是我第一次尝试编写gulp插件的单元测试:
var chai = require('chai');
var spy = require('chai-spies');
var es = require('event-stream');
var File = require('vinyl');
var mock = require('mock-fs');
var sinon = require('sinon');
var sinonChai = require("sinon
我使用chai-spies来确保我的控制器中的函数被调用,这是我的测试:
it('Should show right season and analysts when competition has been selected', function (done) {
scope.selectedCompetition = scope.competitions[3];
var spy = chai.spy(scope.selectedCompetitionChanged);
scope.selectedCompetitionChanged();
e
我正在尝试创建一个构造函数上的间谍,看看它是否会被调用--下面是我的测试。我使用sinon-chai,所以语法是有效的,但是两个测试都失败了。
var foo = function(arg) {
};
var bar = function(arg) {
var baz = new foo(arg);
};
it('foo initialized inside of this test', function() {
var spy = sinon.spy(foo);
new foo('test');
expect(spy).to
我很难为以下nodejs代码编写测试,这些代码使用了AWS和graphicsmagick。我还试图寻找一些例子,说明如何为async的waterfall方法编写测试,但没有任何明确的结果。
// dependencies
var async = require('async');
var AWS = require('aws-sdk');
var gm = require('gm').subClass({ imageMagick: true });
var util = require('util');
// get refer
我想使用mocha,chai和sinon.In测试我的promise resolve处理器和promise rejection处理器,另外,我已经设置了sinon-chai插件和sinon-stub-promise插件。
这是我的require语句块:
var chai = require('chai');
var expect = chai.expect;
var sinonChai = require('sinon-chai');
chai.use(sinonChai);
var sinon = require('sinon');
var s
在Mocha中是否有一种方法来测试某个函数是否调用了特定的方法或外部函数?
我正在与柴一起使用Mocha,但对任何其他断言库都开放。
好的,所以用sinon测试是否调用了一种方法是非常容易的。不过,我不确定是否测试是否调用了外部函数。因此,我更新了示例,以表示一些更“真实的世界”。我正在开发一个节点应用程序,所以foo.js和bar.js都是模块。
示例:
foo.js
var bar = require('bar');
var xyz = function () {};
var Foo = module.exports = function () {
this.bar
我有这样的情况: user.js: var a = function() {
function b() {
return 5
}
}
module.exports = a 如何侦测函数b() 在我的test.js文件中,我有如下内容: let us = require('../user)
chai.spy.on(us, 'b', returns => 3); 但这不管用。如何使用chai解决此问题?
背景
我得到了一个通过套接字发送消息的小函数,我正在尝试使用mocha和sinon来测试它:
const myFun = socket => {
socket.emit("first", "hello World!");
//some random amount of time passes
socket.emit("second", "hello Moon!");
//other random amount of time passes
socket.emit("thi
如何使用Mocha,Chai,Sinon创建测试来检查一个函数是否触发了另一个函数。我想检查一下funcToTrigger是否会触发funcToSpy
import { expect } from 'chai';
import sinon from 'sinon';
it('one function should trigger other function', () => {
const funcToSpy = () => {
console.log('I should be called');
}
我正在测试的代码相当简单:当条件被验证时,它调用一个方法。否则,它将调用第一个方法中包含的另一个方法作为属性。
app.js:
function test (fn, isActivated) {
if (isActivated) {
return fn('foo')
}
return fn.subFn('bar')
}
var fn = function (p) { return p }
fn.subFn = function (p) { return 'sub-' + p }
var resFn = test(fn