小编Hys*_*ter的帖子

在没有导出的情况下测试打字稿模块

我正在处理旧环境,并且我有包含模块或/和类的 Typescript 文件

class SomeClass {
    ...
}

module AndAModule {
    export namespace NestedNamespace {
        ...
    }
}
Run Code Online (Sandbox Code Playgroud)

注意顶级模块/类中缺少“export”关键字。

我想使用 Jest 库测试“NestedNamespace”中的函数。但是,当我在测试文件中导入 Typescript 文件时:

var service = require("/path/to/file/SomeService.ts")
Run Code Online (Sandbox Code Playgroud)

我无法访问 SomeService.ts 文件中定义的类或模块。如果在模块和类之前添加“export”关键字,我可以通过从 require 返回的对象访问它们,但是这会破坏整个环境和其他文件,因为在此之后,模块和类不存在于生成的 outFile 中通过打字稿。

如何从文件中导入所需的模块,而不添加任何导出语句?

unit-testing typescript jestjs

5
推荐指数
1
解决办法
952
查看次数

标签 统计

jestjs ×1

typescript ×1

unit-testing ×1