News

Run PHPUnit Tests From Sublime Text

Published
Run PHPUnit Tests From Sublime Text image

Sublime Text is a great editor. It’s lightweight, fast, and extremely customizable. However, one downside to it compared to a full blown IDE is it doesn’t come with support for running your PHPUnit tests directly from the test class you are working with.

To solve this problem, Adam Wathan created and released a free package named Sublime PHPUnit that allows you to run your tests from a keyboard shortcut. Let’s take a look at how to add this package to your arsenal.

Sublime PHPUnit Installation

Installing is just a matter of cloning the repo to your Packages directory. First, cd to that directory:

cd Library/Application\ Support/Sublime\ Text\ 3/Packages

Then clone the repo:

git clone git@github.com:adamwathan/sublime-phpunit.git

After this, it’ll be installed and ready to be used by opening up the command palette by hitting command + shift + p and type “phpunit” to see a list of available commands:

Customizing Sublime PHPUnit

The default install works great by going through the command palette, but that can be slow when you are running tests over and over. To make this process faster you can define your keyboard shortcuts by going to preferences -> key bindings and adding your own.

Here is how I setup the two tests that I regularly run:

[
{ "keys": ["ctrl+t"], "command": "run_all_phpunit_tests" },
{ "keys": ["shift+super+t"], "command": "run_phpunit_test" },
]

You can also add keyboard shortcuts for the other commands as well and here is a full list of all the options:

run_phpunit_test
run_phpunit_tests_in_dir
run_single_phpunit_test
run_all_phpunit_tests

Just make sure your key combo doesn’t interfere with any existing that you use.

Sublime PHPUnit with iTerm

By default, the package opens the Mac terminal app when you call a command, but you can tell Sublime Text to use iTerm by opening up the preferences and adding:

"phpunit-sublime-terminal": "iTerm",

If you’ve been wanting to streamline your test running through Sublime Text give this package a try. I think you’ll enjoy the speed improvements.

Eric L. Barnes photo

Eric is the creator of Laravel News and has been covering Laravel since 2012.

Sponsored

serpapi logo
SerpApi

The Web Search API for Your LLM and AI Applications

Visit SerpApi

The latest

View all →
Unlearn.dev goes free for a weekend, October 10 and 11 image

Unlearn.dev goes free for a weekend, October 10 and 11

Read article
Tashil: Laravel Subscription Plans and Feature Usage Limits image

Tashil: Laravel Subscription Plans and Feature Usage Limits

Read article
Decide with Jev: Laravel AI That Answers with a Probability image

Decide with Jev: Laravel AI That Answers with a Probability

Read article
JetBrains Air: Run AI Coding Agents in JetBrains IDEs image

JetBrains Air: Run AI Coding Agents in JetBrains IDEs

Read article
Memoize Tagged Cache Reads in Laravel image

Memoize Tagged Cache Reads in Laravel

Read article
Eloquent Refreshes: Load Generated Columns After Save image

Eloquent Refreshes: Load Generated Columns After Save

Read article