【问题标题】:Jest: How to test function that returns a function笑话:如何测试返回函数的函数
【发布时间】:2019-07-01 13:43:31
【问题描述】:

我想用 Jest 测试几个功能。所有函数都是返回函数的函数。

一个简单的例子:

export function csl(foo) {
  return function(bar) {
      return(bar)
     };
}

现在我想测试输入是否=返回。我试试看:

  expect(() => csl("foo")).toBe("foo") // = received: [Function anonymous]

  expect(csl("foo")).toBe("foo") // = received: undefined

如何测试这些功能?

【问题讨论】:

  • @CodyG oh gods, no
  • @VLAZ 同意,通过查看函数而不是生成函数的结果,我不知道 Ckappo 想要什么......但现在我意识到他们可能不知道如何调用函数.
  • @CodyG 似乎是一个相当标准的测试,唯一的“扭曲”是它正在测试一个返回函数的函数。所以它只是缺少内部函数的第二次执行。我去查看 Jest 文档是否有更好的方法,然后查看是否有 CDN 副本来演示如何操作,但 Ji aSH 同时回答了基本上是什么我想说。找不到更好的 CDN 副本。

标签: javascript jestjs


【解决方案1】:

需要调用返回的函数

expect(csl("foo")("bar")).toBe("bar")
                 ^^^^^^^

【讨论】:

    猜你喜欢
    • 2020-10-20
    • 2016-12-26
    • 2018-12-28
    • 1970-01-01
    • 2021-08-19
    • 2019-12-11
    • 1970-01-01
    • 2019-04-15
    • 2023-03-25
    相关资源
    最近更新 更多