Sinon.JS 命令行命令
Sinon.JS Command Line Commands
我正在努力学习Sinon.JS。我已经使用 npm 安装了 Sinon.JS。在文档中的任何地方我都找不到任何命令行命令。在 sinonjs.org 网站上,"documentation" 是这样的:
function once(fn) {
var returnValue, called = false;
return function () {
if (!called) {
called = true;
returnValue = fn.apply(this, arguments);
}
return returnValue;
};
}
it('calls the original function', function () {
var callback = sinon.fake();
var proxy = once(callback);
proxy();
assert(callback.called);
});
如何使用Sinon.JS运行这个测试?
Sinon 是一个提供 "standalone test spies, stubs, and mocks for JavaScript."
的库
它"works with any unit testing framework."
关键思想是它是一个在测试框架内工作的库。
它将与任何主要的 JavaScript 测试框架一起工作,例如 Jest, Jasmine, Mocha 等
例如,要使用 Sinon
和 Jest
执行问题的测试,请执行 npm install --save-dev sinon
添加 Sinon
,然后执行 npm install --save-dev jest
添加Jest
,并使用以下代码添加一个测试文件(类似于 src/code.test.js
):
import * as sinon from 'sinon';
function once(fn) {
var returnValue, called = false;
return function () {
if (!called) {
called = true;
returnValue = fn.apply(this, arguments);
}
return returnValue;
};
}
it('calls the original function', function () {
var callback = sinon.fake();
var proxy = once(callback);
proxy();
expect(callback.called).toBe(true); // SUCCESS
});
请注意,在本例中,最后一行的 assert
是通过来自 Jest
的 expect
断言实现的。
然后 运行 Jest
并且它将 使用 Sinon
当它 运行s code.test.js
.
我正在努力学习Sinon.JS。我已经使用 npm 安装了 Sinon.JS。在文档中的任何地方我都找不到任何命令行命令。在 sinonjs.org 网站上,"documentation" 是这样的:
function once(fn) {
var returnValue, called = false;
return function () {
if (!called) {
called = true;
returnValue = fn.apply(this, arguments);
}
return returnValue;
};
}
it('calls the original function', function () {
var callback = sinon.fake();
var proxy = once(callback);
proxy();
assert(callback.called);
});
如何使用Sinon.JS运行这个测试?
Sinon 是一个提供 "standalone test spies, stubs, and mocks for JavaScript."
的库它"works with any unit testing framework."
关键思想是它是一个在测试框架内工作的库。
它将与任何主要的 JavaScript 测试框架一起工作,例如 Jest, Jasmine, Mocha 等
例如,要使用 Sinon
和 Jest
执行问题的测试,请执行 npm install --save-dev sinon
添加 Sinon
,然后执行 npm install --save-dev jest
添加Jest
,并使用以下代码添加一个测试文件(类似于 src/code.test.js
):
import * as sinon from 'sinon';
function once(fn) {
var returnValue, called = false;
return function () {
if (!called) {
called = true;
returnValue = fn.apply(this, arguments);
}
return returnValue;
};
}
it('calls the original function', function () {
var callback = sinon.fake();
var proxy = once(callback);
proxy();
expect(callback.called).toBe(true); // SUCCESS
});
请注意,在本例中,最后一行的 assert
是通过来自 Jest
的 expect
断言实现的。
然后 运行 Jest
并且它将 使用 Sinon
当它 运行s code.test.js
.