【发布时间】:2021-09-13 23:29:10
【问题描述】:
jest 和 react 代码测试的新手。 我正在测试一个文件,该文件从 react-native-base64 导入 base64 并解码从 useEffect 中的后端系统获取的值。下面是示例代码。
import base64 from "react-native-base64";
const xyzWork = async () => {
const value = await - fetch data from backend
const decodedValue = base64.decode(value);
...
...
...
}
useEffect(() => {
xyzWork();
}, []);
return <div><SomeComponent /></div>;
我在使用 jest 测试此代码时遇到了困难。 我尝试了多种方法来测试相同的内容,但由于多个错误而失败。
一些方式,导入base64同样方式,mock这样。
base64.decode = jest.fn(()=> "testParsedValue");
尝试像 const mockedLib = jest.mock("react-native-base64", () => jest.fn()); 那样模拟整个库本身,然后模拟该变量的 base64,但似乎没有任何效果。
任何帮助将不胜感激!谢谢!
【问题讨论】:
标签: javascript reactjs unit-testing jestjs ts-jest