GithubHelp home page GithubHelp logo

tisuchi / better-phpunit Goto Github PK

View Code? Open in Web Editor NEW

This project forked from calebporzio/better-phpunit

0.0 1.0 0.0 22.58 MB

A better PHPUnit test runner for VS Code

JavaScript 95.30% PHP 4.70%

better-phpunit's Introduction

Better PHPUnit

Better PHPUnit is the most popular, cleanest, and fastest PHPUnit runner for VS Code.

Demo GIF

Run a test method:

  • Place your cursor in/on the method you want to run
  • Open the command menu: cmd+shift+p
  • Select: Better PHPUnit: run

Run a test file:

  • Open the command menu: cmd+shift+p
  • Select: Better PHPUnit: run-file

Run the entire suite:

  • Open the command menu: cmd+shift+p
  • Select: Better PHPUnit: run suite

Run the previous test:

  • Open the command menu: cmd+shift+p
  • Select: Better PHPUnit: run previous

Features:

  • Color output!
  • Run individual methods by placing your cursor anywhere in/on the method
  • Test failures are displayed in the "Problems" panel for quick access

Note: this plugin registers "tasks" to run phpunit, not a command like other extensions. This makes it possible to leverage the problem output and color terminal.

Keybindings:

{
    "key": "cmd+k cmd+r",
    "command": "better-phpunit.run"
},
{
    "key": "cmd+k cmd+f",
    "command": "better-phpunit.run-file"
},
{
    "key": "cmd+k cmd+p",
    "command": "better-phpunit.run-previous"
}

Config:

{
    "better-phpunit.commandSuffix": null, // This string will be appended to the phpunit command, it's a great place to add flags like '--stop-on-failure'
    "better-phpunit.phpunitBinary": null, // A custom phpunit binary. Ex: 'phpunit', '/usr/local/bin/phpunit'
    "better-phpunit.suiteSuffix": null // Specify options to appended only to the 'run suite' command, for example add options like '--testsuite unit' or '--coverage --coverage-xml'.
}

Running tests over ssh (For VMs like Laravel Homestead):

{
    "better-phpunit.ssh.enable": true,
    "better-phpunit.ssh.paths": {
        "/your/local/path": "/your/remote/path"
    },
    "better-phpunit.ssh.user": "user",
    "better-phpunit.ssh.host": "host",
    "better-phpunit.ssh.port": "22",
    "better-phpunit.ssh.binary": "putty -ssh"
}

Running tests in already running Docker containers:

{
    "better-phpunit.docker.enable": true,
    "better-phpunit.docker.command": "docker exec container-name",
    "better-phpunit.docker.paths": {
        "/your/local/path": "/your/remote/path"
    },
}

Running tests with Docker Compose, starting up a service and removing the container when finished:

{
    "better-phpunit.docker.enable": true,
    "better-phpunit.docker.command": "docker-compose run --rm service-name",
    "better-phpunit.docker.paths": {
        "/your/local/path": "/your/remote/path"
    },
}

Note: For running Docker over a SSH session just use both options ssh.enable and docker.enable combined.

Wish List:

  • Handling PHP fatal and parser errors
  • A sidebar panel for managing errors
  • Re-run failures

better-phpunit's People

Contributors

calebporzio avatar emil-nasso avatar fuel-odrais avatar iforwms avatar julianmar avatar qkdreyer avatar samsouder avatar sixlive avatar thecrypticace avatar wilburpowery avatar zebranorth avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.