typescript - 本地安装时,Testcafe 未使用 typescript 运行
问题描述
如果我卸载本地安装并在全局范围内安装它,它可以工作,但出于可移植性的原因,我更喜欢本地安装。
这是一个正在使用的yarn
项目typescript
v3.7.3
,我正在使用testcafe
v1.9.1
.
要安装我跑了:
yarn add --dev testcafe
并创建了一个非常简单的测试e2e-tests/test.ts
当我尝试使用运行此测试时,yarn run testcafe chrome e2e-tests/test.ts
我得到以下堆栈跟踪:
yarn run v1.22.4
$ testcafe chrome e2e-tests/
ERROR TypeError: unknown: Property value expected type of string but got null
at Object.validate (project/node_modules/@babel/core/node_modules/@babel/types/lib/definitions/utils.js:160:13)
at validateField (project/node_modules/@babel/core/node_modules/@babel/types/lib/validators/validate.js:24:9)
at validate (project/node_modules/@babel/core/node_modules/@babel/types/lib/validators/validate.js:17:3)
at builder (project/node_modules/@babel/core/node_modules/@babel/types/lib/builders/builder.js:38:27)
at Object.StringLiteral (project/node_modules/@babel/core/node_modules/@babel/types/lib/builders/generated/index.js:350:31)
at enter (project/node_modules/react-hot-loader/dist/babel.development.js:605:29)
at sourceRecord.<computed> (project/node_modules/react-hot-loader/dist/babel.development.js:688:16)
at PluginPass.sourceRecord.<computed> (project/node_modules/react-hot-loader/dist/babel.development.js:687:14)
at newFn (project/node_modules/@babel/core/node_modules/@babel/traverse/lib/visitors.js:179:21)
at NodePath._call (project/node_modules/@babel/core/node_modules/@babel/traverse/lib/path/context.js:55:20)
at NodePath.call (project/node_modules/@babel/core/node_modules/@babel/traverse/lib/path/context.js:42:17)
at NodePath.visit (project/node_modules/@babel/core/node_modules/@babel/traverse/lib/path/context.js:90:31)
at TraversalContext.visitQueue (project/node_modules/@babel/core/node_modules/@babel/traverse/lib/context.js:112:16)
at TraversalContext.visitSingle (project/node_modules/@babel/core/node_modules/@babel/traverse/lib/context.js:84:19)
at TraversalContext.visit (project/node_modules/@babel/core/node_modules/@babel/traverse/lib/context.js:140:19)
at Function.traverse.node (project/node_modules/@babel/core/node_modules/@babel/traverse/lib/index.js:84:17)
at traverse (project/node_modules/@babel/core/node_modules/@babel/traverse/lib/index.js:66:12)
at transformFile (project/node_modules/@babel/core/lib/transformation/index.js:107:29)
at transformFile.next (<anonymous>)
at run (project/node_modules/@babel/core/lib/transformation/index.js:35:12)
at run.next (<anonymous>)
at Function.transform (project/node_modules/@babel/core/lib/transform.js:27:41)
at transform.next (<anonymous>)
at evaluateSync (project/node_modules/gensync/index.js:244:28)
at Function.sync (project/node_modules/gensync/index.js:84:14)
at Object.transform (project/node_modules/@babel/core/lib/transform.js:36:54)
at downgradeES (project/node_modules/testcafe/src/compiler/compile-client-function.js:53:28)
at Object.compileClientFunction [as default] (project/node_modules/testcafe/src/compiler/compile-client-function.js:110:14)
at ClientFunctionBuilder._getCompiledFnCode (project/node_modules/testcafe/src/client-functions/client-function-builder.js:114:41)
at new ClientFunctionBuilder (project/node_modules/testcafe/src/client-functions/client-function-builder.js:30:36)
at convertFilterToClientFunctionIfNecessary (project/node_modules/testcafe/src/client-functions/selectors/add-api.js:307:17)
at Object.<anonymous> (project/node_modules/testcafe/src/client-functions/selectors/add-api.js:342:22)
at Module._compile (internal/modules/cjs/loader.js:1151:30)
at Module._compile (project/node_modules/source-map-support/source-map-support.js:541:25)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1171:10)
at Module.load (internal/modules/cjs/loader.js:1000:32)
at Function.Module._load (internal/modules/cjs/loader.js:899:14)
at Module.require (internal/modules/cjs/loader.js:1040:19)
at require (internal/modules/cjs/helpers.js:72:18)
at Object.<anonymous> (project/node_modules/testcafe/src/client-functions/selectors/selector-builder.js:11:1)
at Module._compile (internal/modules/cjs/loader.js:1151:30)
at Module._compile (project/node_modules/source-map-support/source-map-support.js:541:25)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1171:10)
at Module.load (internal/modules/cjs/loader.js:1000:32)
at Function.Module._load (internal/modules/cjs/loader.js:899:14)
at Module.require (internal/modules/cjs/loader.js:1040:19)
at require (internal/modules/cjs/helpers.js:72:18)
at Object.<anonymous> (project/node_modules/testcafe/src/test-run/commands/actions.js:2:1)
at Module._compile (internal/modules/cjs/loader.js:1151:30)
at Module._compile (project/node_modules/source-map-support/source-map-support.js:541:25)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1171:10)
at Module.load (internal/modules/cjs/loader.js:1000:32)
at Function.Module._load (internal/modules/cjs/loader.js:899:14)
at Module.require (internal/modules/cjs/loader.js:1040:19)
at require (internal/modules/cjs/helpers.js:72:18)
at Object.<anonymous> (project/node_modules/testcafe/src/api/test-controller/index.js:14:1)
at Module._compile (internal/modules/cjs/loader.js:1151:30)
at Module._compile (project/node_modules/source-map-support/source-map-support.js:541:25)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1171:10)
at Module.load (internal/modules/cjs/loader.js:1000:32)
at Function.Module._load (internal/modules/cjs/loader.js:899:14)
at Module.require (internal/modules/cjs/loader.js:1040:19)
at require (internal/modules/cjs/helpers.js:72:18)
at Object.<anonymous> (project/node_modules/testcafe/src/api/wrap-test-function.ts:1:1)
at Module._compile (internal/modules/cjs/loader.js:1151:30)
at Module._compile (project/node_modules/source-map-support/source-map-support.js:541:25)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1171:10)
at Module.load (internal/modules/cjs/loader.js:1000:32)
at Function.Module._load (internal/modules/cjs/loader.js:899:14)
at Module.require (internal/modules/cjs/loader.js:1040:19)
at require (internal/modules/cjs/helpers.js:72:18)
at Object.<anonymous> (project/node_modules/testcafe/src/api/structure/fixture.ts:7:1)
at Module._compile (internal/modules/cjs/loader.js:1151:30)
at Module._compile (project/node_modules/source-map-support/source-map-support.js:541:25)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1171:10)
at Module.load (internal/modules/cjs/loader.js:1000:32)
at Function.Module._load (internal/modules/cjs/loader.js:899:14)
at Module.require (internal/modules/cjs/loader.js:1040:19)
at require (internal/modules/cjs/helpers.js:72:18)
at Object.<anonymous> (project/node_modules/testcafe/src/compiler/test-file/api-based.js:6:1)
at Module._compile (internal/modules/cjs/loader.js:1151:30)
at Module._compile (project/node_modules/source-map-support/source-map-support.js:541:25)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1171:10)
at Module.load (internal/modules/cjs/loader.js:1000:32)
at Function.Module._load (internal/modules/cjs/loader.js:899:14)
at Module.require (internal/modules/cjs/loader.js:1040:19)
at require (internal/modules/cjs/helpers.js:72:18)
at Object.<anonymous> (project/node_modules/testcafe/src/compiler/test-file/formats/es-next/compiler.js:2:1)
at Module._compile (internal/modules/cjs/loader.js:1151:30)
at Module._compile (project/node_modules/source-map-support/source-map-support.js:541:25)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1171:10)
at Module.load (internal/modules/cjs/loader.js:1000:32)
at Function.Module._load (internal/modules/cjs/loader.js:899:14)
at Module.require (internal/modules/cjs/loader.js:1040:19)
at require (internal/modules/cjs/helpers.js:72:18)
at Object.<anonymous> (project/node_modules/testcafe/src/compiler/compilers.js:3:1)
at Module._compile (internal/modules/cjs/loader.js:1151:30)
at Module._compile (project/node_modules/source-map-support/source-map-support.js:541:25)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1171:10)
at Module.load (internal/modules/cjs/loader.js:1000:32)
at Function.Module._load (internal/modules/cjs/loader.js:899:14)
at Module.require (internal/modules/cjs/loader.js:1040:19)
at require (internal/modules/cjs/helpers.js:72:18)
at Object.<anonymous> (project/node_modules/testcafe/src/compiler/index.js:6:1)
at Module._compile (internal/modules/cjs/loader.js:1151:30)
at Module._compile (project/node_modules/source-map-support/source-map-support.js:541:25)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1171:10)
at Module.load (internal/modules/cjs/loader.js:1000:32)
at Function.Module._load (internal/modules/cjs/loader.js:899:14)
at Module.require (internal/modules/cjs/loader.js:1040:19)
at require (internal/modules/cjs/helpers.js:72:18)
at Object.<anonymous> (project/node_modules/testcafe/src/runner/bootstrapper.ts:9:1)
at Module._compile (internal/modules/cjs/loader.js:1151:30)
at Module._compile (project/node_modules/source-map-support/source-map-support.js:541:25)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1171:10)
at Module.load (internal/modules/cjs/loader.js:1000:32)
at Function.Module._load (internal/modules/cjs/loader.js:899:14)
at Module.require (internal/modules/cjs/loader.js:1040:19)
at require (internal/modules/cjs/helpers.js:72:18)
at Object.<anonymous> (project/node_modules/testcafe/src/runner/index.js:7:1)
at Module._compile (internal/modules/cjs/loader.js:1151:30)
at Module._compile (project/node_modules/source-map-support/source-map-support.js:541:25)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1171:10)
at Module.load (internal/modules/cjs/loader.js:1000:32)
at Function.Module._load (internal/modules/cjs/loader.js:899:14)
at Module.require (internal/modules/cjs/loader.js:1040:19)
at require (internal/modules/cjs/helpers.js:72:18)
at lazy (project/node_modules/import-lazy/index.js:2:51)
at Object.construct (project/node_modules/import-lazy/index.js:18:11)
at TestCafe._createRunner (project/node_modules/testcafe/src/testcafe.js:75:27)
at TestCafe.createRunner (project/node_modules/testcafe/src/testcafe.js:90:21)
at runTests (project/node_modules/testcafe/src/cli/cli.js:91:75)
at processTicksAndRejections (internal/process/task_queues.js:97:5)
at cli (project/node_modules/testcafe/src/cli/cli.js:161:13)
任何帮助或见解将不胜感激!
更新:
我已将问题归结为特定的 babel 插件。如果我删除react-hot-loader/babel
它运行,还不确定为什么。删除后我遇到了这个新问题react-hot-loader/babel
。
yarn run v1.22.4
$ testcafe chrome e2e-tests/
The "browsers" option from the configuration file will be ignored.
ERROR Cannot prepare tests due to an error.
Error: Using removed Babel 6 option: .resolveModuleSource - Use `babel-plugin-module-resolver@3`'s 'resolvePath' options
at throwUnknownError (project/node_modules/@babel/core/lib/config/validation/options.js:121:11)
at project/node_modules/@babel/core/lib/config/validation/options.js:108:5
at validateNested (project/node_modules/@babel/core/lib/config/validation/options.js:84:21)
at validate (project/node_modules/@babel/core/lib/config/validation/options.js:75:10)
at loadPrivatePartialConfig (project/node_modules/@babel/core/lib/config/partial.js:76:50)
at loadFullConfig (project/node_modules/@babel/core/lib/config/full.js:57:46)
at Function.transform (project/node_modules/@babel/core/lib/transform.js:25:45)
at evaluateSync (project/node_modules/gensync/index.js:244:28)
at Function.sync (project/node_modules/gensync/index.js:84:14)
at Object.transform (project/node_modules/@babel/core/lib/transform.js:36:54)
解决方案
推荐阅读
- c# - 如何检查 DbContext 是否正在跟踪与 {'id'} 具有相同键值的实体?
- git - git clone 不适用于 npm i,但可以单独使用
- asp.net-core-mvc - ASP.NET Core 3.1 MVC:创建模型时双转为 int
- java - 二叉搜索树 - 如何在“main”中调用我的 inOrder 方法,并从输出中省略空值?
- c# - 如何为 microsoft graph (C#) 创建 Web 服务
- nginx - 使用 nginx 重定向特定端点、特定 http 方法
- discord.py - 如何使用 GET /channels/{channel.id}/messages
- amazon-ec2 - yum - 如何在 ec2 上安装 gpg 密钥
- python - 在 Python 中忽略正则表达式匹配开始或结束时的空格或标点符号
- r - 在 Shiny 上下文中编辑 DT 对象时的外观问题