草庐IT

babel-jest

全部标签

node.js - 开 Jest , typescript ,ts-jest : Coverage is slightly incorrect

我正在使用TypeScript、Jest和ts-jestNPM模块编写一个项目。当我运行测试时,我确实得到了一些覆盖率,但HTML报告不太正确:此外,一些函数被标记为未经测试,即使它们确实被调用了。我的package.json设置如下:{"jest":{"transform":{".(ts|tsx)":"/node_modules/ts-jest/preprocessor.js"},"testRegex":"(/__tests__/.*|\\.(test|spec))\\.(ts|tsx|js)$","moduleFileExtensions":["ts","tsx","js"],"t

javascript - 为什么我的 ES6(使用 Babel)类说 `this` 在实例方法中未定义?

我正在使用Hapi.JS在Node中构建一个应用程序。我有一个认证插件类,它给我带来了各种各样的问题。当我尝试从类的方法中引用this时,我收到一条错误消息,指出this未定义。为什么会这样?摘录:classOAuth{constructor(){}register(server,err,next){this.server=server;this.registerRoutes();}registerRoutes(){console.log(this.server.route);this.server.route([{method:'POST',path:'/oauth/token',c

node.js - 让 Jest 在测试时忽略 .less 导入

测试组件我正在尝试使用Jest对react组件运行一些非常简单的测试。由于组件文件顶部的这一行,我遇到了问题import{}from'./style.less';这里的导入不需要测试,最好从测试中忽略。[npm测试]的结果当通过npmtest运行测试时,我得到响应FAILtests/app_test.js●RuntimeErrorSyntaxError:Unexpectedtoken{infile'client/components/app/style.less'.Makesureyourpreprocessorissetupcorrectlyandensureyour'preproc

node.js - 在所有测试运行后开 Jest 清理

是否可以在Jest中运行在所有其他测试完成后运行的清理或拆卸任务?类似于setupFiles允许在任何测试运行之前设置任务的方式。如果无论测试是否有任何错误,它也可以运行,则可以加分。将afterAll(()=>{})放在文件的顶层(在任何describe函数之外)似乎只会在该特定文件的测试完成后运行。用例是我有许多测试文件将在开发数据库中创建用户,我不想让每个测试文件负责清理和删除用户之后。编写测试时也可能发生错误,因此如果不管错误如何都发生清理,那将是更可取的。 最佳答案 setupFiles有一个兄弟钩子(Hook),它会在每

node.js - 从 npm 脚本运行 babel-cli 不起作用

我按照指示here安装babel-cli。我将"build":"babelsrc-dlib"添加到我要运行它的目录中的package.json中。但是,在运行时,我收到此错误:?npmrunbuild>ipfs-readme-standard@1.0.0build/Users/richard/src/ipfs-readme-standard>babelsrc-dlibsrcdoesn'texistnpmERR!Darwin14.5.0npmERR!argv"/Users/richard/.nvm/versions/node/v5.0.0/bin/node""/Users/richard

node.js - Babel 7 中的外部导入不会被转译

我目前正在将代码库从Babel6迁移到7。代码由具有自己配置的多个单独项目组成。main项目从external导入文件,但是main从external导入的脚本不是被转译并在“意外的token导入”时失败。直接位于maindo中的脚本可以正确转换。我在main项目中使用以下命令来转译脚本:babel-node./index.js另一个项目使用Webpack做同样的事情并正确处理所有事情。此设置也适用于Babel6。.babelrcformain{"ignore":["node_modules"],"presets":[["@babel/preset-env",{"targets":{"

javascript - 开 Jest : Difference betwen --runInBand and --maxWorkers 1

什么时候适合使用--runInBand中的每一个?或--maxWorkers1选项?如果我的意图是按顺序运行所有测试(一次一个,按顺序),那么哪个是正确的选择?额外细节:我正在使用Jest测试NodeJsexpress应用程序,集成测试通过supertest访问HTTP端点.这可能对答案没有任何影响,只是在相关的情况下提及。这是JestCLI引用:https://facebook.github.io/jest/docs/cli.html相关部分:--maxWorkers=别名:-w。指定工作池为运行测试生成的最大工作人员数。这默认为您机器上可用的内核数。在CI等资源有限的环境中调整此设

node.js - 使用 ES6 import + export 关键字和 Babel 导入/导出 Express 路由器

我有一个最初使用Express2.X构建的旧测试项目。我将其移至Express4.x并尝试插入Babel6.x以在服务器端试验ES6功能。Express4.x更新正常。原始应用程序运行良好。当我开始添加ES6功能时,问题就出现了。特别是,我想用ES6import{...}from...替换所有require和module.export指令和export{...}.问题:我似乎无法将外部文件中的路由导入到主app.js文件中。我的app.js像这样加载路由:import{indexRoute}from'./routes/index_route';app.use('/',indexRout

node.js - 使用 Jest 进行测试失败,错误为 : Error watching file for changes: EMFILE

我尝试为React.js应用程序编写测试。一切都很顺利,但是在用Git跟踪目录之后(用它做了一个Gitrepo)。测试失败并出现以下错误2017-01-1505:05node[1278](FSEvents.framework)FSEventStreamStart:register_with_server:ERROR:f2d_register_rpc()=>(null)(-22)2017-01-1505:05node[1278](FSEvents.framework)FSEventStreamStart:register_with_server:ERROR:f2d_register_rp

node.js - 使用绝对路径导入组件时,Jest 给出 `Cannot find module`

运行Jest时收到以下错误Cannotfindmodule'src/views/app'from'index.jsx'atResolver.resolveModule(node_modules/jest-resolve/build/index.js:179:17)atObject.(src/index.jsx:4:12)index.jsximportAppContainerfrom'src/views/app';package.json"jest":{"collectCoverageFrom":["src/**/*.{js,jsx,mjs}"],"setupFiles":["/conf