phpunit | The PHP Unit Testing framework | Unit Testing library

 by   sebastianbergmann PHP Version: 10.2.0 License: BSD-3-Clause

kandi X-RAY | phpunit Summary

kandi X-RAY | phpunit Summary

phpunit is a PHP library typically used in Testing, Unit Testing applications. phpunit has no bugs, it has a Permissive License and it has medium support. However phpunit has 2 vulnerabilities. You can download it from GitHub.

PHPUnit is a programmer-oriented testing framework for PHP. It is an instance of the xUnit architecture for unit testing frameworks.

            kandi-support Support

              phpunit has a medium active ecosystem.
              It has 19127 star(s) with 2158 fork(s). There are 328 watchers for this library.
              It had no major release in the last 6 months.
              There are 135 open issues and 3259 have been closed. On average issues are closed in 24 days. There are 33 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of phpunit is 10.2.0

            kandi-Quality Quality

              phpunit has 0 bugs and 0 code smells.

            kandi-Security Security

              phpunit has 2 vulnerability issues reported (1 critical, 0 high, 1 medium, 0 low).
              phpunit code analysis shows 0 unresolved vulnerabilities.
              There are 0 security hotspots that need review.

            kandi-License License

              phpunit is licensed under the BSD-3-Clause License. This license is Permissive.
              Permissive licenses have the least restrictions, and you can use them in most projects.

            kandi-Reuse Reuse

              phpunit releases are not available. You will need to build from source code and install.
              Installation instructions, examples and code snippets are available.
              phpunit saves you 13514 person hours of effort in developing the same functionality from scratch.
              It has 37508 lines of code, 3537 functions and 726 files.
              It has medium code complexity. Code complexity directly impacts maintainability of the code.

            Top functions reviewed by kandi - BETA

            kandi has reviewed phpunit and discovered the below as its top functions. This is intended to give you an instant insight into phpunit implemented functionality, and help decide if they suit your requirements.
            • Creates a new Configuration instance from provided parameters .
            • Merge a cli configuration into a new instance .
            • Returns metadata for the given class .
            • Process code coverage .
            • Returns an array of requirements that are not satisfied .
            • Creates new instance .
            • Returns the lines to be covered by the specified method .
            • Convert a DOM element to a variable .
            • Collect data provider by method name .
            • Negotiates a string .
            Get all kandi verified functions for this library.

            phpunit Key Features

            No Key Features are available at this moment for phpunit.

            phpunit Examples and Code Snippets

            No Code Snippets are available at this moment for phpunit.

            Community Discussions


            How to test form submission with wrong values using Symfony crawler component and PHPUnit?
            Asked 2022-Apr-05 at 11:18

            When you're using the app through the browser, you send a bad value, the system checks for errors in the form, and if something goes wrong (it does in this case), it redirects with a default error message written below the incriminated field.

            This is the behaviour I am trying to assert with my test case, but I came accross an \InvalidArgumentException I was not expecting.

            I am using the symfony/phpunit-bridge with phpunit/phpunit v8.5.23 and symfony/dom-crawler v5.3.7. Here's a sample of what it looks like :



            Answered 2022-Apr-05 at 11:17

            It seems that you can disable validation on the DomCrawler\Form component. Based on the official documentation here.

            So doing this, now works as expected :



            What is the 'X' in this insert > X'3C2F756C3E'
            Asked 2022-Feb-25 at 14:37

            We have something similar to the following in the SQL that builds a test database for use with phpunit testing:



            Answered 2022-Feb-25 at 14:37

            The X signifies that the following is a hex-encoded binary string literal. It is defined in the ISO-9075-2:2016 SQL Standard as :



            phpunit tests failing after going to php 8.0 because of "Unknown named parameter"
            Asked 2022-Feb-22 at 08:56

            We are preparing to move to php 8.0.15 once some third party libraries we require are ready for it.

            Our centralized setUp() function for unit tests handles constructorArg population for our class mocks.

            Using phpunit v9.5.14 currently, we get failed tests with the response Error : Unknown named parameter $User

            We are not using named parameters in our codebase anywhere that we are aware of.



            Answered 2022-Feb-21 at 22:36


            Why does class autoloading not work for a package required using "repositories.package"?
            Asked 2022-Jan-10 at 11:46

            Consider two scenarios:

            In the first the library is loaded from Github, composer.json looks like this:



            Answered 2022-Jan-10 at 11:46

            Your problem is that by using a package key for that repository, you are telling composer "read the package information from here, do not read the hosted composer.json". And since the package settings are almost bare, dependencies are not resolved and autoloader not generated.

            The only thing that happens is that composer clones the repo within your vendor, then you are on your own.

            You could add an autoload section to your current package key, as shown here. This way you could at least have the autoloader correctly generated.

            But note that recursive dependency resolution will not be dealt with, which might leave you with other issues.

            For that you could replicate the require part of the original composer.json within the package setting... but this is not smart. The package key is meant for packages that do not support Composer, so you can force them into supporting it within your application. You'd end with something like this:



            How to create a double for an interface, usefully, concisely and legally?
            Asked 2022-Jan-08 at 13:34

            I want to create a test double for an interface. The solution must satisfy ALL of the following requirements:

            • MUST allow me to specify custom configurations for SOME methods of the interface
            • MUST automatically stub all REMAINING methods with a default stub
            • MUST NOT require me to explicitly list the remaining methods for which I want a default stub
            • MUST NOT require me to use deprecated APIs like setMethodsExcept([])

            Is this currently achievable in a modern PHPUnit (8+), or is it the case that some of the above requirements must be relaxed?



            Answered 2022-Jan-08 at 13:34

            TL;DR: Just Don't Set Any Methods.



            Unable to get mock container to return anything but null
            Asked 2022-Jan-02 at 13:30

            I have a test that fails due to me being unable to successfully stub the get method of the Controller:



            Answered 2022-Jan-02 at 13:30

            You were really close to the solution. When providing a value for an optional parameter in returnValueMap, you must use the value itself, not just null.

            So instead of



            Wrong PHP Version/Executable in VSCode terminal but works perfectly in Mac terminal
            Asked 2021-Dec-30 at 12:35

            I just updated my Mac M1 to Big Sur 11.5.2 and something in VSCode seems to have broken. I am unable to use the latest home-brew php which is installed.

            In VSCode its pointing to /usr/bin/php which is Macs built in php, that's not the one im using with home-brew. I tried everything and changed the path but still the same thing.

            I checked the one similar question to mine and all it suggests is to use Homebrew which I already am doing so Im not sure what I am doing wrong here.

            I am running PHPUnit tests in the VSCode terminal and I am getting the following error:



            Answered 2021-Aug-25 at 09:40

            I got the same problem. Open your terminal and write this:



            npm run watch/hot only successful on the first run
            Asked 2021-Nov-19 at 01:03

            I added TypeScript support to my existing project, so I added ts-loader and typescript. I think, I configured everything right and it is working fine in dev and prod mode.

            I would like to update gradually, keeping all the JavaScript code in place and using TypeScript for everything new or where there is a need for refactoring. So it may be important to note that TableValue.vue is an old js component.

            Problem: Edit: It also occurs with npm run watch

            When I run npm run hot in package.json: "scripts": { ..., "hot": "mix watch --hot", ...} it only works on the first try. As soon as I change any file and trigger a recompile, I get:



            Answered 2021-Sep-10 at 12:48

            It looks like ts-loader doesn't support HMR yet.

            I installed fork-ts-checker-webpack-plugin and updated webpack.mix.js to:



            PHPUnit: how to test HTML structure output
            Asked 2021-Nov-03 at 10:19

            I'm trying to test a HTML structure render.

            I saw this method:

            ...But on the last version, it's obsolete.

            What is now the best practice for this kind of verification ?

            Best regards.



            Answered 2021-Nov-03 at 10:19


            Laravel web-Socket installation
            Asked 2021-Nov-01 at 12:48

            I want to install Laravel Web-Socket package but I face some errors when I run this command composer require beyondcode/laravel-websockets

            Using version ^1.12 for beyondcode/laravel-websockets Running composer update beyondcode/laravel-websockets --with-all-dependencies Loading composer repositories with package information Updating dependencies Your requirements could not be resolved to an installable set of packages.

            Problem 1 - Root composer.json requires laravel/framework ^8.65, found laravel/framework[v8.65.0, ..., 8.x-dev] but these were not loaded, likely because it conflicts with another require.

            Installation failed, reverting ./composer.json and ./composer.lock to their original content.

            And here is my composer.json :



            Answered 2021-Nov-01 at 12:48

            Just simple do one thing

            remove composer.lock file and then install your required package


            Community Discussions, Code Snippets contain sources that include Stack Exchange Network


            No vulnerabilities reported

            Install phpunit

            We distribute a PHP Archive (PHAR) that has all required (as well as some optional) dependencies of PHPUnit bundled in a single file:. Please replace X.Y with the version of PHPUnit you are interested in. Alternatively, you may use Composer to download and install PHPUnit as well as its dependencies. Please refer to the "Getting Started" guide for details on how to install PHPUnit.


            Please refer to for information on how to contribute to PHPUnit and its related projects.
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
          • HTTPS


          • CLI

            gh repo clone sebastianbergmann/phpunit

          • sshUrl


          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link