reactjs - 在 React 功能组件中,使用 jest 和酶测试内部功能
问题描述
我在 React 中使用功能组件,我需要为功能组件中的方法编写单元测试用例。
import React from 'react';
function print(){
console.log('hello');
}
function Welcome(props){
return <h1>{props.name}</h1>;
}
export default Welcome;
开玩笑和酶:
test (method print , ()=> {
const container = shallow(<Welcome />).instance().print()
}
instance : TypeError Cannot read property of null
我读过功能组件在 React 16+ 中没有实例。有人会帮助建议一种为功能组件中的方法编写单元测试用例的方法吗?
解决方案
我只想提醒您,您不能/不能“自己”测试功能组件的功能,您只能测试它们的实现。
因此,正如@EstusFlask 指出的那样,您不能创建FC 的实例然后在测试用例中调用它的函数;但是你可以在你的 FC 中使用这个函数(你应该,这就是创建函数的重点),然后在你的测试用例中 - 测试这个函数执行的输出/结果。
推荐阅读
- apache-spark - Spark Structured Streaming Kafka 集成 - 流式查询
- reporting-services - 登录 Reporting Services 时无法选择属性
- python - Pandas & python TypeError: 'float' 类型的对象没有 len()
- javascript - 我的价值增加了,但我没有增加它
- r - 将数据从宽转换为长,其中 'lengths(variing)' > 'length(times)'
- angular - Kendo-grid-column Angular中的kendoTextBox
- reactjs - 如何手动在@ckeditor/ckeditor5-react 中添加插件?
- bash - 如果运行命令行但不是从 shell 脚本运行,命令运行良好
- javascript - fetchPolicy 选项:“no-cache”在 useQuery 中不起作用
- javascript - 使用 express 在前端读取 Base64 图像