Jestjs 是否存在将使console.warn上的测试失败的jest配置?

如何将jest测试配置为在出现警告时失败 console.warn('stuff'); // fail test 我最近使用v19.0.0中引入的warn方法来模拟console(通过global上下文/对象访问) 然后可以期望模拟的警告未被调用,如下所示 describe('A function that does something', () => { it('Should not trigger a warning', () => { var warn = jes

Jestjs jest模拟依赖生成器函数

我很难模拟一个简单的依赖生成器函数 //generatorFunction.js export default ()=>({execute: (arg1)=>Promise.resolve(arg1)}) //actualFunction.js import generate from 'generatorFunction' export default (arg1)=>generate(arg1) //actualFunction.test.js import actua

Jestjs Jest测试初始条件

假设我有一个文件file1.js,其中包含: const a = true; let b; if (a) { b = c; } if (!a) { b = d; } 现在,当我在这个文件上运行测试用例时,我的第一个条件就被覆盖了。是否有任何方法可以通过将a设置为false来覆盖第二个条件,或者我是否应该更改代码,以便调用具有不同值的方法来测试每种情况,例如: const a = true; getBVal(a) { return a ? c : d; } let b

Jestjs 处理过程。使用Jest退出(1)

我正在使用Jest为NodeJS编写单元测试。 我的一部分代码使用process.exit(1)退出,因此当尝试使用Jest测试它时,当到达此行时,测试终止,错误命令失败,退出代码为1。这是process.exit(1)的默认行为 谁能告诉我如何使用Jest来处理这个场景并继续进行其他测试吗?我认为,抛出一个错误会为您提供一个更易于维护和测试的代码。比如: if (err) { throw new Error("Some relevant error msg") } 如果您坚持使用proc

Jestjs 是否可以在玩笑中激活覆盖,但不在控制台中打印?

