Writing unit tests
Let's start digging into all the features that PHPUnit offers us in order to write tests. We will divide these features in different subsections: setting up a test, assertions, exceptions, and data providers. Of course, you do not need to use all of these tools each time you write a test.
The start and end of a test
PHPUnit gives you the opportunity to set up a common scenario for each test in a class. For this, you need to use the setUp
method, which, if present, is executed each time that a test of this class is executed. The instance of the class that invokes the setUp
and test
methods is the same, so you can use the properties of the class to save the context. One common use would be to create the object that we will use for our tests in case this is always the same. For an example, write the following code in tests/Domain/Customer/BasicTest.php
:
<?php namespace Bookstore\Tests\Domain\Customer; use Bookstore\Domain\Customer\Basic; use PHPUnit_Framework_TestCase;...