Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jestjs 在test.each Jest中使用变量表达式_Jestjs - Fatal编程技术网

Jestjs 在test.each Jest中使用变量表达式

Jestjs 在test.each Jest中使用变量表达式,jestjs,Jestjs,下面是我的代码片段: describe('Upper Describe,()=>{ let value; beforeEach(()=>{ value=require('testModule').value; }); it.each([ `${value}`, ])('test something',(value)=>{ console.log(value); }); }); 这里的值是未定义的 我猜这是因为当descripe

下面是我的代码片段:

describe('Upper Describe,()=>{
  let value;
  beforeEach(()=>{
    value=require('testModule').value;
  });

  it.each([
    `${value}`,
  ])('test something',(value)=>{
    console.log(value);
  });
});
这里的
未定义的

我猜这是因为当descripe块在开始时加载时,
it.each的值也会加载。有谁能帮我找到一个解决办法,让它里面的变量值都有。每个数组


提前谢谢

而不是将值本身传递给它。每个
传递一个返回值的函数

这将延迟值的计算,以便在每个可以修改返回的内容之前

descripe('supper descripe',()=>{
让价值;
在每个之前(()=>{
值=要求('testModule')。值;
});
每个都是([
()=>`${value}`,//传递一个返回值的函数
])(‘测试某物’,(func)=>{
console.log(func());//成功:从testModule输出值
});
});

为什么不将
要求
描述
中移出?我刚刚看到了,它帮助我更好地理解了这个问题,我用一种变通方法更新了我的答案。它非常有效。非常感谢:)如果您能告诉我如何在It语句中包含
value
,那将非常有帮助。就像我希望我的it语句更容易理解一样,所以如果
value=abc
,我希望我的it语句的描述是
为abc
测试一些东西。你也能帮我实现这一点吗?你可以,但你不能注入
值。看起来最好的方法是像
'testsomething%#'
这样将数组索引添加到测试标题中。