问题标签 [spyon]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
276 浏览

jasmine - Jasmine spyOn 迁移到 Webpack4 后失败

最近我正在从webpack3 -> 4迁移一个项目karma/jasmine。测试存在问题。在我的测试中,我想导入一个 TypeScript 命名空间对象并模拟它。

但我有一个错误

错误: : createAlertDialog 未声明为可写或没有设置器

我认为,原因在于 WP4 如何处理和声导出

0 投票
1 回答
326 浏览

javascript - What range of problems jest.fn() is intended to solve?

Maybe I am so badly dumb, but I cannot understand what jest.fn() does precisely and how it is used. I am new to testing and I've got basicly most functionality of jest, but jest.fn() makes me shaking.

I tried to refer to docs, watch tutorials, but all I know at the moment is that jest.fn() can spy on a function or a method.

Why do we need it if we can check the returned value with .toBe or .toEqual, check its existence with .toBeDefined() and its parameters with .toBeCalledWith()?

I'm struggling with it for about a week. I am definetely missing something but I have noone to ask.

0 投票
2 回答
484 浏览

javascript - 监视具有多个参数和回调的方法

我有如下方法

我想监视这个方法并想模拟成功回调,我尝试了以下

它的投掷成功不是函数。还尝试了以下

它显示编译错误。

0 投票
1 回答
1904 浏览

angular - 永远不会在带有单元测试 angular + jasmine 和 SpyOn 的 switchMap 中调用函数

我正在尝试进行测试以了解是否调用了服务的函数,但它总是返回我没有调用的函数。我不知道我做错了什么。我想知道的函数是否在switchMap中被调用,这个函数是一个服务。(this.heroSearchService.search(term))

这是显示的消息Expected spy search to have been called.

这是我的组件。

这是我的模拟服务。

这是我的测试文件。在此文件中,这是我创建间谍(spyOn(heroSearchService, 'search').and.callThrough();)的测试,失败的期望是expect(heroSearchService.search).toHaveBeenCalled();

我也运行代码覆盖率,这就是结果。在哪里显示该行正在执行。

在此处输入图像描述

我希望你能帮助我。请原谅我的英语。

0 投票
1 回答
205 浏览

typescript - 我们如何在打字稿测试用例中模拟(spyOn)方法调用?

节省() { .....

this.saveSelectedOnes();

..... }

我已经为 saveSelectedOnes() 方法编写了一个测试用例。在为 save 方法编写测试用例时,我们如何跳过 saveSelectedOnes() 方法调用?

0 投票
0 回答
223 浏览

angular - Promise 的 Jasmine 间谍设置包装了 Observable

我正在为使用 Jasmine 包装可观察调用的 Promise 编写 Angular 单元测试用例。我无法模拟这个承诺来测试它。

零件

测试

问题

我可以看到 orderSpy 被调用,因为它是使用 Observable 设置的。的。但是对communicationService 的调用并没有发生,因为它是在promise 中解决的。

有没有人帮助我模拟我需要测试承诺和可观察组合的事情?

0 投票
7 回答
39823 浏览

reactjs - Jest spyOn 期间的 TypeError:无法设置属性 getRequest 的 # which has only a getter

I'm writing a React application with TypeScript. I do my unit tests using Jest.

I have a function that makes an API call:

import { ROU

I'm writing a React application with TypeScript. I do my unit tests using Jest.

I have a function that makes an API call:

The getRequest function looks like this:

I wanted to try the API function using Jest like this:

The problem is that the line with spyOn throws the following error:

I googled this and only found posts about hot reloading. So what could cause this during Jest test? How can I get this test to pass?


Symbolic definite integral expression does not yield the same result as numerical evaluation

I resolved the definite integral of an expression using sympy in order to get the symbolic expression of the integral. However, when I use the yielded expression in a function, I do not get the same result as given by the numerical evaluation of the integral:

Why do I get such difference?

0 投票
2 回答
5831 浏览

vue.js - Vue 检查动作是否使用 spyOn 调用其他动作

在 Vue 中,我想检查我的商店中的一个动作是否正确地使用 Jest 调用另一个动作spyOn,我尝试了不同的方式,但它似乎不起作用,这是我的代码:

// index.js

// index.spec.js

但是当我运行测试时,这是我得到的输出:

我还有其他地方想测试这种集成(一个动作调用另一个),但它仍然给我这个错误。

0 投票
0 回答
2631 浏览

unit-testing - 使用 jasmine / spyOn 模拟对象的属性

是否可以使用 模拟对象上的某些属性Jasmine .spyOn()

基本上,假设我有一个具有 的Page对象titledeliveryTime并且status我想模拟它,这样我只需设置 title 属性title = 'test' ;,其他两个属性可以具有与我的测试场景无关的任何值(它们的正确类型)。

一些测试假代码将是:

这相当于 C# / Moq 为:

0 投票
2 回答
1604 浏览

node.js - 用于监视低级方法(NodeJS)的开玩笑单元测试

尝试使用 Jest 监视和覆盖两个级别的函数。

测试结果显示,“预期的模拟函数已被调用,但没有被调用。”

mail.send() 来自这里...

它通过 axios 使用 SendInBlue 的 API(为什么我需要模拟)...

我假设 mail.send() 会在另一个模块中调用 sibSendTransactionalEmail(),它会调用 sibSubmit(),这是 jest.spyOn() 的焦点。想知道我哪里出错了。