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%#'
这样将数组索引添加到测试标题中。