使用打字稿在开玩笑中模拟类时引发的"缺少分号"错误



我正在使用Typescript并试图用Jest测试我的代码,并且我在一个类上进行了类型转换,因此我可以模拟它。

不幸的是,当我运行测试套件时,我得到以下错误:

SyntaxError: C:Projectssim_editorserversrctestsroutes.test.ts: Missing semicolon (7:37)
下面是我的代码:
describe('Unit test api routes', () => {
jest.mock('../controllers')
const mkControllers = Controllers as jest.MockedClass<typeof Controllers>
beforeEach(() => {
mkControllers.mockClear()
})
.
.
.
The rest of my test suite
})

错误指向我声明" mkcontroller "的行。

下面是更深层次的错误日志:

at Parser._raise (node_modules/@babel/parser/src/parser/error.js:97:45)
at Parser.raiseWithData (node_modules/@babel/parser/src/parser/error.js:92:17)
at Parser.raise (node_modules/@babel/parser/src/parser/error.js:41:17)
at Parser.semicolon (node_modules/@babel/parser/src/parser/util.js:131:10)
at Parser.parseVarStatement (node_modules/@babel/parser/src/parser/statement.js:707:10)
at Parser.parseStatementContent (node_modules/@babel/parser/src/parser/statement.js:223:21)
at Parser.parseStatement (node_modules/@babel/parser/src/parser/statement.js:163:17)
at Parser.parseBlockOrModuleBlockBody (node_modules/@babel/parser/src/parser/statement.js:880:25)
at Parser.parseBlockBody (node_modules/@babel/parser/src/parser/statement.js:856:10)
at Parser.parseBlock (node_modules/@babel/parser/src/parser/statement.js:826:10)

谢谢。

显然我没有将Babel配置为与Typescript一起工作,因为Jest必须使用它。确保你按照"使用通天塔"下面的说明去做。和

Using typescript

最新更新