【问题标题】:Configure karma-firefox-launcher in Angular 15在 Angular 15 中配置 karma-firefox-launcher
【发布时间】:2023-01-31 17:16:03
【问题描述】:

Angular 15 的配置文件比以前的版本更少,包括。 karma.conf.js 已被删除。为了在 Angular 14 下运行 ng test --browsers=FirefoxHeadless,我曾经将 karma.conf.js 配置为 require('karma-firefox-launcher') 插件。

这应该如何在 Angular 15 中完成?

  • 是否可以从之前的 Angular 14 项目复制完整的 karma.conf.js 并将 angular.json 中的集合 "architect.test.options.karmaConfig" 添加到该 karma.conf.js 文件?
  • 或者是否有其他方法可以直接在angular.json 中配置 Karma 插件,这样会更好吗?
  • Angular 15 还能通过生成初始 karma.conf.js 来帮助我吗?

(动机:我的构建服务器在无头容器中执行ng test,所以为了简单的构建容器配置,我更喜欢FirefoxHeadless而不是测试运行器的默认浏览器)

【问题讨论】:

    标签: angular karma-runner angular15


    【解决方案1】:

    您可以像您描述的那样手动完成,或者您可以使用业力模块从头开始创建配置文件,运行:karma init karma.conf.js 但我发现只有无头浏览器是 ChromeHeadless(见图)。

    文档中的更多信息:http://karma-runner.github.io/6.4/intro/configuration.html 确保您之前遵循以下步骤:http://karma-runner.github.io/6.4/intro/installation.html

    添加 conf 文件后,更改 angular.json:

    "test": {
      [...]
      "options": {
        [...]
        "karmaConfig": "karma.conf.js",
        [...]
      }
    }
    

    之后,您可以使用ng testnpm test 来运行测试。

    我认为你不应该直接在 angular.json 中添加业力配置(我没有检查它是否可能)

    【讨论】:

    • 被选为“接受的答案”,谢谢! (但不是 100% 有信心;Firefox 和其他软件应该可用,但可能仍然需要编辑配置文件而不是 CLI?- 没有针对配置文件的内容!)
    【解决方案2】:

    在 Angular 15 中,您可以通过 ng generate config karma 生成缺少的配置,然后根据您的需要进行修改。这也会自动为您更新 angular.json 配置文件。

    【讨论】:

      猜你喜欢
      • 2017-07-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-03-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多