Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.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
Unit testing 模具1.0.2中是否破坏了玩笑计时器模拟?_Unit Testing_Jestjs_Stenciljs - Fatal编程技术网

Unit testing 模具1.0.2中是否破坏了玩笑计时器模拟?

Unit testing 模具1.0.2中是否破坏了玩笑计时器模拟?,unit-testing,jestjs,stenciljs,Unit Testing,Jestjs,Stenciljs,我使用的是StencilJSV1.0.2,它开玩笑地运行单元测试。我有以下代码,但它的行为似乎不符合预期。我是否正确使用了API 功能正常(延迟:数字){ 设置超时(()=>{ 返回3; },延误); } 测试(‘计时器’,()=>{ 开玩笑。使用faketimers(); 常数结果=正常(1000); 开玩笑提前计时(999); 期望(结果); jest.runAllTimers(); 期望(结果)toBe(3); } ); 测试应该通过,但在最后一条expect语句中失败这一行: cons

我使用的是StencilJSV1.0.2,它开玩笑地运行单元测试。我有以下代码,但它的行为似乎不符合预期。我是否正确使用了API

功能正常(延迟:数字){
设置超时(()=>{
返回3;
},延误);
}
测试(‘计时器’,()=>{
开玩笑。使用faketimers();
常数结果=正常(1000);
开玩笑提前计时(999);
期望(结果);
jest.runAllTimers();
期望(结果)toBe(3);
} );
测试应该通过,但在最后一条expect语句中失败

这一行:

const result=ok(1000);
…将
result
设置为
ok
的返回值

…但是
ok
不会返回任何内容,因此
结果
总是
未定义

因此,第一个
expect
通过:

expect(result).toBeUndefined();//成功!
…但是第二个
expect
失败,因为
结果将始终是
未定义的

expect(result).toBe(3)//