Tùy thuộc vào cách bạn có thể tổ chức mã của mình, một tùy chọn khác có thể là đặt biến env trong một hàm được thực thi trong thời gian chạy.
Trong tệp này, env var được đặt tại thời điểm nhập và yêu cầu các động require
để kiểm tra các env vars khác nhau (như được mô tả trong câu trả lời này ):
const env = process.env.MY_ENV_VAR;
const envMessage = () => `MY_ENV_VAR is set to ${env}!`;
export default myModule;
Trong tệp này, env var được đặt tại envMessage
thời điểm thực thi và bạn có thể thay đổi process.env trực tiếp trong các thử nghiệm của mình:
const envMessage = () => {
const env = process.env.MY_VAR;
return `MY_ENV_VAR is set to ${env}!`;
}
export default myModule;
Thử nghiệm Jest:
const vals = [
'ONE',
'TWO',
'THREE',
];
vals.forEach((val) => {
it(`Returns the correct string for each ${val} value`, () => {
process.env.MY_VAR = val;
expect(envMessage()).toEqual(...