【问题标题】:Is it possible to change location of Cypress E2E folders in NX / Angular / Storybook?是否可以在 NX/Angular/Storybook 中更改 Cypress E2E 文件夹的位置?
【发布时间】:2021-09-20 15:33:13
【问题描述】:

我们有一个不断增长的项目,该项目已经拥有 50 多个库文件夹(最终可能会达到 5 到 10 倍,甚至更多)。
每个库文件夹都有 Storybook 故事、Jest 规范、Angular 组件、服务、NgrxStores 等。 Cypress E2E 测试是在 libs 文件夹之外生成的,这最初非常令人困惑并且没有任何意义。

是否可以将这些赛普拉斯项目的位置更改为自定义位置? 例如,虚构的图书馆的赛普拉斯 E2E 文件夹: Libs -> CommonUI -> DropdownList 库将是:Libs -> CommonUI -> DropdownList-e2e

这可能吗?或任何其他解决方案? 谢谢。

【问题讨论】:

    标签: angular cypress storybook nomachine-nx


    【解决方案1】:

    Nx 不一定强制执行文件夹结构。因此,您可以随意移动任何文件夹,只需更新workspace.jsonangular.json 文件中的所有相关路径。您还需要更新 jest.config.js 文件中的一些条目。

    您可以使用@nrwl/workspace:move 原理图,它会自动为您重写上述命名文件中的条目。

    要对此进行测试,请将 e2e 应用移动到您要放置它的目录中,然后更改该项目的 workspace.jsonangular.json 文件中的条目。

    您需要更改这些条目:

    "contractors-e2e": {
          "root": "apps/contractors-e2e", <<<< 1
          "sourceRoot": "apps/contractors-e2e/src", <<<< 2
          "projectType": "application",
          "targets": {
            "e2e": {
              "executor": "@nrwl/cypress:cypress",
              "options": {
                "cypressConfig": "apps/contractors-e2e/cypress.json", <<<< 3
                "tsConfig": "apps/contractors-e2e/tsconfig.e2e.json", <<<< 4
                "devServerTarget": "contractors-app:serve:development"
              },
    

    【讨论】:

    • 感谢这个例子,它有很大帮助。我会尝试这种方法,看看它是否适合我们。对于数百个库,这将变得很痛苦。如果 Angular-Cli 可以在生成时自定义它,那就太好了。
    猜你喜欢
    • 2012-01-22
    • 2020-09-06
    • 1970-01-01
    • 1970-01-01
    • 2021-05-22
    • 2023-02-23
    • 2021-11-14
    • 1970-01-01
    • 2011-05-04
    相关资源
    最近更新 更多