Mockery
Mockery is a simple yet flexible PHP mock object framework for use in unit testing with PHPUnit, PHPSpec or any other testing framework. Its core goal is to offer a test double framework with a succinct API capable of clearly defining all possible object operations and interactions using a human readable Domain Specific Language (DSL). (by mockery)
Behat
BDD in PHP (by Behat)
Our great sponsors
Mockery | Behat | |
---|---|---|
3 | 3 | |
10,558 | 3,880 | |
0.2% | 0.1% | |
9.5 | 3.7 | |
3 days ago | 12 days ago | |
PHP | PHP | |
BSD 3-clause "New" or "Revised" License | MIT License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Mockery
Posts with mentions or reviews of Mockery.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2021-12-20.
-
I share my authentication server.
Continuous Integration - Testify, sqlmock, Mockery, Github Actions
-
Test doubles
Mockery is another framework for creating test doubles. It can be used with PHPUnit, phpspec, Behat, or any other testing framework. I find it especially powerful when working with legacy code, due to its support for creating partial mocks or mocking hard dependencies.
-
Testing with immutable PSR-7 objects and Prophecy
This works great if a method is tested that modifies and returns an object; we'll get an instance of that object and we are able to run all sorts of assertions on it. But what if this is not the case. What if we have a situation where a value object is passed as a parameter, some modifications are done and the value object is passed to another object. Something like the middleware from the example earlier. Some testing frameworks like Mockery offer spies to test these situations. When using Prophecy this situation can be handled using Argument::that():
Behat
Posts with mentions or reviews of Behat.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-01-24.
-
Modern tools for PHP developers
Other tools worth mentioning include Codeception and behat. Both use phpUnit underneath, but have different approaches to writing tests.
-
When Symfony Http Kernel is a Too Big Hammer to Use
An example of a big CLI project using this with great success is Behat: https://github.com/behat/behat
-
10 Of The Best PHP Testing Frameworks For 2021
Step 3: If you don’t have a Composer, you can easily set up the framework by downloading the latest version of behat.phar.
What are some alternatives?
When comparing Mockery and Behat you can also consider the following projects:
Prophecy - Highly opinionated mocking framework for PHP 5.3+
Codeception - Full-stack testing PHP framework
PHPUnit - The PHP Unit Testing framework.
PHPSpec - SpecBDD Framework for PHP
Faker
ParaTest - :computer: Parallel testing for PHPUnit
AspectMock - The most powerful and flexible mocking framework for PHPUnit / Codeception.
Atoum - The modern, simple and intuitive PHP unit testing framework.
Phake - PHP Mocking Framework
php-webdriver - PHP client for Selenium/WebDriver protocol. Previously facebook/php-webdriver
Peridot - Event driven BDD test framework for PHP