gpt4 book ai didi

javascript - Jasmine 测试随机失败

转载 作者:行者123 更新时间:2023-12-02 22:30:41 24 4
gpt4 key购买 nike

我在竹子构建中运行 Jasmine 测试时遇到一个奇怪的问题。测试随机失败并出现以下错误:

Failed: can't convert undefined to object build   18-Nov-2019
03:08:56 ./node_modules/@angular/core/fesm5/core.js/</ReflectionCapabilities.prototype._ownPropMetadata@http://localhost:9876/_karma_webpack_/vendor.js:56242:13
build 18-Nov-2019
03:08:56 ./node_modules/@angular/core/fesm5/core.js/</ReflectionCapabilities.prototype.propMetadata@http://localhost:9876/_karma_webpack_/vendor.js:56265:31
build 18-Nov-2019
03:08:56 ./node_modules/@angular/core/fesm5/core.js/</ReflectionCapabilities.prototype.propMetadata@http://localhost:9876/_karma_webpack_/vendor.js:56260:40
build 18-Nov-2019
03:08:56 ./node_modules/@angular/platform-browser-dynamic/fesm5/platform-browser-dynamic.js/JitReflector.prototype.propMetadata@http://localhost:9876/_karma_webpack_/vendor.js:117510:16
build 18-Nov-2019
03:08:56 ./node_modules/@angular/compiler/fesm5/compiler.js/DirectiveResolver.prototype.resolve@http://localhost:9876/_karma_webpack_/vendor.js:32740:40
build 18-Nov-2019
03:08:56 ./node_modules/@angular/compiler/fesm5/testing.js/MockDirectiveResolver.prototype.resolve@http://localhost:9876/_karma_webpack_/vendor.js:54975:46
build 18-Nov-2019
03:08:56 ./node_modules/@angular/compiler/fesm5/compiler.js/CompileMetadataResolver.prototype.getNonNormalizedDirectiveMetadata@http://localhost:9876/_karma_webpack_/vendor.js:40491:23
build 18-Nov-2019
03:08:56 ./node_modules/@angular/compiler/fesm5/compiler.js/CompileMetadataResolver.prototype.loadDirectiveMetadata@http://localhost:9876/_karma_webpack_/vendor.js:40422:18
build 18-Nov-2019
03:08:56 ./node_modules/@angular/compiler/fesm5/compiler.js/JitCompiler.prototype._loadModules/</<@http://localhost:9876/_karma_webpack_/vendor.js:53988:31
build 18-Nov-2019
03:08:56 ./node_modules/@angular/compiler/fesm5/compiler.js/JitCompiler.prototype._loadModules/<@http://localhost:9876/_karma_webpack_/vendor.js:53987:13
build 18-Nov-2019
03:08:56 ./node_modules/@angular/compiler/fesm5/compiler.js/JitCompiler.prototype._loadModules@http://localhost:9876/_karma_webpack_/vendor.js:53984:9
build 18-Nov-2019
03:08:56 ./node_modules/@angular/compiler/fesm5/compiler.js/JitCompiler.prototype._compileModuleAndAllComponents@http://localhost:9876/_karma_webpack_/vendor.js:53969:31
build 18-Nov-2019
03:08:56 ./node_modules/@angular/compiler/fesm5/compiler.js/JitCompiler.prototype.compileModuleAndAllComponentsAsync@http://localhost:9876/_karma_webpack_/vendor.js:53928:32
build 18-Nov-2019
03:08:56 ./node_modules/@angular/platform-browser-dynamic/fesm5/platform-browser-dynamic.js/CompilerImpl.prototype.compileModuleAndAllComponentsAsync@http://localhost:9876/_karma_webpack_

经过几次重新运行测试开始通过。我无法确定根本原因。每次运行都未通过不同的测试。

最佳答案

您的 Jasmine 测试之间似乎存在依赖关系。

我建议使用“focused it”来检查你的测试用例,并找到那些在其他测试没有在他之前运行时失败的用例。特别是,这意味着您迭代测试用例,将“it”更改为“fit”,并在仅运行一个测试的情况下检查它是否通过。如果它通过了,你就把“fit”改回“it”,然后继续下一个。如果您发现一个失败的问题,您可以找出它的依赖性并修复它。

“describe”还有另一种写法,如“fdescribe”。使用“fdescribe”时,仅运行该描述中的测试。这样您就可以找到“describe”-s 之间的依赖关系。

有关“fit”和“fdescribe”的更多信息,请参见:https://jasmine.github.io/api/3.0/global

关于javascript - Jasmine 测试随机失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58912225/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com