Hey everyone I’ve been getting back into elixir over the past few weeks, so I decided it was finally time to build a VS Code extension that I’ve been thinking about for awhile - a test runner that supports multiple languages and testing frameworks.
So far I’ve wired up elixir and ruby, but I hope to grow it into something like GitHub - vim-test/vim-test: Run your tests at the speed of thought over time, which was the source of inspiration. The test runner currently supports:
- Running tests for the current line number
- Running tests for a file
- Configuring your project for running the entire test suite
- Configuring your project for running just your unit tests
- Rerunning the last test command
- Opening alternate files (i.e. bounce from test file to source file, and back again)
If you’re a vscode-vim user, you can wire up leader keys for running test commands with something like this in your settings.json
:
{
"before": ["<leader>", "s"],
"commands": ["vscode-test.runLineTests"]
},
{
"before": ["<leader>", "l"],
"commands": ["vscode-test.runLastTests"]
},
{
"before": ["<leader>", "t"],
"commands": ["vscode-test.runFileTests"]
},
{
"before": ["<leader>", "a"],
"commands": ["vscode-test.runAllTests"]
},
{
"before": ["<leader>", "u"],
"commands": ["vscode-test.runAllUnitTests"]
},
You can view my dotfiles to see how I’ve set it up. Also, it should be easy to bind them to hotkeys if that’s more your thing