我在项目中使用Angular 8。是否可以使用单独的package.json
文件进行e2e测试?我正在使用jest
进行单元测试,使用protractor+jasmine
进行e2e。因此,我无法将jasmine
上的package.json
完全删除。因此,我经常在打字方面遇到问题
我想要得到什么:
当我位于主项目中的.spec
文件中时
expect(someFuncCall()).toMatchSnapshot()
应该正常工作,jasmine
应该无效
当我位于e2e文件夹内的.spec
文件中时
toMatchSnapshot()
应该给出错误,而jest
应该无效
当然,所有用于测试的IDE智能感知应该取决于项目类型:e2e / main
答案 0 :(得分:1)
寻找相同的东西时偶然发现了这个老问题。
在我们的项目中,我们使用jest进行正常组件测试,并使用量角器+茉莉花进行e2e测试。可以通过单独的package.json
进行e2e测试。
/e2e
文件夹中,手动添加一个具有所需依赖关系的package.json
文件。npm i
(在其中创建一个node_modules
文件夹和package-lock.json
)tsconfig.e2e.json
文件如下所示:{
"compileOnSave": false,
"compilerOptions": {
"baseUrl": "",
"outDir": "../out-tsc/e2e",
"module": "commonjs",
"target": "es5",
"types": [
"jasmine",
"node"
],
"allowJs": true,
"importHelpers": true,
"sourceMap": true,
"declaration": false,
"moduleResolution": "node",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"typeRoots": [
"node_modules/@types",
"../node_modules/@types"
],
"lib": [
"es2016",
"dom"
],
},
"exclude": [
...
]
}
我不想用太多的东西弄乱这篇文章。如果有什么遗漏,我将很乐意发布其他信息(package.json,protractor.conf等)。