首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >函数内部的测试变量(jestjs)

函数内部的测试变量(jestjs)
EN

Stack Overflow用户
提问于 2019-09-25 16:21:07
回答 1查看 119关注 0票数 0

可以在函数内部测试简单的变量吗?我只想测试我函数的一部分。例如

代码语言:javascript
复制
function x(number) {
   let len = number.toString().length
   return 'End'
}

我想测试一下len变量是否设置正确。有可能吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-09-25 16:25:13

不可能为js函数的私有内部编写断言。

我个人发现这个障碍鼓励编写更好的测试。现有的测试继续强制内部更改正常工作。

针对内部函数行为编写测试会增加被测试代码的维护工作量。由于测试与源代码的耦合越来越紧密,因此在进行更改时需要更多的关注。

如果您发现自己想要测试一些内部行为,建议创建另一个函数。例如

代码语言:javascript
复制
export class Math extends React.Component {
    ...

    computeLen(input) {
        return input.toString().length;
    }

    function x(number) {
     let len = computeLen(number)
     return 'End'
   }
}

现在,您可以断言,无论使用什么逻辑来计算样本长度,对于不同的输入,都能按预期工作。这种逻辑提取通常也会使函数x(number)更具可读性。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58094148

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档