我尝试测试反应本机组件,但出现此错误。
我意识到错误来自文件import Convertor, { ConvertorComponent } from '../components/Convertor.js中的声明convertor.test.js。export ConvertorComponent我用和导出了组件export default Convertor。
const warnedKeys: {[string]: boolean} = {};
SyntaxError: Missing initializer in const declaration
at ScriptTransformer.transformAndBuildScript (node_modules/@jest/transform/build/ScriptTransformer.js:471:17)
at ScriptTransformer.transform (node_modules/@jest/transform/build/ScriptTransformer.js:513:25)
at Object.<anonymous> (node_modules/react-native/Libraries/react-native/react-native-implementation.js:14:18)
Run Code Online (Sandbox Code Playgroud) 如何在玩笑错误情况下进行测试?这就是我所做的:我不知道是否存在如何测试它的方法。
it ('the fetch fails and throw an error', async () => {
let response = {
status: 400,
body:
{
base : "RON",
date: "2019-08-01",
rates: {"error": 'error'}
}
};
fetch.mockReject(response)
try {
await fetchData();
} catch (e) {
expect(e).toEqual(response);
expect(await fetchData()).rejects.toThrow(e);
}
});
Run Code Online (Sandbox Code Playgroud)
这是代码:
fetchData = async () => {
try {
const response = await fetch('https://api.exo/latest?base=RON');
const data = await response.json();
return data;
} catch (e) {
throw e;
}
};
Run Code Online (Sandbox Code Playgroud)