Javascript 从Cypress Fixture访问环境变量

Javascript 从Cypress Fixture访问环境变量,javascript,api,visual-studio-code,environment-variables,cypress,Javascript,Api,Visual Studio Code,Environment Variables,Cypress,我刚刚开始使用Cypress实现API测试自动化。我想在测试文件中使用Cypress.env访问一些环境变量。cypress文档将配置文件(cypress.json)列为存储环境变量的明显位置 我需要测试来自40多家数据服务公司的众多端点。所有40个服务的业务逻辑各不相同 因此,cypress.json中的“env”中的对象数量众多,因此无法在一个文件中管理 我解决这个问题的思路是在fixture中创建一个环境变量文件,存储每个数据服务的“env”对象。但是我不确定这是否可能 另外,在一个项目中

我刚刚开始使用Cypress实现API测试自动化。我想在测试文件中使用
Cypress.env
访问一些环境变量。cypress文档将配置文件(
cypress.json
)列为存储环境变量的明显位置

我需要测试来自40多家数据服务公司的众多端点。所有40个服务的业务逻辑各不相同

因此,
cypress.json
中的
“env”
中的对象数量众多,因此无法在一个文件中管理

我解决这个问题的思路是在fixture中创建一个环境变量文件,存储每个数据服务的
“env”
对象。但是我不确定这是否可能

另外,在一个项目中是否可以有多个
cypress.json
文件

任何建议都将不胜感激

下面是一个数据服务提供商的
“env”
变量示例

{
    "env": {
        "dataService": "XXDataService",
        "companyRegNo": "XX4457ZZ",
        "language": "EN",
        "countryCode": "UK",
        "companyType": "Ltd",
        "companySearchName": "",
        "searchParams": "",
        "reportParams": "",
        "username": "",
        "password": "",
    }
}
提及

您可以创建自己的
cypress.env.json
文件,cypress将创建该文件 自动检查。此处的值将覆盖冲突的 配置文件中的环境变量(
cypress.json
by 默认值)

提及

您可以创建自己的
cypress.env.json
文件,cypress将创建该文件 自动检查。此处的值将覆盖冲突的 配置文件中的环境变量(
cypress.json
by 默认值)


我也遇到了同样的问题,最终制作了自己的插件

用法

  • npm i-D cypress模板固定装置
  • 添加
    require('cypress-template-fixtures')(on,config)
    cypress/plugins/index.js
  • module.exports=(打开,配置)=>{
    require('cypress-template-fixtures')(on,config);//添加此行
    返回配置;
    };
    
  • 将生成的fixture文件夹
    cypress/fixtures.out/
    添加到
    .gitignore
  • cypress/fixtures
    目录中的普通fixtures文件中使用
    {{VAR\u NAME}}
  • cypress/fixtures/example.json

    {
    “名称”:“{name}}”,
    “标题”:“{{title}}”,
    “电子邮件”:“{email}}”,
    “正文”:“{body}”
    }
    
  • cypress.json
    cypress.env.json
    中提供
    VAR_NAME
  • 或在系统或中提供
    CYPRESS\u VAR\u NAME

  • .

    我也遇到了同样的问题,最终制作了自己的插件

    用法

  • npm i-D cypress模板固定装置
  • 添加
    require('cypress-template-fixtures')(on,config)
    cypress/plugins/index.js
  • module.exports=(打开,配置)=>{
    require('cypress-template-fixtures')(on,config);//添加此行
    返回配置;
    };
    
  • 将生成的fixture文件夹
    cypress/fixtures.out/
    添加到
    .gitignore
  • cypress/fixtures
    目录中的普通fixtures文件中使用
    {{VAR\u NAME}}
  • cypress/fixtures/example.json

    {
    “名称”:“{name}}”,
    “标题”:“{{title}}”,
    “电子邮件”:“{email}}”,
    “正文”:“{body}”
    }
    
  • cypress.json
    cypress.env.json
    中提供
    VAR_NAME
  • 或在系统或中提供
    CYPRESS\u VAR\u NAME

  • .

    您所说的
    是什么意思?一个项目中可能有多个cypress.json文件
    ?您所说的
    是什么意思?一个项目中可能有多个cypress.json文件
    ?谢谢Sree.Bh,我们可以谈谈吗?可以通过WhatsApp或zoom call连接吗?@Olubaba:您可以在这里添加评论。谢谢Sree.Bh,我们可以谈谈吗?可以通过WhatsApp或zoom call进行连接?@Olubaba:您可以在此处添加评论。