$ gnpm install @tapjs/typescript
@tapjs/typescript
A default tap plugin providing typescript support.
This plugin is installed with tap by default. If you had
previously removed it, you can tap plugin add @tapjs/typescript
to
bring it back.
When enabled, this plugin does the following things:
ts
, tsx
, cts
, mts
, and jsx
to the file
extensions that tap will load.ts-node/esm
to the loader set.typecheck
config flag, which is false
by defaulttsconfig
config option, for specifying a project
config for your tests to use.The typecheck
config defaults to false, even though type
checking your tests is generally a good idea. Unfortunately, it
is also often considerably slower, adding as much as 500-750ms to
each test suite file, which can be painful if you have a lot of
tests. In large project folders, the effect can be even more
pronounced.
You can enable type checking with --typecheck
on the command
line, or by putting typecheck: true
in .taprc
, or { "tap": { "typecheck": true }}
in package.json
, or TAP_TYPECHECK=1
in
the environment. It is highly recommended to enable it in CI, for
example by setting TAP_TYPECHECK=1
in the environment.
The "skipLibCheck": true
option in tsconfig will also speed things up a
bit, at the expense of some type safety.
Note that even if you pre-compile your tests, they will still be
subject to type checking if "allowJs": true
is set in your
tsconfig.
Copyright 2013 - present © cnpmjs.org | Home |