a vscode extension to help you jump between source and test file easily! 💯
- jump between source and test file, show select component if there are several possible files.
- create a test file if can't find it.
extension provides 4 ways to help you switch source/test files or create test file.
when editor focus on a javascript or typescript file, you can:
- open command palette, and input find test file, you can find two commands:
- or you can find two icons in top right of editor:
- or you can open context menu to find these two options:
- or you can use shortcut:
- findTestFile:
cmd+shift+t
(window:ctrl+shift+t
) - createTestFile:
cmd+alt+t
(window:ctrl+alt+t
)
- findTestFile:
if you want extension work as you expected
the extension will think source file and test file should have the same basename and extension. for example, if the source file is a.ts
. then its test file should be [email protected]
.
Support for .ts
, .tsx
, .js
, .jsx
.
The folders are outside of the scan range. By default, it excludes node_modules
. you can add other folders that you don't want extension to find source/test files(e.g. dist
).
The regexp patterns that extension uses to detect test files. By default, it looks for .js
, .jsx
, .ts
, .tsx
files with a suffix of .spec
or .test
(e.g. extension regards example.spec.ts
or example.test.js
as test file).
Decide whether to create a test file when it can't be found. By default, it's false
.
Decide whether to insert code snippet. By default, it's true
.
The preferred way to create a test file when can't find it and findTestFile.createIfNotFind.enable
is enabled. By default, it's separate
.
separate
: Put new test file in a separate folder, and follow the same directory structure of source file (e.g. the test file ofsrc/example/a.ts
should be@separate-folder/example/a.spec.ts
).unite
: Put new test file close to the source file (e.g. the test file ofsrc/example/a.ts
should besrc/example/@unite-folder/a.spec.ts
)."
Determine the test folder structure when create test file. separate
property only enable when Find Test File › Create If Not Find: Prefer Structure Mode
is separate
. unite
property is likewise.
{
"findTestFile.createIfNotFind.preferTestDirectory": {
"separate": "__tests__",
"unite": "__tests__"
}
}
And support multi-level directories (e.g. tests/unit
).
please do not add
/
at the start and end the string (e.g. ⭕️ good:tests/unit
, ❌ bad:/tests/unit/
).
For example:
{
"findTestFile.createIfNotFind.enable": false
}
{
"findTestFile.createIfNotFind.enable": true,
"findTestFile.createIfNotFind.preferStructureMode": "separate",
"findTestFile.createIfNotFind.preferTestDirectory": {
"separate": "__tests__",
"unite": "__tests__"
}
}
MIT