TypeScript中的单元测试

Mic*_*ech 37 unit-testing typescript

我知道,TypeScript已经有一天了.但我很好奇是否在这里有一些单元测试框架或者如何编写和运行TypeScript的单元测试?

TypeScript可以编译为JavaScript,我可以为该JavaScript编写测试,但它不是我想要的.

moh*_*azy 20

TypeScript不是运行时语言.要执行TypeScript代码,首先需要将其编译为JavaScript; 同样适用于测试它.您的测试也可以在TypeScript中,将它们编译成JavaScript并使用您喜欢的测试框架来执行测试.

  • 今天不一定如此.像`ts-mocha`和`ts-node`这样的包允许执行typescript而不在磁盘上生成js文件.这通常是可取的,因为它会为您处理源代码,并且不会使用已编译的js混乱您的工作区.当然,我确信js仍在内存中生成,但我不确定在运行测试之前进行转换是目前最简单或最有效的工作流程. (5认同)

Fen*_*ton 16

您可以使用任何现有的JavaScript单元测试框架在TypeScript或JavaScript中编写单元测试.

很快,我想现有的框架将获得TypeScript环境定义文件(更新 - 它们有:http://definitelytyped.org/),这将使它们静态类型,就TypeScript而言.在此期间,您可能需要阅读环境声明并在测试开始时添加一些自己的声明.

或者,您可以使用tsUnit TypeScript单元测试框架,它是一个用TypeScript编写的单元测试框架 - 因此它可以与TypeScript一起使用(也可以在JavaScript中使用).