来自Karma,我喜欢打开一个浏览器选项卡,不时检查测试的代码覆盖率。使用jest是否可以生成覆盖率文件夹,而不在控制台中打印覆盖率 我还没有找到任何有关此的cli或配置。您可以为类似这样的笑话设置coverageReporters配置: jest.config.js: module.exports={ // ... 封面传送器:['json','lcov','clover'] }; 默认情况下,coverageReporters配置的值是[“json”、“lcov”、“text”、“clov

Jestjs aws sdk模拟是否支持模拟aws SSM(参数存储)?

我试图用下面的代码使用AWS sdk模拟AWS SSM,但不起作用。不抛出错误,在调用getParametersByPath时从实际存储中获取值 我看过aws sdk模拟文档,但似乎没有模拟ssm的示例,它是否受支持 AWSMock.mock('SSM', 'getParametersByPath', (params, callback) => { callback(null, mockResponse); }); 我在尝试执行类似操作时遇到了这个问题:当尝试模拟SSM功能时,资源仍

Jestjs 如何在玩笑中全局模拟lodash/deep函数

我正在控制器中使用lodash/deep函数。对控制器执行jest测试时,会出现以下错误: 所有lodash函数都会给出错误 TypeError:cloneDeep_1.default不是函数 下面是示例代码 import cloneDeep from 'lodash/cloneDeep' static transformBoardBasicInfo (rawBoard:any): any { const clonedBoard: any = cloneDeep(rawBoard) a

Jestjs 如何测试useRef';现在,用笑话和酶?

我有一个Demo.tsx文件,其代码如下: const aRef = useRef() as RefObject<HTMLDivElement>; const bRef = useRef() as RefObject<HTMLDivElement>; const a = 10; const b = 10; useEffect(() => { if (!!aRef.current && !!bRef.current) { const tem

Jestjs WaitforWon';不要再次运行回调

我试图测试waitFor的说法,但当我使用承诺时,回调不会再次运行,即使它被拒绝 waitFor可能会多次运行回调 如果您有模拟API调用和 你需要等待你的假承诺全部解决 如果在waitFor回调中返回承诺(显式或 隐式地使用异步语法),则waitFor实用程序将不会调用 你再回电话,直到承诺被拒绝。这允许您 等待必须异步检查的内容 @EstusFlask你什么意思?不会复制我的问题?我专门运行了这段代码,我遇到了上面的问题。我的意思是其他人(不是你)可能无法复制它。我专门运行了这段代码,它按照

Jestjs Mock.mockImplementation()不工作

我有一个服务班 Service.js class Service { } export default new Service(); 我正试图为此提供一个模拟实现。如果我使用这样的东西: jest.mock('./Service', () => { ... my mock stuff }); 它工作正常,但是我无法访问在mock之外声明的任何变量,这有点限制,因为我想重新配置mock返回的内容,等等 我尝试了这个(受另一篇StackOverflow文章的启发:) 不幸的是,当我尝试运行

Jestjs 开玩笑地有条件地运行测试

我一直在比较函数范式和面向对象范式 作为其中的一部分,我想做一些性能测试 我现在有一些类似的测试: it("Some long running performance test", () => { const result = myFunctionWithLotsOfData(); }); 现在,我只是打印这段代码运行的时间(大约5000毫秒) 我喜欢对它提供的所有断言和模拟功能使用Jest,以及它的实时重新加载等等 但是,我不希望这些测试一直

Jestjs 如何使用后钩在开玩笑黄瓜

我使用的是无服务器应用程序的黑盒测试,因此在每个场景之后,我都需要一个拆卸步骤,以便清理测试期间生成的数据(在大多数情况下是删除db条目) 然而,它看起来并不是以玩笑的方式实现的,所以我想知道在每个场景之后实现拆卸步骤的最佳解决方案是什么

Jestjs “如何测试”;这";开玩笑地调用上下文?

如何在jest中测试函数是否使用正确的上下文调用 我只能找到如何测试传入的参数。但是它没有测试这个上下文,我也找不到任何其他用于此上下文或示例的API。JEST 创建一个函数的名称,然后使用 test('this-using-Jest'的值,()=>{ 常数foo={ 名称:“foo”, func:function(){ return`my name is${this.name}`; } } const mockFunc=jest.spyOn(foo,'func');//监视foo.func()

Jestjs 模拟取笑测试“;无效的json响应”;和“;未经处理的承诺拒绝”;错误

我正在尝试对我的一些redux saga生成器进行单元测试,但遇到了一些错误,我不知道如何解决。我正在使用createreact应用程序,所以我的测试套件是Jest和Enzyme 一个基本的例子: 设置:src/setupTests.js import 'jest-enzyme' import { configure } from 'enzyme' import Adapter from 'enzyme-adapter-react-16' global.fetch = require('jes

Jestjs 带有Dialogflow连接器的Botium绑定适用于Mocha,但不适用于Jest

我已经按照安装说明进行了操作 当我使用npm run mocha时,我的测试车队使用botium.json中的dialogflow设置成功运行。 如果我对Jest(我的首选框架)遵循相同的流程,则该流程始终会失败,并出现以下错误: Loading Botium plugin failed at Validate.Validate.then (node_modules/botium-core/src/containers/PluginConnectorContainer.js:99:15) 如果

Jestjs NestJs:单元测试模拟函数是如何有条件还是有许多返回案例

如果我想在未找到用户的情况下使用此方法,则无法使用,因为已经使用值{u id:'5e81f97e6708f22e5c4697d2',全名:'user'}对findOne进行了模拟,但在这种情况下,我希望findOne返回未定义。 多谢各位 beforeach(异步()=>{ 常量模块:TestingModule=等待测试。createTestingModule({ 进口:[ PassportModule.register({defaultStrategy:'jwt'}), JwtModule.r

Jestjs 如何使用jest对WebWorker代码进行单元测试?

我有一个简单的webworker,它进行一些轮询: import { fetchLatestResults } from '../backend/fetchLatestResults'; let polling = false; let symbolIds: string[] = []; const fetchLatest = async () => { if (!symbolIds.length) { return; } try { const res

Jestjs 为什么React测试库在不应该触发提交处理程序时却触发了提交处理程序?这是玩笑吗?

我有一个沙箱,在这里我重新创建了我在代码库中遇到的问题。 我有一个带有必填字段的表单,表单的提交处理程序中有一个回调。 如果表单无效,则实际组件不会正确触发事件处理程序。 但是,测试会启动处理程序,从而启动回调 我使用的是React 16.x、React测试库10.x和Jest DOM 5.x。(所有版本号都可以在上面的沙盒中看到) 我的实现是否确实不正确,或者我的测试是否糟糕?或者用于测试的人工DOM中是否存在缺陷?我不知所措。欢迎使用stackoverflow,最好显示代码的相关部分,而不

Jestjs 如何测试css属性?我的考试总是通过

我的应用程序有点与众不同,因为外观实际上非常重要。这是一种照片处理应用程序,所以我希望能够编写测试来检查,例如,一个元素实际上有一个特定的背景颜色。我可以使用react测试库查找元素,但我的jest.toHaveStyle()断言似乎总是通过 被测元件(省略其余部件) 如果我将预期的颜色更改为其他颜色,它仍然会通过。到目前为止,我发现唯一使其失败的方法是说.toHaveStyle('background-color'),而不带值。。

Jestjs 部分被测试覆盖

我对sonarcloud报告有点困惑,我的react原生应用程序如下所示: 首先,除了作为快照的一部分之外,样式表是如何在测试中被覆盖的?其次,_showarter是一个被调用并生成自定义警报的方法。那么,如果MyAlert是100%覆盖的,那么既然我调用了showAlert方法来显示自定义的警报方法,为什么showAlert会部分覆盖呢

Jestjs 如何让Jest在console.log语句中正常运行?

我在--verbose模式下运行Jest测试,以便能够通过控制台.log查看测试输出的内容 但是,Jest不仅生成原始控制台文本,还生成额外的文本 例如: console.log("foobar") 而不是生产: foobar 产生: console.log foobar 我如何使Jest完全不修改我的控制台.log函数?我只想按原样输出东西 我之所以想这样做,是因为Jest表示日志语句的方式在垂直方向上占用了大量空间,而且很难通读。实际上,直接转到更好,我也建

Jestjs 重复的文件名-index.js-jest-haste-map

我得到这个错误与笑话-文件路径是不同的,这使我想知道为什么这是抱怨?我想我被告知index.js是一个重复的名称,即使mock位于不同的路径上——当然不是?我在测试文件中使用了这两个文件中的mock-我不能用jest使用索引文件吗 jest-haste-map: duplicate manual mock found: index The following files share their name; please delete one of them: * <rootDi

Jestjs 如何使用酶测试事件处理程序

如何使用浅层渲染测试单击处理程序 class Example extends React.Component { render() { const { message } = this.props return <Alert key={message.id} bsStyle={message.state} onDismiss={()=>this.handleAlertDismiss(message.id)}>{message.text}&

Jestjs 为什么\\在笑话快照中似乎不起作用?

编辑2:我现在已经在React应用程序中测试了这些文件。JavaScript按预期工作,因此唯一的实际问题似乎是Jest快照不一致地处理转义字符,包括以无效JS的方式处理转义字符,这可能会使调试变得混乱。测试仍然正常工作,只有查看快照可能会让人困惑 编辑:我的问题不是关于何时使用单引号或双引号的问题的重复。我想知道为什么在JSX或Jest快照中转义反斜杠似乎不起作用,而转义引号却起作用 \\ should become \ yet it appears as \\ in the official

Jestjs Jest在解析返回另一个decorator的decorator时停止

我一直在我的组件上使用graphql装饰器(通过react apollo),为了让我的代码更加枯燥,我决定在另一个装饰器中封装graphql函数,如下所示: import { graphql } from 'react-apollo' export default function wrappedQuery(gqlDocument, numberOfItems) { return (component) => graphql(gqlDocument, { opti

Jestjs 有没有可能用Puppeter拍摄独立于设备的屏幕截图?

我正在使用Puppeter进行视觉回归测试(具体来说,我正在为此使用jest图像快照库)。不幸的是,当我使用具有不同屏幕特征的机器时,屏幕截图略有不同,测试失败。例如,我有一个测试,屏幕截图最初是在非视网膜Mac显示器上拍摄的,但当测试在带有视网膜显示器的Mac上运行时,屏幕截图中存在一些细微差异,导致测试失败 有没有可能用木偶演员拍摄独立于所用显示器的屏幕截图 我试图通过调用setViewport在视网膜显示器上强制显示非视网膜屏幕截图,但没有帮助:page.setViewport({widt

Jestjs 节点模块的Jest重置模拟

我正在进行谷歌云功能测试 这些文件是: index.ts,它只导出也在那里导入的函数。 contactSupportByMail.t要测试的功能。 以及测试: describe('Cloud Functions', (): void => { let myFunctions; let adminInitStub; beforeAll((): void => { // [START stubAdminInit] // If index.js calls a

Jestjs 无法期望使用不同参数调用'TohavenCalledWith'

我模拟了MongoDB实例updateOne。在这段代码中,我发现了调用updateOne的UpdateByID。对于成功的案例,writeById方法调用UpdateByID两次。所以我希望已经被调用了两次,使用不同的参数。但是当我运行我的代码时,它两次期望相同的值。有人能告诉我我的代码出了什么问题吗 测试用例文件 const mongoDBInstance = new MongoDb( new MongoClient('testClient'), {

Jestjs 笑话聚合失败

在Ruby(使用RSpec)中,有一个名为的特性,允许您对一组期望进行分组,同时查看所有的失败 我想知道Jest是否也有类似的功能。框架似乎没有提供这一点,但可能有人知道库可能不可能:可能不可能:

Jestjs 解毒:应用程序未响应以下网络请求

使用Jest Circus作为测试运行程序运行detox 17.4.3时,我在使用iOS模拟器时遇到以下错误 detox[18766] WARN: [Client.js/PENDING_REQUESTS] App has not responded to the network requests below: (id = -1000) isReady: {} Unresponded network requests might result in timeout errors in De

使用typescript在jestjs单元测试中未正确导入引导下拉列表

我是新来的jest,为我们的react应用程序构建了这个简单的测试,它是用typescript编写的,在很大程度上依赖react引导。我尝试了酶和反应测试库,得到了相同的结果。我们也使用webpack,但这似乎与本案例无关 somedropdown.test.tsx: import*as React from“React”; 从“反应引导/下拉菜单”导入下拉菜单; 从“反应引导/下拉按钮”导入下拉按钮; 从“@testing library/react”导入{render,screen}”; D

Jestjs Jest没有找到下划线

我正在尝试使用以下设置使用Jest测试我的项目: package.json: { "jest": { "rootDir": "spec", "transform": { "^.+\\.jsx$": "babel-jest", "^.+\\.js$": "babel-jest" }, "moduleFileExtensions": [ "js", "jsx" ], "testRegex": "spe

Jestjs Jest限制集成测试的并发性

如何限制jest中测试执行的并发性?假设我只想同时并行运行4个测试用例 我目前的问题是,我有很多使用真实数据库连接的集成测试。Jest并行执行太多的测试用例,因此经常会出现连接超时或测试数据库实例的性能显著下降,因为同时有太多的查询 我的所有集成测试套件都具有以下结构: describe('<functionality x>', () => { test('case 1', async () => {...}) test('case 2', async (

Jestjs 创建custome expect时捕获错误

我将测试助手函数创建为Globals in Jest,以便能够在应用程序的每个测试文件中使用它们 我要把这个从我们的测试文件中删掉。我将转到setup-global.js文件,然后我会说global.loopExpect=expect()//for looping case global.loopExpect = (actuals) => { return { toContainKeys: (keys) => { if (actuals.length >

Jestjs 如何隐藏proptype check in jest的控制台警告

反应组件的类型如下所示 comp2.propTypes = { type: PropTypes.oneOf(['a', 'b', 'c']) } 在代码中,我是这样使用的 const MAP_TYPE_TO_URL = {}; // some values for MAP_TYPE_TO_URL : eg : MAP_TYPE_TO_URL['d'] = 'some value' , etc // so i am manipulating MAP_TYPE_TO_URL wit

Jestjs Jest无法测试commander帮助功能

使用jest我无法测试导致进程退出的commander模块功能 例如,如果我传递了--help选项或一个无效参数,如-x(见下文)进程。退出或进程。stdout.write不会被调用,因为它们应该查看指挥官源 import {Command} from "commander"; let mockExit: jest.SpyInstance; let mockStdout: jest.SpyInstance; beforeAll(() => { mockExit = jest.s

Jestjs 没有回调作为参数的模拟函数

我有dh.js const checkDExistsCallback = (err, dResp) => { if (err) cbResp.error('failed'); if (dResp.length > 0) checkDCollectionExists(); else cbResp.error('Not found.'); }; const checkDCollectionExists = ()

Jestjs 意外标记'<';jest和测试库/react原生类型脚本测试文件

运行以下测试文件时出现以下错误: //TestComp.test.tsx 从“React”导入React; 从“react native”导入{TextInput,View}; 从“@testing library/react native”导入{render,firevent}”; 常量TestComp=()=>{ 返回( console.log(txt)}> ); }; 描述(“Testcomp”,()=>{ 之后(()=>{ 开玩笑。clearAllMocks(); }); 测试(“测试我

Jestjs 那里挂着笑话

我有一个使用jest的项目。历史上运行良好。一年后,当我打开它,不知何故,玩笑挂了。没有信息,没有错误,不能继续。(见图)有什么见解吗 Jest使用多线程方法运行测试,有时可能会遇到死锁。我在Git bash上也遇到了同样的情况,当时我在windows环境中运行项目。尝试添加一个 ---我 如果没有任何进一步的信息,将很难找出为什么它不再有效。也许你应该从更新jest到最新版本开始。我做了“npm安装jest-g”,所以我想我得到了最新的jest。是的,笑话只是挂在那里,没有打印任何输出。是否有

Jestjs 通过配置运行jest会产生错误

我试图通过指定配置文件来运行jest。我使用的命令行是 "test": "jest -—config jest/jest.config.js", 我的jest.config.js文件如下所示 module.exports = { bail: true, verbose: true, moduleNameMapper: { '\\.(css|jpg|png)$': '<rootDir>/empty-module.js-' } }; module.export

Jestjs 有没有办法让` tohavebeencalled'匹配正则表达式?

我有一个函数,它附加一个随机数,然后调用另一个函数。我想检查它是否是用传入的文本调用的,并匹配任何随机数。我希望能够通过一个正则表达式,而不必开玩笑地与正则表达式匹配。比如: const typeFn = jest.fn(); function type (text) { typeFn(text + Math.random()); }) type('hello') expect(typeFn).toHaveBeenCalledWith(/hello\d+/) 您可以使

Jestjs 如何将toThrow()与jest一起使用

我想知道为什么下面的代码不能开玩笑地工作。 我认为Error()会自动抛出,因此可以忽略它 expect(() => { Error(); }).toThrow(); Error()创建一个Error对象,但仍需要使用throw抛出它: expect(()=>{ 抛出错误(); }).toThrow(); Error()创建一个Error对象,但仍需要使用throw抛出它: expect(()=>{ 抛出错误(); }).toThrow();

Jestjs nestjs typeorm中的getRepositoryToken是什么,何时使用?

文件如下: 当涉及到应用程序的单元测试时,我们通常希望避免 建立数据库连接,保持测试套件的独立性和 他们的执行过程越快越好。但我们的班级可能 依赖于从连接实例中提取的存储库。 我们如何处理?解决方案是创建模拟存储库。在里面 为了实现这一点,我们建立了自定义提供者。每人登记 存储库由存储库自动表示 令牌,其中EntityName是实体类的名称 @nestjs/typeorm包公开了getRepositoryToken()函数 它返回基于给定实体的准备好的令牌 这到底是什么意思?自动完成文档只给出签

Jestjs 如何模拟从静态方法创建的对象,并将模拟对象作为Jest中的参数

我编写了一个Nestjs示例项目,项目源代码:并尝试测试一个自定义权限保护 @Injectable() 导出类HasPermissionsGuard实现CanActivate{ 构造函数(专用只读反射器:反射器){} 激活( 上下文:ExecutionContext, ):布尔值|承诺|可观察{ const routePermissions=this.reflector.get( 拥有\u权限\u密钥, context.getHandler(), ); 如果(!routePermissions

Jestjs 如何使用jest测试带有DOM元素的javascript代码

我是javascript新手,我一直在尝试为他的代码编写测试,但我没能,我们应该使用jest。 我已经研究了很长时间没有找到解决方案 document.getElementById(“注册”).addEventListener(“提交”,函数(e){ e、 预防默认值(); 数据={ 用户名:document.getElementById(“用户名”).value, 电子邮件:document.getElementById(“电子邮件”).value, 密码:document.getEleme

  1    2   3   4   5   6  ... 下一页 最后一页 共 14 页