gpt4 book ai didi

javascript - 要求在测试文件中导出默认模块

转载 作者:行者123 更新时间:2023-11-30 19:06:16 25 4
gpt4 key购买 nike

我试图在我的测试文件中引入一个模块,但是当我将它作为默认模块导出时我不知道如何去做。我有以下代码:

server.ts

import { MyClass } from './myClass';

/* Other code here */

const server = app.listen(port, () => {
console.log('Started');
});

export default server;

这使用 webpack 构建得非常好。我导出服务器是因为我希望能够在我的规范文件中对其进行测试。我尝试在我的测试文件中这样做(使用 mocha):

testFile.ts

describe('Express Server', () => {
let server: any;

beforeEach(() => {
delete require.cache[require.resolve('./server.ts')];
server = require('./server.ts');
});

afterEach((done: any) => {
server.close(done);
});

it('sample test', (done: any) => {
done();
});
});

当然,上面没有测试任何东西。但这并不重要,因为它会在每个之前抛出错误:SyntaxError: Unexpected token {

我如何要求我的服务器模块?我需要能够在每次测试前重置要求。

最佳答案

您的测试环境似乎不支持 TypeScript 文件。

尝试使用 ts-node 运行 mocha 命令

mocha -r ts-node/register src/**/test.ts

来源:https://journal.artfuldev.com/write-tests-for-typescript-projects-with-mocha-and-chai-in-typescript-86e053bdb2b6

关于javascript - 要求在测试文件中导出默认模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58959747/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com