[英]Accessing environment variables from Cypress Fixture
我剛剛開始使用 Cypress 進行 API 測試自動化。 我想使用Cypress.env
在我的測試文件中訪問一些環境變量。 cypress 文檔將配置文件 ( cypress.json
) 列為存儲環境變量的明顯位置。
我需要測試來自 40 多家數據服務公司的眾多端點。 所有 40 項服務的業務邏輯各不相同。
因此, cypress.json
中"env"
中的對象很多,因此無法在一個文件中進行管理。
我解決這個問題的思路是在 Fixtures 中創建一個環境變量文件,為每個數據服務存儲"env"
對象。 但是我不確定這是否可能。
另外,是否可以在一個項目中有多個cypress.json
文件?
任何建議將不勝感激。
這是一個數據服務提供商的"env"
變量示例。
{
"env": {
"dataService": "XXDataService",
"companyRegNo": "XX4457ZZ",
"language": "EN",
"countryCode": "UK",
"companyType": "Ltd",
"companySearchName": "",
"searchParams": "",
"reportParams": "",
"username": "",
"password": "",
}
}
我遇到了同樣的問題,終於制作了自己的插件。
用法
npm i -D cypress-template-fixtures
require('cypress-template-fixtures')(on, config);
在cypress/plugins/index.js
中。module.exports = (on, config) => {
require('cypress-template-fixtures')(on, config); // Add this line
return config;
};
cypress/fixtures.out/
添加到.gitignore
中。cypress/fixtures
目錄中的普通燈具文件中使用{{VAR_NAME}}
。 cypress/fixtures/example.json
:
{
"name": "{{NAME}}",
"title": "{{TITLE}}",
"email": "{{EMAIL}}",
"body": "{{BODY}}"
}
cypress.json
或cypress.env.json
中提供VAR_NAME
。CYPRESS_VAR_NAME
您可以創建自己的
cypress.env.json
文件,Cypress 會自動檢查該文件。 此處的值將覆蓋配置文件中的沖突環境變量(默認為cypress.json
)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.