Cypress 路径别名-js教程

首页 2024-07-11 14:50:47

不久前我遇到了它路径别名。提到开发人员是如何在他们身上的 react 和 node 项目中导入的文章看起来很好。我想知道我是否可以在我的赛普拉斯自动化中使用这个功能。

让我给你一些背景信息。因此,我的项目介绍通常如下:


import productspage from '../../pages/productspage';
import navigation from '../../pages/navigation';
import testdata from '../../../../fixtures/product-listing.json'
但使用路径别名,导入看起来像:


import productspage from '@pages/productspage';
import navigation from '@pages/navigation';
import testdata from '@fixtures/product-listing.json'
更干净,对吧?

按照说明在你的 cypress 路径别名设置在项目中。

第 1 步:webpack 预处理器 安装在您的项目中 webpack 预处理器插件。这最终将有助于解决路径别名。


npm install --save-dev @cypress/webpack-preprocessor
第 2 步:webpack 选项 创建 webpack 选项,包括引用别名路径。您可以根据您的喜好将此对象保留在其中 cypress.config.js 或在单独的文件中。


const wpoptions = {
  webpackoptions: {
    resolve: {
      alias: {
        '@pages': path.resolve(__dirname, './cypress/e2e/pages'),
        '@fixtures': path.resolve(__dirname, './cypress/fixtures'),
        '@': __dirname,
      },
    },
  },
  watchoptions: {},
};
第 3 步骤:预处理器插件配置 接下来,配置 cypress 使用每个文件 webpack 预处理器,并使用上一步中指定的选项


setupnodeevents(on, config) {
  on('file:preprocessor', webpackpreprocessor(wpoptions));
}
第四步:添加jsconfig路径 这一步将为您选择 ide 启用智能感知。将以下设置添加到项目根目录中 jsconfig.json 文件中。


{
  "compileroptions": {
    "paths": {
      "@pages/*": [
        "./cypress/e2e/pages/*"
      ],
      "@fixtures/*": [
        "./cypress/fixtures/*"
      ],
      "@/*": [
        "./*"
      ]
    }
  }
}
仅此而已!

现在你可以这样创建导入


import productspage from '@pages/productspage';
import navigation from '@pages/navigation';
import testdata from '@fixtures/product-listing.json'

以上是Cypresss 详情请关注其他相关文章,了解路径别名!


p