首页 > 解决方案 > 使用 Jest 验证返回

问题描述

我对 Jest 很陌生,并试图测试这个功能,在这个功能中我已经根据特定条件停止了执行。解决这种情况的最佳方法是什么,这是我的代码片段:

function(data: any){
    // Some operation
      if(data.anyProperty === '')
          return;
    // Some more operation
}

请注意,我没有从函数中返回任何内容,因为我没有返回任何内容,对于其他情况,我正在交叉验证更新的值,但无法理解forexpect中应该包含什么。expectreturn

标签: javascripttypescriptjestjstestcase

解决方案


理想情况下,函数应该返回一个值、更新/修改某个值或引发任何错误。

对于您的函数没有返回任何内容的情况,使用没有值的 return 将返回值undefined,因此您可以拥有这样的expect东西:

expect(<your function()>).toBeUndefined();

此外,在大多数框架中,都有一个明确的“不抛出”断言,所以如果你的函数没有做一些你可以断言的特殊事情,那么你可以有这样的事情:

expect(() =>{}).not.toThrow()

它表示您的函数运行成功,没有引起任何担忧。


推荐阅读