如何在 React Native 中使用 Jest 测试功能组件内的功能

时间:2021-07-28 17:26:20

标签: reactjs react-native unit-testing jestjs

我在 react native 的 javascript 文件中有以下代码

const LoseView = () => {

const [currentJoke, setCurrentJoke] = useState("");

const fetchJokeApi = async () => {
    // Fetching data from the API
        await fetch("https://v2.jokeapi.dev/joke/Miscellaneous,Pun?blacklistFlags=nsfw,religious,political,racist,sexist,explicit&type=single")
        .then((response) => response.json())
        .then((data) => 
            setCurrentJoke(data.joke),
            );
  };

useEffect(() => {
    fetchJokeApi();
 }, [])

return(
    <View style={{ flex: 1,alignItems: 'center', justifyContent: 'center'}}>
        <Text>you lost!, have a lame consolation joke</Text>
        <Text>{currentJoke}</Text>
   </View>
);
}


export {LoseView};

我想测试保存在变量 fetchJokeApi 中的函数,但我不知道如何用 jest 专门测试它。因为在测试文件中,由于脚本末尾的导出,我知道我可以导入 LoseView,但是如何访问它的内部函数?我应该单独导出内部函数吗?

0 个答案:

没有答案