在Playwright+TypeScript测试中导入自定义工具报错求助
解决Playwright TypeScript项目中自定义工具导入错误的方案
1. 先把导入路径改对
先确认你的目录结构,比如如果是这样:
logger-example/ ├── tests/ │ └── example.spec.ts ├── logger.ts └── package.json
那在example.spec.ts里导入logger时,必须用相对路径指定正确层级:
// 正确写法:从tests目录往上一级找logger.ts import logger from '../logger';
你报错里的路径tests\logger'playwright明显是路径写错了,要么层级不对,要么少了后缀,先把这个核心问题修正。
2. 可选:配置TypeScript路径别名简化导入
如果项目结构复杂,不想写一堆../,可以在tsconfig.json里加路径映射:
{ "compilerOptions": { "baseUrl": ".", "paths": { "@/*": ["*"] // 也可以指定具体目录,比如["src/utils/*"] } }, "include": ["tests/**/*", "logger.ts"] // 确保logger.ts被TS识别 }
之后导入就能简化成:
import logger from '@/logger';
3. 检查文件导出和扩展名
- 确认
logger.ts有正确的导出逻辑,比如:
// logger.ts示例 import winston from 'winston'; const logger = winston.createLogger({ // 你的日志配置(比如输出到文件、控制台) }); export default logger;
- 要是路径还是有问题,直接加上
.ts扩展名试试:
import logger from '../logger.ts';
4. 升级Node版本规避兼容性问题
你当前用的Node v14.15.0虽然能跑Playwright,但建议升级到Node 16+ LTS版本,避免老版本里的模块解析bug,同时把npm/npx也更到对应兼容版本。
内容的提问来源于stack exchange,提问作者AabinGunz
相关产品推荐
相关产品推荐

