Jasmin + karma:“错误:模块‘DynamicTestModule’导入了意外的值‘HttpClient’。请添加 @NgModule 注释。”

2024-05-22

我使用 jasmine 作为测试框架,使用 karma 作为测试运行程序。我正在尝试创建一个 HttpClient 对象,以便我可以创建一个服务作为该对象的依赖项:

TestBed.configureTestingModule({
    declarations: [HttpClient],
    imports: [HttpClient],
    providers: [HttpClient]
});
TestBed.get(HttpClient);

但我收到以下错误:

错误:模块“DynamicTestModule”导入了意外值“HttpClient”。请添加@NgModule注释。

有谁知道如何解决这个问题?

遵循所有代码:

import { I18nService } from "../../services/i18n.service";
import { TestBed, inject, async } from "@angular/core/testing";
import { EditionHistoryEventsModel } from "./dropdown.edition.history.events.model";
import { HttpClient } from "@angular/common/http";
import { TestUtil } from "../../utils/test.uti";



describe('DropDownEditionHistoryItemModel', () => {
    let i18nService: I18nService;
     
    beforeAll(() => {
        TestBed.configureTestingModule({
            declarations: [HttpClient],
            imports: [HttpClient],
            providers: [HttpClient]
        });
        i18nService = TestUtil.geti18nService(TestBed.get(HttpClient));
    });
    it('asdasd', () => {
        let model: EditionHistoryEventsModel = new EditionHistoryEventsModel(i18nService);
        expect(true).toBeTruthy();
    });
});

当您尝试在文件中包含组件、指令或管道以外的内容时,会引发编译错误。declarations array.

我重构了您的测试规范以删除HttpClient从声明模块中导入HttpClientTestingModule因为它比其他产品有一些显着的优势HttpClientModule for testing https://medium.com/netscape/testing-with-the-angular-httpclient-api-648203820712,并使用稍微不同的模式来创建您的实例I18nService传递给你的模型类。

