QUnit 使用 sinon mock
时间: 2023-02-08 14:15:31 浏览: 124
QUnit 是一个 JavaScript 单元测试框架。Sinon 是一个 JavaScript 模拟库,可用于创建模拟和存根(mock 和 stub)。
要使用 Sinon mock QUnit,您需要先使用 QUnit 编写测试套件和测试用例。然后,您可以使用 Sinon 的 mock 和 stub 功能来模拟或存根依赖,以便在测试用例中测试单独的代码单元。
例如,假设您有以下代码:
```
function foo(dependency) {
dependency.doSomething();
return 42;
}
```
要使用 QUnit 和 Sinon 对此代码进行单元测试,您可以使用以下测试用例:
```
QUnit.test('foo', function(assert) {
// 使用 Sinon 创建模拟依赖项
const mockDependency = sinon.mock(dependency);
// 预期依赖项的 doSomething 方法将被调用一次
mockDependency.expects('doSomething').once();
// 调用 foo 并检查返回值
const result = foo(mockDependency.object);
assert.equal(result, 42);
// 验证所有预期方法已被调用
mockDependency.verify();
});
```
在上面的测试用例中,Sinon 的 mock 功能用于创建一个模拟依赖项,该依赖项有一个名为 doSomething 的方法。预期这个方法会被调用一次,然后调用 foo 并检查返回值是否为 42。最后,使用 mockDependency.verify() 验证所有预期的方法都已被调用。
阅读全文