如何使用 Jest 测试类中的 private 函数
如下示例代码:
class Card {
private props = {}
constructor (query) {
this.props = this.preprocess(query)
}
private preprocess (query) {
const { name, age } = query;
return {
name: toString(name),
age: toInteger(age)
}
}
public getResult () {
const {name, age} = this.props;
// 其他大段逻辑
...
...
return something;
}
}
preprocess
函数用于数值初始化转换,从功能上来说 props
和 preprocess
确实没有被外部访问的需求,因此设置访问权限为 private
。
现在想要对 preprocess
测试确保数值转换无遗漏,类型选择无误。
getResult
是唯一的对外方法,但使用 props
只是 getResult
复杂逻辑中的一小部分,如果通过 getResult
覆盖 preprocess
的测试会增加复杂度。
对 private
成员做单元测试有哪些方法?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论