可以在函数内部测试简单的变量吗?我只想测试我函数的一部分。例如
function x(number) {
let len = number.toString().length
return 'End'
}我想测试一下len变量是否设置正确。有可能吗?
发布于 2019-09-25 16:25:13
不可能为js函数的私有内部编写断言。
我个人发现这个障碍鼓励编写更好的测试。现有的测试继续强制内部更改正常工作。
针对内部函数行为编写测试会增加被测试代码的维护工作量。由于测试与源代码的耦合越来越紧密,因此在进行更改时需要更多的关注。
如果您发现自己想要测试一些内部行为,建议创建另一个函数。例如
export class Math extends React.Component {
...
computeLen(input) {
return input.toString().length;
}
function x(number) {
let len = computeLen(number)
return 'End'
}
}现在,您可以断言,无论使用什么逻辑来计算样本长度,对于不同的输入,都能按预期工作。这种逻辑提取通常也会使函数x(number)更具可读性。
https://stackoverflow.com/questions/58094148
复制相似问题