AngularJS单元测试中没有组件内容
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AngularJS单元测试中没有组件内容相关的知识,希望对你有一定的参考价值。
我的设置是AngularJS 1.5 +,jasmine,karma,问题在于测试组件和它的模板。问题是在编译组件的模板后,它没有应该的内容。
请考虑以下测试代码段:
const ELEMENT_html = '<some-component></some-component>';
const scope = $rootScope.$new();
const markup = angular.element(ELEMENT_HTML);
const component = $compile(markup)(scope);
$scope.$digest();
console.log(component);
some-component
的模板可以包含任何内容。 console.log
仅输出我在片段中指定的ELEMENT_HTML
,没有组件本身的内容。当你在ELEMENT_HTML
中放入任何其他常规HTML元素时会发生这种情况,但在这里我希望看到我使用的组件的完整内容。
这可能是使用不正确的模块的问题,但使用$componentController
测试工作正常。它只是编译它并与模板一起测试它是一个问题。
我很乐意提供更多数据,我只需知道什么可能有用。
最好的祝福,
托马斯。
答案
新的一天,新的机会和想法。事实证明,存在一些未实现的模块依赖性。我想知道为什么它与$componentController
一起工作,为什么在控制台中没有反馈意见有些不对劲。
无论如何,案件结案。
以上是关于AngularJS单元测试中没有组件内容的主要内容,如果未能解决你的问题,请参考以下文章
带有茉莉花的AngularJS 2单元测试组件面临错误,无法读取null的属性'firstChild'
Angularjs单元测试-将文本添加到textarea时禁用ng的不起作用
单元测试混合 Angular Js 和 Angular 8 应用程序