import { HttpClientTestingModule } from '@angular/common/http/testing';

    describe('TestSpec', () => {

    let intlService = I18nService;

    beforeAll(() => {
        TestBed.configureTestingModule({
            declarations: [],
            imports: [HttpClientTestingModule],
            providers: [I18nService]
    });

    i18nService = TestBed.Get(I18nService);
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Jasmin + karma:“错误:模块‘DynamicTestModule’导入了意外的值‘HttpClient’。请添加 @NgModule 注释。” 的相关文章

随机推荐

  • 滚动或滑动窗口迭代器?

    我需要一个可在序列 迭代器 生成器上迭代的滚动窗口 又名滑动窗口 默认的 Python 迭代可以被视为一种特殊情况 其中窗口长度为 1 我当前正在使用以下代码 我怎样才能更优雅和 或更有效地做到这一点 def rolling window
  • 使用Nodejs、Express和AngularJS在浏览器中显示IP

    我正在学习 Nodejs 和 ExpressJS 我正在尝试使用 ExpressJS 和 2 个节点模块 请求IP https www npmjs com package request ip and geoip2 https www np
  • SQL Server 每年的第一个星期一

    如何使用 T SQL 查找 一年中的第一个星期一 这是 ngruson 发布的链接中的示例 http sqlbump blogspot nl 2010 01 first monday of year html http sqlbump bl
  • 如何修复 jq 扁平化 JSON 数组的重复输出

    我正在尝试使用 jq 命令压平 JSON 文件 但输出是重复的 请在这里查看我的jqplay https jqplay org s gwvMIH fed https jqplay org s gwvMIH fed 我的输入 JSON cos
  • 2D 网格的纹理贴图

    我有一组点 x y meshgrid 1 N 1 M 在常规二维上定义 N x M网格 我还有另一组要点 u v 这是原始网格的一些变形 即 u v f x y 但是我没有实际的f导致变形 如何将纹理映射到由定义的 变形 网格u v 即 给
  • 强制 Firefox 在 img.src 更改后重新加载图像

    我正在修改画布上的一些图像 然后将这些图像的 src 设置为新的 Base64 编码图片 img src changeColor img 更改颜色返回 base64 编码图像 return canvas toDataURL Chrome 和
  • 是否可以在 C/C++ 中模仿 Go 接口?

    在 Go 中 如果类型具有接口定义的所有方法 则可以将其分配给该接口变量 而无需显式继承它 是否可以在 C C 中模仿此功能 是的 您可以使用纯抽象类 并使用模板类来包装 实现 抽象类的类型 以便它们扩展抽象类 这是一个简单的示例 incl
  • 更新匿名方法内的 ref 参数

    是否有解决方法可以更新匿名方法内的 ref 参数 我知道匿名方法不允许访问外部作用域的 ref 参数 但是还有其他方法可以做到这一点吗 我正在使用 MessageStream 的外部库 因此无法更改委托的参数 void DoWork ref
  • 如何从 Python 中的请求处理程序内部关闭 HTTPServer?

    当我收到 StopIteration 异常时 如何关闭该服务器 sys exit 不起作用 usr bin env python from BaseHTTPServer import BaseHTTPRequestHandler HTTPS
  • Swift 在调试和发布模式下的行为不同

    不确定这是否是 Swift XCode 或 Alamofire 的问题 但我认识到我的混合 Swift Objc 应用程序中不同地方的奇怪行为 它只发生在用 Swift 编写并使用闭包 网络的部分 这是发生这种情况的示例代码 Alamofi
  • StreamWriter 错误字符

    遇到一个问题 streamwriter 在我正在生成的 csv 中生成错误的字符 那些角色 仅出现在文件的开头 5 GEN 555555555 Evan Smith email protected cdn cgi l email prote
  • Pywinauto 如何获取返回元素的列表

    我正在使用具有自定义堆栈面板的 WPF 应用程序 它基本上是一个列表 列表中的项目完全相同 因此我无法选择特定文本来唯一标识元素 其他一些值 例如时间 是动态的 有没有办法让我获得返回的元素列表 我知道这是可能的 因为抛出了错误 Eleme
  • 如何在Python中存储while循环和sentinel的结果?

    我已经为此工作了几个小时 以为我已经把它记下来了 但事实证明我全错了 任务是 编写一个程序来计算该课程的学期平均成绩和字母成绩 用户将输入这些数字 A list测验分数 每个分数的范围为 0 10 用户输入哨兵值 1来结束输入 降低测验的最
  • 通过令牌进行 Firebase CLI 身份验证

    我是按照官方描述的步骤进行的使用 Firebase CLI 的 GitHub 教程 https github com firebase firebase tools blob master README md 命令行 带有 CI 系统 没有
  • Jquery:是否有某种方法可以使 val() 返回空字符串而不是空列表的“未定义”?

    使用 Jquery 是否有某种方法可以使 val 在针对空元素列表调用时返回空字符串而不是 未定义 例如 我有这样的代码 var x my textbox id not watermark val 我的想法是 我想获取文本框的值 但如果它当
  • 将所有 0 值替换为 NA

    我有一个包含一些数字列的数据框 某些行具有 0 值 在统计分析中应将其视为空 在R中将所有0值替换为NULL的最快方法是什么 将所有零替换为 NA df df 0 lt NA 解释 1 它不是NULL你应该用什么来替换零 正如它所说 NUL
  • 打开 SFML 窗口出现内存读取错误

    我试图打开 SFML 窗口 但每次启动时都会显示 访问冲突读取位置 0xCCCCCCC0 错误发生在 init 方法中 相关代码 class AirportGame private sf RenderWindow window public
  • 如何将 r 数据框转换为 h2o 对象

    我对 R 和 H2O 很陌生 我试图找到一种将 r 数据帧转换为 h2o 对象的方法 我花了一些时间研究如何做到这一点 但没有运气 其他方式也是可能的 并且有详细记录如下 prosPath system file extdata prost
  • SQL 分隔符上的逗号分隔列

    这是一个 split 函数 它可以应用为dbo Split sf we fs we 当我将字符串更改为列名时 它不起作用 例如dbo Split table columnName Select from dbo Split email pr
  • Jasmin + karma:“错误:模块‘DynamicTestModule’导入了意外的值‘HttpClient’。请添加 @NgModule 注释。”

    我使用 jasmine 作为测试框架 使用 karma 作为测试运行程序 我正在尝试创建一个 HttpClient 对象 以便我可以创建一个服务作为该对象的依赖项 TestBed configureTestingModule declara