Angular 使用fontawesome的业力测试-“@fortawesome/免费品牌svg图标“&引用^5.10.0“;,在模板中,在控制台上抛出错误

Angular 使用fontawesome的业力测试-“@fortawesome/免费品牌svg图标“&引用^5.10.0“;,在模板中,在控制台上抛出错误,angular,Angular,我正在为一个组件编写一个独立的单元测试,该组件具有以下模板(包括字体图标) 版权所有。2019年版权所有 我在package.json中的版本如下 “@fortwome/fortwome”:“^0.4.0”, “@fortawesome/fontawesome svg核心”:“^1.2.20”, “@fortawesome/free brands svg图标”:“^5.10.0”, “@fortawesome/free实心svg图标”:“^5.10.0”, 我的应用程序运行良好,但当我执行

我正在为一个组件编写一个独立的单元测试,该组件具有以下模板(包括字体图标)


版权所有。2019年版权所有
我在package.json中的版本如下

“@fortwome/fortwome”:“^0.4.0”,
“@fortawesome/fontawesome svg核心”:“^1.2.20”,
“@fortawesome/free brands svg图标”:“^5.10.0”,
“@fortawesome/free实心svg图标”:“^5.10.0”,
我的应用程序运行良好,但当我执行一个简单的测试时,控制台中会出现错误

错误:“FontAwesome:找不到iconName=blogger且前缀为fab的图标”
Chrome74.0.3729(MacOSX10.14.6):14次成功执行5次(0秒/0.37秒)
错误:“FontAwesome:找不到iconName=twitter且前缀为fab的图标”
Chrome74.0.3729(MacOSX10.14.6):14次成功执行5次(0秒/0.37秒)
错误:“FontAwesome:找不到iconName=linkedin且前缀为fab的图标”
Chrome74.0.3729(MacOSX10.14.6):14次成功执行5次(0秒/0.37秒)
错误:“FontAwesome:找不到iconName=git且前缀=fab的图标”
我已经添加了模块

导入:[FontAwesomeModule]
但是控制台错误仍然存在,尽管测试正在通过


我只是在寻找一些选项,以确保错误消失,并了解将这些图标定义添加到组件中的正确方法。

对于模板错误,不必包含引发错误的模块。通过使用@angular/core中的
NO\u ERRORS\u模式,您可以简单地忽略模板上的多个模块错误

在spec.ts文件中

    import { NO_ERRORS_SCHEMA } from '@angular/core'

        TestBed.configureTestingModule({
          declarations: [Component],
          schemas:[ NO_ERRORS_SCHEMA]
        })
          .compileComponents();

对于模板错误,不必包含引发错误的模块。通过使用@angular/core中的
NO\u ERRORS\u模式,您可以简单地忽略模板上的多个模块错误

在spec.ts文件中

    import { NO_ERRORS_SCHEMA } from '@angular/core'

        TestBed.configureTestingModule({
          declarations: [Component],
          schemas:[ NO_ERRORS_SCHEMA]
        })
          .compileComponents();

如果您正在编写一个独立的单元测试,那么组件
做什么对该测试来说真的很重要吗?或者font awesome可能测试了组件,而您只想确保在您的组件中有一个带有特定参数的字体图标标记,这就足够了吗?从逻辑上讲,您所说的是对的,但称我为OCD我讨厌看到出现的警告和错误,我只是想了解如何向测试引擎提供所需的信息,以消除控制台中输出的这些错误。是的,我明白,我只是想问使用
无错误模式的浅层测试方法是否足够。如果足够的话,这肯定也会解决错误,但这并不能完全回答您最初的问题,为什么测试会通过,但会给出错误。查看angular font Aweasome模块的功能,我想您需要使用
库添加所有使用的图标。添加(…)
。但是,由于这是一个单元测试,我可能更愿意进行研究,以避免设置与您的测试用例不相关的内容。我使用了
库。添加
方法还有,将它们全局添加到套件中有助于解决报告的所有字体错误,如果我在每次
之前在
中使用它,它有时会在控制台中抛出错误。如果您正在编写一个独立的单元测试,那么组件
做什么对该测试来说真的很重要吗?或者font awesome可能测试了组件,而您只想确保在您的组件中有一个带有特定参数的字体图标标记,这就足够了吗?从逻辑上讲,您所说的是对的,但称我为OCD我讨厌看到出现的警告和错误,我只是想了解如何向测试引擎提供所需的信息,以消除控制台中输出的这些错误。是的,我明白,我只是想问使用
无错误模式的浅层测试方法是否足够。如果足够的话,这肯定也会解决错误,但这并不能完全回答您最初的问题,为什么测试会通过,但会给出错误。查看angular font Aweasome模块的功能,我想您需要使用
库添加所有使用的图标。添加(…)
。但是,由于这是一个单元测试,我可能更愿意进行研究,以避免设置与您的测试用例不相关的内容。我使用了
库。添加
方法还有,将它们全局添加到套件中有助于解决报告的所有字体错误,如果我在每次之前的
中使用它,它有时会在控制台中抛出错误。因为测试自己的组件比测试font awesome组件的功能和需要更有意义。但出于某种原因,添加库是首选的解决方案:/@Erbsenkoenig我尝试了这两种解决方案;使用浅层测试的方法简单快捷,但使用library add,在添加和使用fa图标时,我能够避免任何模板错误的范围,这是我的首选。我也两次建议这样做。因为测试自己的组件比测试font awesome组件的功能和需要更有意义。但出于某种原因,添加库是首选的解决方案:/@Erbsenkoenig我尝试了这两种解决方案;使用浅层测试的一个简单快捷,但是使用library add,我能够避免任何模板错误的范围,同时添加和使用fa图标,所以我更喜欢它。