【问题标题】:Angular library include stubs and testing helper filesAngular 库包括存根和测试帮助文件
【发布时间】:2021-02-24 18:35:42
【问题描述】:

我有一个简单的 Angular 库供内部使用,其中包含一些管道和指令,该库用于多个项目。 当开发人员需要编写单元测试时,他们正在为管道创建一个存根文件。他们在 5 个项目中具有相同的存根,总是重复相同的代码。

我想要做的是为管道或指令提供这个存根文件,类似于RouterTestingModule,包括一个测试模块或将存根本身包含在我的库中,但我没有任何线索如何做到这一点。

我是否应该创建一个LibraryTestingModule 并将其包含在主public_api 中,并将其包含在LibraryModule 中,这样有意义吗?

【问题讨论】:

    标签: angular stub angular-library


    【解决方案1】:

    我的解决方法如下:

    src路径的同级,创建testing文件夹。在其中包含下一个文件

    /src
    /testing
    ┣ /src
    ┃ ┣ /stubs // my testing files here
    ┃ ┗ index.ts
    ┣ index.ts // barrel file
    ┣ package.json
    ┣ public_api.ts // similar to index.ts, entry point for public API of the package
    ┗ library-testing.module.ts // Angular module
    

    对我来说,这就是诀窍,包括 package.json 内的以下几行

    {
      "ngPackage": {
        "lib": {
          "entryFile": "public_api.ts",
        }
      }
    }
    

    有了所有这些,现在我可以使用my-lib/some-pipe.ts 并在测试文件中,现在我可以访问my-lib/testing/some-stub-pipe.ts

    【讨论】:

      猜你喜欢
      • 2020-07-04
      • 2019-06-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-17
      • 1970-01-01
      相关资源
      最近更新 更多