我正在尝试测试一个异步函数,它从JSON文件中获取数据并将其存储在变量中
我正在尝试测试的函数(存在于registration.js中):
async function readJSONFile(url) {
const data = await $.getJSON(url);
return data;
}
let returnedData = await readJSONFile(testURL);
module.exports = readJSONFile;
如何使用jest创建一个测试文件来测试这个函数?
我尝试了这个代码进行测试,但由于某种原因,它没有阅读主JavaScript文件
const readJSONFile = require("../JS/registration.js").readJSONFile;
test("check if the data is retrieved", async () => {
const testData = {
"courseName" : {
"instrName" : "profName",
"location" : "classLocation",
"timings" : "classTimings"
}
}
const data = await $.getJSON(testURL);
expect(data).toBe(testData)
});
错误:
SyntaxError: await is only valid in async functions and the top level bodies of modules
项目结构:
| Jest Testing
| registration.test.js
| JS
| registration.js
1条答案
按热度按时间j8ag8udp1#
require
需要module路径,返回exports
对象。您已经将属性名称附加到路径。
你也没有考虑到这两个JS文件在不同的目录中。